From 4fb066b82c2b3c43bc5b39b8a41a8ec114a282ed Mon Sep 17 00:00:00 2001 From: Stripe OpenAPI <105521251+stripe-openapi[bot]@users.noreply.github.com> Date: Fri, 12 Jun 2026 01:41:30 +0000 Subject: [PATCH 01/14] Update generated code for v2295 and 6f145c2614d8c9cc87bf358f4f93c44e3bd47fa4 --- CODEGEN_VERSION | 2 +- OPENAPI_VERSION | 2 +- .../java/com/stripe/model/PaymentIntent.java | 209 ++- .../java/com/stripe/model/SetupAttempt.java | 12 + .../model/radar/CustomerEvaluation.java | 42 + .../param/PaymentIntentConfirmParams.java | 1515 ++++++--------- .../param/PaymentIntentCreateParams.java | 1511 ++++++--------- .../param/PaymentIntentUpdateParams.java | 1659 ++++++----------- ...ymentRecordReportPaymentAttemptParams.java | 279 ++- .../PaymentRecordReportPaymentParams.java | 274 ++- .../CustomerEvaluationRetrieveParams.java | 100 + .../radar/CustomerEvaluationService.java | 32 + 12 files changed, 2507 insertions(+), 3130 deletions(-) create mode 100644 src/main/java/com/stripe/param/radar/CustomerEvaluationRetrieveParams.java diff --git a/CODEGEN_VERSION b/CODEGEN_VERSION index c3b520d074c..86cb90fe5ec 100644 --- a/CODEGEN_VERSION +++ b/CODEGEN_VERSION @@ -1 +1 @@ -aa10ab9548143dbe396ae1e91e443c64473cbdc2 \ No newline at end of file +6f145c2614d8c9cc87bf358f4f93c44e3bd47fa4 \ No newline at end of file diff --git a/OPENAPI_VERSION b/OPENAPI_VERSION index 733547a80f0..7b1ccaa0490 100644 --- a/OPENAPI_VERSION +++ b/OPENAPI_VERSION @@ -1 +1 @@ -v2294 \ No newline at end of file +v2295 \ No newline at end of file diff --git a/src/main/java/com/stripe/model/PaymentIntent.java b/src/main/java/com/stripe/model/PaymentIntent.java index 0d5699c4eb6..10d03c0f09b 100644 --- a/src/main/java/com/stripe/model/PaymentIntent.java +++ b/src/main/java/com/stripe/model/PaymentIntent.java @@ -1961,6 +1961,9 @@ public static class AdvancedFeatureDetails extends StripeObject { @SerializedName("decremental_authorization") DecrementalAuthorization decrementalAuthorization; + @SerializedName("forced_capture") + ForcedCapture forcedCapture; + @SerializedName("incremental_authorization") IncrementalAuthorization incrementalAuthorization; @@ -1987,6 +1990,27 @@ public static class DecrementalAuthorization extends StripeObject { String status; } + /** + * For more details about ForcedCapture, please refer to the API Reference. + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class ForcedCapture extends StripeObject { + /** Timestamp at which the forced capture window expires. */ + @SerializedName("expires_at") + Long expiresAt; + + /** + * Indicates whether forced capture is supported. + * + *

One of {@code available}, or {@code unavailable}. + */ + @SerializedName("status") + String status; + } + /** * For more details about IncrementalAuthorization, please refer to the API Reference. @@ -5082,6 +5106,13 @@ public static class MoneyServices extends StripeObject { @SerializedName("account_funding") AccountFunding accountFunding; + /** ID of the Account representing the beneficiary in this account funding transaction. */ + @SerializedName("beneficiary_account") + String beneficiaryAccount; + + @SerializedName("beneficiary_details") + BeneficiaryDetails beneficiaryDetails; + /** * The type of money services transaction. * @@ -5098,13 +5129,6 @@ public static class MoneyServices extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class AccountFunding extends StripeObject { - /** ID of the Account representing the beneficiary in this account funding transaction. */ - @SerializedName("beneficiary_account") - String beneficiaryAccount; - - @SerializedName("beneficiary_details") - BeneficiaryDetails beneficiaryDetails; - /** ID of the Account representing the sender in this account funding transaction. */ @SerializedName("sender_account") String senderAccount; @@ -5113,16 +5137,16 @@ public static class AccountFunding extends StripeObject { SenderDetails senderDetails; /** - * For more details about BeneficiaryDetails, please refer to the API Reference. */ @Getter @Setter @EqualsAndHashCode(callSuper = false) - public static class BeneficiaryDetails extends StripeObject { + public static class SenderDetails extends StripeObject { @SerializedName("address") - com.stripe.model.PaymentIntent.PaymentDetails.MoneyServices.AccountFunding - .BeneficiaryDetails.Address + com.stripe.model.PaymentIntent.PaymentDetails.MoneyServices.AccountFunding.SenderDetails + .Address address; @SerializedName("date_of_birth") @@ -5197,91 +5221,90 @@ public static class DateOfBirth extends StripeObject { Long year; } } + } + + /** + * For more details about BeneficiaryDetails, please refer to the API Reference. + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class BeneficiaryDetails extends StripeObject { + @SerializedName("address") + com.stripe.model.PaymentIntent.PaymentDetails.MoneyServices.BeneficiaryDetails.Address + address; + + @SerializedName("date_of_birth") + DateOfBirth dateOfBirth; + + /** Email address. */ + @SerializedName("email") + String email; + + /** Full name. */ + @SerializedName("name") + String name; + + /** Phone number. */ + @SerializedName("phone") + String phone; /** - * For more details about SenderDetails, please refer to the API Reference. */ @Getter @Setter @EqualsAndHashCode(callSuper = false) - public static class SenderDetails extends StripeObject { - @SerializedName("address") - com.stripe.model.PaymentIntent.PaymentDetails.MoneyServices.AccountFunding.SenderDetails - .Address - address; - - @SerializedName("date_of_birth") - DateOfBirth dateOfBirth; - - /** Email address. */ - @SerializedName("email") - String email; - - /** Full name. */ - @SerializedName("name") - String name; - - /** Phone number. */ - @SerializedName("phone") - String phone; + public static class Address extends StripeObject { + /** City, district, suburb, town, or village. */ + @SerializedName("city") + String city; /** - * For more details about Address, please refer to the API Reference. + * Two-letter country code (ISO + * 3166-1 alpha-2). */ - @Getter - @Setter - @EqualsAndHashCode(callSuper = false) - public static class Address extends StripeObject { - /** City, district, suburb, town, or village. */ - @SerializedName("city") - String city; - - /** - * Two-letter country code (ISO 3166-1 alpha-2). - */ - @SerializedName("country") - String country; + @SerializedName("country") + String country; - /** Address line 1 (e.g., street, PO Box, or company name). */ - @SerializedName("line1") - String line1; + /** Address line 1 (e.g., street, PO Box, or company name). */ + @SerializedName("line1") + String line1; - /** Address line 2 (e.g., apartment, suite, unit, or building). */ - @SerializedName("line2") - String line2; + /** Address line 2 (e.g., apartment, suite, unit, or building). */ + @SerializedName("line2") + String line2; - /** ZIP or postal code. */ - @SerializedName("postal_code") - String postalCode; + /** ZIP or postal code. */ + @SerializedName("postal_code") + String postalCode; - /** State, county, province, or region. */ - @SerializedName("state") - String state; - } + /** State, county, province, or region. */ + @SerializedName("state") + String state; + } - /** - * For more details about DateOfBirth, please refer to the API Reference. - */ - @Getter - @Setter - @EqualsAndHashCode(callSuper = false) - public static class DateOfBirth extends StripeObject { - /** Day of birth, between 1 and 31. */ - @SerializedName("day") - Long day; + /** + * For more details about DateOfBirth, please refer to the API Reference. + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class DateOfBirth extends StripeObject { + /** Day of birth, between 1 and 31. */ + @SerializedName("day") + Long day; - /** Month of birth, between 1 and 12. */ - @SerializedName("month") - Long month; + /** Month of birth, between 1 and 12. */ + @SerializedName("month") + Long month; - /** Four-digit year of birth. */ - @SerializedName("year") - Long year; - } + /** Four-digit year of birth. */ + @SerializedName("year") + Long year; } } } @@ -6112,7 +6135,7 @@ public static class Card extends StripeObject { /** * Controls when the funds will be captured from the customer's account. * - *

Equal to {@code manual}. + *

One of {@code automatic_delayed}, or {@code manual}. */ @SerializedName("capture_method") String captureMethod; @@ -6528,7 +6551,7 @@ public static class CardPresent extends StripeObject { /** * Controls when the funds will be captured from the customer's account. * - *

One of {@code manual}, or {@code manual_preferred}. + *

One of {@code automatic_delayed}, {@code manual}, or {@code manual_preferred}. */ @SerializedName("capture_method") String captureMethod; @@ -8182,6 +8205,30 @@ public static class Satispay extends StripeObject { */ @SerializedName("capture_method") String captureMethod; + + /** + * Indicates that you intend to make future payments with this PaymentIntent's payment method. + * + *

If you provide a Customer with the PaymentIntent, you can use this parameter to attach the payment method to the + * Customer after the PaymentIntent is confirmed and the customer completes any required + * actions. If you don't provide a Customer, you can still attach the payment method to a + * Customer after the transaction completes. + * + *

If the payment method is {@code card_present} and isn't a digital wallet, Stripe creates + * and attaches a generated_card + * payment method representing the card to the Customer instead. + * + *

When processing card payments, Stripe uses {@code setup_future_usage} to help you comply + * with regional legislation and network rules, such as SCA. + * + *

One of {@code none}, {@code off_session}, or {@code on_session}. + */ + @SerializedName("setup_future_usage") + String setupFutureUsage; } /** diff --git a/src/main/java/com/stripe/model/SetupAttempt.java b/src/main/java/com/stripe/model/SetupAttempt.java index 81f0ad1428b..5b698d248af 100644 --- a/src/main/java/com/stripe/model/SetupAttempt.java +++ b/src/main/java/com/stripe/model/SetupAttempt.java @@ -339,6 +339,9 @@ public static class PaymentMethodDetails extends StripeObject { @SerializedName("revolut_pay") RevolutPay revolutPay; + @SerializedName("satispay") + Satispay satispay; + @SerializedName("sepa_debit") SepaDebit sepaDebit; @@ -1037,6 +1040,15 @@ public static class Pix extends StripeObject {} @EqualsAndHashCode(callSuper = false) public static class RevolutPay extends StripeObject {} + /** + * For more details about Satispay, please refer to the API Reference. + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Satispay extends StripeObject {} + /** * For more details about SepaDebit, please refer to the API Reference. diff --git a/src/main/java/com/stripe/model/radar/CustomerEvaluation.java b/src/main/java/com/stripe/model/radar/CustomerEvaluation.java index 173e3a66337..fdd25c26fa5 100644 --- a/src/main/java/com/stripe/model/radar/CustomerEvaluation.java +++ b/src/main/java/com/stripe/model/radar/CustomerEvaluation.java @@ -12,6 +12,7 @@ import com.stripe.net.RequestOptions; import com.stripe.net.StripeResponseGetter; import com.stripe.param.radar.CustomerEvaluationCreateParams; +import com.stripe.param.radar.CustomerEvaluationRetrieveParams; import com.stripe.param.radar.CustomerEvaluationUpdateParams; import java.math.BigDecimal; import java.util.List; @@ -108,6 +109,47 @@ public static CustomerEvaluation create( return getGlobalResponseGetter().request(request, CustomerEvaluation.class); } + /** Retrieves an {@code CustomerEvaluation} object. */ + public static CustomerEvaluation retrieve(String customerEvaluation) throws StripeException { + return retrieve(customerEvaluation, (Map) null, (RequestOptions) null); + } + + /** Retrieves an {@code CustomerEvaluation} object. */ + public static CustomerEvaluation retrieve(String customerEvaluation, RequestOptions options) + throws StripeException { + return retrieve(customerEvaluation, (Map) null, options); + } + + /** Retrieves an {@code CustomerEvaluation} object. */ + public static CustomerEvaluation retrieve( + String customerEvaluation, Map params, RequestOptions options) + throws StripeException { + String path = + String.format( + "/v1/radar/customer_evaluations/%s", ApiResource.urlEncodeId(customerEvaluation)); + ApiRequest request = + new ApiRequest(BaseAddress.API, ApiResource.RequestMethod.GET, path, params, options); + return getGlobalResponseGetter().request(request, CustomerEvaluation.class); + } + + /** Retrieves an {@code CustomerEvaluation} object. */ + public static CustomerEvaluation retrieve( + String customerEvaluation, CustomerEvaluationRetrieveParams params, RequestOptions options) + throws StripeException { + String path = + String.format( + "/v1/radar/customer_evaluations/%s", ApiResource.urlEncodeId(customerEvaluation)); + ApiResource.checkNullTypedParams(path, params); + ApiRequest request = + new ApiRequest( + BaseAddress.API, + ApiResource.RequestMethod.GET, + path, + ApiRequestParams.paramsToMap(params), + options); + return getGlobalResponseGetter().request(request, CustomerEvaluation.class); + } + /** Reports an event on a {@code CustomerEvaluation} object. */ public CustomerEvaluation update(Map params) throws StripeException { return update(params, (RequestOptions) null); diff --git a/src/main/java/com/stripe/param/PaymentIntentConfirmParams.java b/src/main/java/com/stripe/param/PaymentIntentConfirmParams.java index 71d5b64e059..7ce5c5bf337 100644 --- a/src/main/java/com/stripe/param/PaymentIntentConfirmParams.java +++ b/src/main/java/com/stripe/param/PaymentIntentConfirmParams.java @@ -14820,10 +14820,18 @@ public Builder setType(String type) { @Getter @EqualsAndHashCode(callSuper = false) public static class MoneyServices { - /** Account funding transaction details including sender and beneficiary information. */ + /** Account funding transaction details including sender information. */ @SerializedName("account_funding") Object accountFunding; + /** ID of the Account representing the beneficiary in this account funding transaction. */ + @SerializedName("beneficiary_account") + String beneficiaryAccount; + + /** Inline identity details for the beneficiary of this transaction. */ + @SerializedName("beneficiary_details") + Object beneficiaryDetails; + /** * 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. @@ -14839,9 +14847,13 @@ public static class MoneyServices { private MoneyServices( Object accountFunding, + String beneficiaryAccount, + Object beneficiaryDetails, Map extraParams, ApiRequestParams.EnumParam transactionType) { this.accountFunding = accountFunding; + this.beneficiaryAccount = beneficiaryAccount; + this.beneficiaryDetails = beneficiaryDetails; this.extraParams = extraParams; this.transactionType = transactionType; } @@ -14853,6 +14865,10 @@ public static Builder builder() { public static class Builder { private Object accountFunding; + private String beneficiaryAccount; + + private Object beneficiaryDetails; + private Map extraParams; private ApiRequestParams.EnumParam transactionType; @@ -14860,22 +14876,46 @@ public static class Builder { /** Finalize and obtain parameter instance from this builder. */ public PaymentIntentConfirmParams.PaymentDetails.MoneyServices build() { return new PaymentIntentConfirmParams.PaymentDetails.MoneyServices( - this.accountFunding, this.extraParams, this.transactionType); + this.accountFunding, + this.beneficiaryAccount, + this.beneficiaryDetails, + this.extraParams, + this.transactionType); } - /** Account funding transaction details including sender and beneficiary information. */ + /** Account funding transaction details including sender information. */ public Builder setAccountFunding( PaymentIntentConfirmParams.PaymentDetails.MoneyServices.AccountFunding accountFunding) { this.accountFunding = accountFunding; return this; } - /** Account funding transaction details including sender and beneficiary information. */ + /** Account funding transaction details including sender information. */ public Builder setAccountFunding(EmptyParam accountFunding) { this.accountFunding = accountFunding; return this; } + /** ID of the Account representing the beneficiary in this account funding transaction. */ + public Builder setBeneficiaryAccount(String beneficiaryAccount) { + this.beneficiaryAccount = beneficiaryAccount; + return this; + } + + /** Inline identity details for the beneficiary of this transaction. */ + public Builder setBeneficiaryDetails( + PaymentIntentConfirmParams.PaymentDetails.MoneyServices.BeneficiaryDetails + beneficiaryDetails) { + this.beneficiaryDetails = beneficiaryDetails; + return this; + } + + /** Inline identity details for the beneficiary of this transaction. */ + public Builder setBeneficiaryDetails(EmptyParam beneficiaryDetails) { + this.beneficiaryDetails = beneficiaryDetails; + 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 @@ -14922,14 +14962,6 @@ public Builder setTransactionType(EmptyParam transactionType) { @Getter @EqualsAndHashCode(callSuper = false) public static class AccountFunding { - /** ID of the Account representing the beneficiary in this account funding transaction. */ - @SerializedName("beneficiary_account") - String beneficiaryAccount; - - /** Inline identity details for the beneficiary of this account funding transaction. */ - @SerializedName("beneficiary_details") - Object beneficiaryDetails; - /** * 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. @@ -14949,13 +14981,7 @@ public static class AccountFunding { Object senderDetails; private AccountFunding( - String beneficiaryAccount, - Object beneficiaryDetails, - Map extraParams, - String senderAccount, - Object senderDetails) { - this.beneficiaryAccount = beneficiaryAccount; - this.beneficiaryDetails = beneficiaryDetails; + Map extraParams, String senderAccount, Object senderDetails) { this.extraParams = extraParams; this.senderAccount = senderAccount; this.senderDetails = senderDetails; @@ -14966,10 +14992,6 @@ public static Builder builder() { } public static class Builder { - private String beneficiaryAccount; - - private Object beneficiaryDetails; - private Map extraParams; private String senderAccount; @@ -14979,32 +15001,7 @@ public static class Builder { /** Finalize and obtain parameter instance from this builder. */ public PaymentIntentConfirmParams.PaymentDetails.MoneyServices.AccountFunding build() { return new PaymentIntentConfirmParams.PaymentDetails.MoneyServices.AccountFunding( - this.beneficiaryAccount, - this.beneficiaryDetails, - this.extraParams, - this.senderAccount, - this.senderDetails); - } - - /** ID of the Account representing the beneficiary in this account funding transaction. */ - public Builder setBeneficiaryAccount(String beneficiaryAccount) { - this.beneficiaryAccount = beneficiaryAccount; - return this; - } - - /** Inline identity details for the beneficiary of this account funding transaction. */ - public Builder setBeneficiaryDetails( - PaymentIntentConfirmParams.PaymentDetails.MoneyServices.AccountFunding - .BeneficiaryDetails - beneficiaryDetails) { - this.beneficiaryDetails = beneficiaryDetails; - return this; - } - - /** Inline identity details for the beneficiary of this account funding transaction. */ - public Builder setBeneficiaryDetails(EmptyParam beneficiaryDetails) { - this.beneficiaryDetails = beneficiaryDetails; - return this; + this.extraParams, this.senderAccount, this.senderDetails); } /** @@ -15060,7 +15057,7 @@ public Builder setSenderDetails(EmptyParam senderDetails) { @Getter @EqualsAndHashCode(callSuper = false) - public static class BeneficiaryDetails { + public static class SenderDetails { /** Address. */ @SerializedName("address") Address address; @@ -15091,7 +15088,7 @@ public static class BeneficiaryDetails { @SerializedName("phone") String phone; - private BeneficiaryDetails( + private SenderDetails( Address address, DateOfBirth dateOfBirth, String email, @@ -15125,10 +15122,10 @@ public static class Builder { /** Finalize and obtain parameter instance from this builder. */ public PaymentIntentConfirmParams.PaymentDetails.MoneyServices.AccountFunding - .BeneficiaryDetails + .SenderDetails build() { return new PaymentIntentConfirmParams.PaymentDetails.MoneyServices.AccountFunding - .BeneficiaryDetails( + .SenderDetails( this.address, this.dateOfBirth, this.email, @@ -15139,8 +15136,8 @@ public static class Builder { /** Address. */ public Builder setAddress( - PaymentIntentConfirmParams.PaymentDetails.MoneyServices.AccountFunding - .BeneficiaryDetails.Address + PaymentIntentConfirmParams.PaymentDetails.MoneyServices.AccountFunding.SenderDetails + .Address address) { this.address = address; return this; @@ -15148,8 +15145,8 @@ public Builder setAddress( /** Date of birth. */ public Builder setDateOfBirth( - PaymentIntentConfirmParams.PaymentDetails.MoneyServices.AccountFunding - .BeneficiaryDetails.DateOfBirth + PaymentIntentConfirmParams.PaymentDetails.MoneyServices.AccountFunding.SenderDetails + .DateOfBirth dateOfBirth) { this.dateOfBirth = dateOfBirth; return this; @@ -15165,7 +15162,7 @@ public Builder setEmail(String email) { * 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 - * PaymentIntentConfirmParams.PaymentDetails.MoneyServices.AccountFunding.BeneficiaryDetails#extraParams} + * PaymentIntentConfirmParams.PaymentDetails.MoneyServices.AccountFunding.SenderDetails#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -15180,7 +15177,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * PaymentIntentConfirmParams.PaymentDetails.MoneyServices.AccountFunding.BeneficiaryDetails#extraParams} + * PaymentIntentConfirmParams.PaymentDetails.MoneyServices.AccountFunding.SenderDetails#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -15285,10 +15282,10 @@ public static class Builder { /** Finalize and obtain parameter instance from this builder. */ public PaymentIntentConfirmParams.PaymentDetails.MoneyServices.AccountFunding - .BeneficiaryDetails.Address + .SenderDetails.Address build() { return new PaymentIntentConfirmParams.PaymentDetails.MoneyServices.AccountFunding - .BeneficiaryDetails.Address( + .SenderDetails.Address( this.city, this.country, this.extraParams, @@ -15317,7 +15314,7 @@ public Builder setCountry(String country) { * 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 - * PaymentIntentConfirmParams.PaymentDetails.MoneyServices.AccountFunding.BeneficiaryDetails.Address#extraParams} + * PaymentIntentConfirmParams.PaymentDetails.MoneyServices.AccountFunding.SenderDetails.Address#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -15332,7 +15329,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * PaymentIntentConfirmParams.PaymentDetails.MoneyServices.AccountFunding.BeneficiaryDetails.Address#extraParams} + * PaymentIntentConfirmParams.PaymentDetails.MoneyServices.AccountFunding.SenderDetails.Address#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -15419,11 +15416,10 @@ public static class Builder { /** Finalize and obtain parameter instance from this builder. */ public PaymentIntentConfirmParams.PaymentDetails.MoneyServices.AccountFunding - .BeneficiaryDetails.DateOfBirth + .SenderDetails.DateOfBirth build() { return new PaymentIntentConfirmParams.PaymentDetails.MoneyServices.AccountFunding - .BeneficiaryDetails.DateOfBirth( - this.day, this.extraParams, this.month, this.year); + .SenderDetails.DateOfBirth(this.day, this.extraParams, this.month, this.year); } /** Required. Day of birth, between 1 and 31. */ @@ -15436,7 +15432,7 @@ public Builder setDay(Long day) { * 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 - * PaymentIntentConfirmParams.PaymentDetails.MoneyServices.AccountFunding.BeneficiaryDetails.DateOfBirth#extraParams} + * PaymentIntentConfirmParams.PaymentDetails.MoneyServices.AccountFunding.SenderDetails.DateOfBirth#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -15451,7 +15447,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * PaymentIntentConfirmParams.PaymentDetails.MoneyServices.AccountFunding.BeneficiaryDetails.DateOfBirth#extraParams} + * PaymentIntentConfirmParams.PaymentDetails.MoneyServices.AccountFunding.SenderDetails.DateOfBirth#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -15476,21 +15472,163 @@ public Builder setYear(Long year) { } } } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class BeneficiaryDetails { + /** Address. */ + @SerializedName("address") + Address address; + + /** Date of birth. */ + @SerializedName("date_of_birth") + DateOfBirth dateOfBirth; + + /** Email address. */ + @SerializedName("email") + String email; + + /** + * 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; + + /** Full name. */ + @SerializedName("name") + String name; + + /** Phone number. */ + @SerializedName("phone") + String phone; + + private BeneficiaryDetails( + Address address, + DateOfBirth dateOfBirth, + String email, + Map extraParams, + String name, + String phone) { + this.address = address; + this.dateOfBirth = dateOfBirth; + this.email = email; + this.extraParams = extraParams; + this.name = name; + this.phone = phone; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Address address; + + private DateOfBirth dateOfBirth; + + private String email; + + private Map extraParams; + + private String name; + + private String phone; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentConfirmParams.PaymentDetails.MoneyServices.BeneficiaryDetails + build() { + return new PaymentIntentConfirmParams.PaymentDetails.MoneyServices.BeneficiaryDetails( + this.address, + this.dateOfBirth, + this.email, + this.extraParams, + this.name, + this.phone); + } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class SenderDetails { /** Address. */ - @SerializedName("address") - Address address; + public Builder setAddress( + PaymentIntentConfirmParams.PaymentDetails.MoneyServices.BeneficiaryDetails.Address + address) { + this.address = address; + return this; + } /** Date of birth. */ - @SerializedName("date_of_birth") - DateOfBirth dateOfBirth; + public Builder setDateOfBirth( + PaymentIntentConfirmParams.PaymentDetails.MoneyServices.BeneficiaryDetails.DateOfBirth + dateOfBirth) { + this.dateOfBirth = dateOfBirth; + return this; + } /** Email address. */ - @SerializedName("email") - String email; + public Builder setEmail(String email) { + this.email = email; + 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 + * PaymentIntentConfirmParams.PaymentDetails.MoneyServices.BeneficiaryDetails#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 + * PaymentIntentConfirmParams.PaymentDetails.MoneyServices.BeneficiaryDetails#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Full name. */ + public Builder setName(String name) { + this.name = name; + return this; + } + + /** Phone number. */ + public Builder setPhone(String phone) { + this.phone = phone; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Address { + /** City, district, suburb, town, or village. */ + @SerializedName("city") + String city; + + /** + * Two-letter country code (ISO + * 3166-1 alpha-2). + */ + @SerializedName("country") + String country; /** * Map of extra parameters for custom features not available in this client library. The @@ -15502,27 +15640,40 @@ public static class SenderDetails { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** Full name. */ - @SerializedName("name") - String name; + /** Address line 1, such as the street, PO Box, or company name. */ + @SerializedName("line1") + String line1; - /** Phone number. */ - @SerializedName("phone") - String phone; + /** Address line 2, such as the apartment, suite, unit, or building. */ + @SerializedName("line2") + String line2; - private SenderDetails( - Address address, - DateOfBirth dateOfBirth, - String email, + /** ZIP or postal code. */ + @SerializedName("postal_code") + String postalCode; + + /** + * State, county, province, or region (ISO 3166-2). + */ + @SerializedName("state") + String state; + + private Address( + String city, + String country, Map extraParams, - String name, - String phone) { - this.address = address; - this.dateOfBirth = dateOfBirth; - this.email = email; + String line1, + String line2, + String postalCode, + String state) { + this.city = city; + this.country = country; this.extraParams = extraParams; - this.name = name; - this.phone = phone; + this.line1 = line1; + this.line2 = line2; + this.postalCode = postalCode; + this.state = state; } public static Builder builder() { @@ -15530,53 +15681,47 @@ public static Builder builder() { } public static class Builder { - private Address address; - - private DateOfBirth dateOfBirth; + private String city; - private String email; + private String country; private Map extraParams; - private String name; + private String line1; - private String phone; + private String line2; - /** Finalize and obtain parameter instance from this builder. */ - public PaymentIntentConfirmParams.PaymentDetails.MoneyServices.AccountFunding - .SenderDetails + private String postalCode; + + private String state; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentConfirmParams.PaymentDetails.MoneyServices.BeneficiaryDetails + .Address build() { - return new PaymentIntentConfirmParams.PaymentDetails.MoneyServices.AccountFunding - .SenderDetails( - this.address, - this.dateOfBirth, - this.email, + return new PaymentIntentConfirmParams.PaymentDetails.MoneyServices.BeneficiaryDetails + .Address( + this.city, + this.country, this.extraParams, - this.name, - this.phone); - } - - /** Address. */ - public Builder setAddress( - PaymentIntentConfirmParams.PaymentDetails.MoneyServices.AccountFunding.SenderDetails - .Address - address) { - this.address = address; - return this; + this.line1, + this.line2, + this.postalCode, + this.state); } - /** Date of birth. */ - public Builder setDateOfBirth( - PaymentIntentConfirmParams.PaymentDetails.MoneyServices.AccountFunding.SenderDetails - .DateOfBirth - dateOfBirth) { - this.dateOfBirth = dateOfBirth; + /** City, district, suburb, town, or village. */ + public Builder setCity(String city) { + this.city = city; return this; } - /** Email address. */ - public Builder setEmail(String email) { - this.email = email; + /** + * Two-letter country code (ISO 3166-1 alpha-2). + */ + public Builder setCountry(String country) { + this.country = country; return this; } @@ -15584,7 +15729,7 @@ public Builder setEmail(String email) { * 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 - * PaymentIntentConfirmParams.PaymentDetails.MoneyServices.AccountFunding.SenderDetails#extraParams} + * PaymentIntentConfirmParams.PaymentDetails.MoneyServices.BeneficiaryDetails.Address#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -15599,7 +15744,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * PaymentIntentConfirmParams.PaymentDetails.MoneyServices.AccountFunding.SenderDetails#extraParams} + * PaymentIntentConfirmParams.PaymentDetails.MoneyServices.BeneficiaryDetails.Address#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -15610,287 +15755,134 @@ public Builder putAllExtraParam(Map map) { return this; } - /** Full name. */ - public Builder setName(String name) { - this.name = name; + /** Address line 1, such as the street, PO Box, or company name. */ + public Builder setLine1(String line1) { + this.line1 = line1; return this; } - /** Phone number. */ - public Builder setPhone(String phone) { - this.phone = phone; + /** Address line 2, such as the apartment, suite, unit, or building. */ + public Builder setLine2(String line2) { + this.line2 = line2; return this; } - } - - @Getter - @EqualsAndHashCode(callSuper = false) - public static class Address { - /** City, district, suburb, town, or village. */ - @SerializedName("city") - String city; - - /** - * Two-letter country code (ISO 3166-1 alpha-2). - */ - @SerializedName("country") - String country; - - /** - * 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; - - /** Address line 1, such as the street, PO Box, or company name. */ - @SerializedName("line1") - String line1; - - /** Address line 2, such as the apartment, suite, unit, or building. */ - @SerializedName("line2") - String line2; /** ZIP or postal code. */ - @SerializedName("postal_code") - String postalCode; + public Builder setPostalCode(String postalCode) { + this.postalCode = postalCode; + return this; + } /** * State, county, province, or region (ISO 3166-2). */ - @SerializedName("state") - String state; - - private Address( - String city, - String country, - Map extraParams, - String line1, - String line2, - String postalCode, - String state) { - this.city = city; - this.country = country; - this.extraParams = extraParams; - this.line1 = line1; - this.line2 = line2; - this.postalCode = postalCode; + public Builder setState(String state) { this.state = state; - } - - public static Builder builder() { - return new Builder(); - } - - public static class Builder { - private String city; - - private String country; - - private Map extraParams; - - private String line1; - - private String line2; - - private String postalCode; - - private String state; - - /** Finalize and obtain parameter instance from this builder. */ - public PaymentIntentConfirmParams.PaymentDetails.MoneyServices.AccountFunding - .SenderDetails.Address - build() { - return new PaymentIntentConfirmParams.PaymentDetails.MoneyServices.AccountFunding - .SenderDetails.Address( - this.city, - this.country, - this.extraParams, - this.line1, - this.line2, - this.postalCode, - this.state); - } - - /** City, district, suburb, town, or village. */ - public Builder setCity(String city) { - this.city = city; - return this; - } - - /** - * Two-letter country code (ISO 3166-1 alpha-2). - */ - public Builder setCountry(String country) { - this.country = country; - 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 - * PaymentIntentConfirmParams.PaymentDetails.MoneyServices.AccountFunding.SenderDetails.Address#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 - * PaymentIntentConfirmParams.PaymentDetails.MoneyServices.AccountFunding.SenderDetails.Address#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); - } - this.extraParams.putAll(map); - return this; - } - - /** Address line 1, such as the street, PO Box, or company name. */ - public Builder setLine1(String line1) { - this.line1 = line1; - return this; - } - - /** Address line 2, such as the apartment, suite, unit, or building. */ - public Builder setLine2(String line2) { - this.line2 = line2; - return this; - } - - /** ZIP or postal code. */ - public Builder setPostalCode(String postalCode) { - this.postalCode = postalCode; - return this; - } - - /** - * State, county, province, or region (ISO 3166-2). - */ - public Builder setState(String state) { - this.state = state; - return this; - } + return this; } } + } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class DateOfBirth { - /** Required. Day of birth, between 1 and 31. */ - @SerializedName("day") - Long day; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class DateOfBirth { + /** Required. Day of birth, between 1 and 31. */ + @SerializedName("day") + Long day; - /** - * 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; + /** + * 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. Month of birth, between 1 and 12. */ - @SerializedName("month") - Long month; + /** Required. Month of birth, between 1 and 12. */ + @SerializedName("month") + Long month; - /** Required. Four-digit year of birth. */ - @SerializedName("year") - Long year; + /** Required. Four-digit year of birth. */ + @SerializedName("year") + Long year; - private DateOfBirth(Long day, Map extraParams, Long month, Long year) { - this.day = day; - this.extraParams = extraParams; - this.month = month; - this.year = year; - } + private DateOfBirth(Long day, Map extraParams, Long month, Long year) { + this.day = day; + this.extraParams = extraParams; + this.month = month; + this.year = year; + } - public static Builder builder() { - return new Builder(); - } + public static Builder builder() { + return new Builder(); + } - public static class Builder { - private Long day; + public static class Builder { + private Long day; - private Map extraParams; + private Map extraParams; - private Long month; + private Long month; - private Long year; + private Long year; - /** Finalize and obtain parameter instance from this builder. */ - public PaymentIntentConfirmParams.PaymentDetails.MoneyServices.AccountFunding - .SenderDetails.DateOfBirth - build() { - return new PaymentIntentConfirmParams.PaymentDetails.MoneyServices.AccountFunding - .SenderDetails.DateOfBirth(this.day, this.extraParams, this.month, this.year); - } + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentConfirmParams.PaymentDetails.MoneyServices.BeneficiaryDetails + .DateOfBirth + build() { + return new PaymentIntentConfirmParams.PaymentDetails.MoneyServices.BeneficiaryDetails + .DateOfBirth(this.day, this.extraParams, this.month, this.year); + } - /** Required. Day of birth, between 1 and 31. */ - public Builder setDay(Long day) { - this.day = day; - return this; - } + /** Required. Day of birth, between 1 and 31. */ + public Builder setDay(Long day) { + this.day = day; + 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 - * PaymentIntentConfirmParams.PaymentDetails.MoneyServices.AccountFunding.SenderDetails.DateOfBirth#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 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 + * PaymentIntentConfirmParams.PaymentDetails.MoneyServices.BeneficiaryDetails.DateOfBirth#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 - * PaymentIntentConfirmParams.PaymentDetails.MoneyServices.AccountFunding.SenderDetails.DateOfBirth#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 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 + * PaymentIntentConfirmParams.PaymentDetails.MoneyServices.BeneficiaryDetails.DateOfBirth#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. Month of birth, between 1 and 12. */ - public Builder setMonth(Long month) { - this.month = month; - return this; - } + /** Required. Month of birth, between 1 and 12. */ + public Builder setMonth(Long month) { + this.month = month; + return this; + } - /** Required. Four-digit year of birth. */ - public Builder setYear(Long year) { - this.year = year; - return this; - } + /** Required. Four-digit year of birth. */ + public Builder setYear(Long year) { + this.year = year; + return this; } } } @@ -29499,346 +29491,69 @@ public static class AccountFunding { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** Details for a wallet funding transaction. */ - @SerializedName("wallet") - Wallet wallet; - private AccountFunding( - DigitalAssetCategory digitalAssetCategory, - Map extraParams, - Wallet wallet) { + DigitalAssetCategory digitalAssetCategory, Map extraParams) { this.digitalAssetCategory = digitalAssetCategory; this.extraParams = extraParams; - this.wallet = wallet; - } - - public static Builder builder() { - return new Builder(); - } - - public static class Builder { - private DigitalAssetCategory digitalAssetCategory; - - private Map extraParams; - - private Wallet wallet; - - /** Finalize and obtain parameter instance from this builder. */ - public PaymentIntentConfirmParams.PaymentMethodOptions.Card.PaymentDetails - .MoneyServices.AccountFunding - build() { - return new PaymentIntentConfirmParams.PaymentMethodOptions.Card.PaymentDetails - .MoneyServices.AccountFunding( - this.digitalAssetCategory, this.extraParams, this.wallet); - } - - /** - * The category of digital asset being acquired through this account funding - * transaction. - */ - public Builder setDigitalAssetCategory( - PaymentIntentConfirmParams.PaymentMethodOptions.Card.PaymentDetails.MoneyServices - .AccountFunding.DigitalAssetCategory - digitalAssetCategory) { - this.digitalAssetCategory = digitalAssetCategory; - 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 - * PaymentIntentConfirmParams.PaymentMethodOptions.Card.PaymentDetails.MoneyServices.AccountFunding#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 - * PaymentIntentConfirmParams.PaymentMethodOptions.Card.PaymentDetails.MoneyServices.AccountFunding#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); - } - this.extraParams.putAll(map); - return this; - } - - /** Details for a wallet funding transaction. */ - public Builder setWallet( - PaymentIntentConfirmParams.PaymentMethodOptions.Card.PaymentDetails.MoneyServices - .AccountFunding.Wallet - wallet) { - this.wallet = wallet; - return this; - } } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class Wallet { - /** - * 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; - - /** Details for a staged purchase. */ - @SerializedName("staged_purchase") - Object stagedPurchase; - - private Wallet(Map extraParams, Object stagedPurchase) { - this.extraParams = extraParams; - this.stagedPurchase = stagedPurchase; - } - - public static Builder builder() { - return new Builder(); - } - - public static class Builder { - private Map extraParams; - - private Object stagedPurchase; - - /** Finalize and obtain parameter instance from this builder. */ - public PaymentIntentConfirmParams.PaymentMethodOptions.Card.PaymentDetails - .MoneyServices.AccountFunding.Wallet - build() { - return new PaymentIntentConfirmParams.PaymentMethodOptions.Card.PaymentDetails - .MoneyServices.AccountFunding.Wallet(this.extraParams, this.stagedPurchase); - } - - /** - * 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 - * PaymentIntentConfirmParams.PaymentMethodOptions.Card.PaymentDetails.MoneyServices.AccountFunding.Wallet#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 - * PaymentIntentConfirmParams.PaymentMethodOptions.Card.PaymentDetails.MoneyServices.AccountFunding.Wallet#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); - } - this.extraParams.putAll(map); - return this; - } - - /** Details for a staged purchase. */ - public Builder setStagedPurchase( - PaymentIntentConfirmParams.PaymentMethodOptions.Card.PaymentDetails - .MoneyServices.AccountFunding.Wallet.StagedPurchase - stagedPurchase) { - this.stagedPurchase = stagedPurchase; - return this; - } - - /** Details for a staged purchase. */ - public Builder setStagedPurchase(EmptyParam stagedPurchase) { - this.stagedPurchase = stagedPurchase; - return this; - } - } - - @Getter - @EqualsAndHashCode(callSuper = false) - public static class StagedPurchase { - /** - * 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 merchant where the staged wallet purchase is made. */ - @SerializedName("merchant") - Merchant merchant; - - private StagedPurchase(Map extraParams, Merchant merchant) { - this.extraParams = extraParams; - this.merchant = merchant; - } - - public static Builder builder() { - return new Builder(); - } - - public static class Builder { - private Map extraParams; + public static Builder builder() { + return new Builder(); + } - private Merchant merchant; + public static class Builder { + private DigitalAssetCategory digitalAssetCategory; - /** Finalize and obtain parameter instance from this builder. */ - public PaymentIntentConfirmParams.PaymentMethodOptions.Card.PaymentDetails - .MoneyServices.AccountFunding.Wallet.StagedPurchase - build() { - return new PaymentIntentConfirmParams.PaymentMethodOptions.Card.PaymentDetails - .MoneyServices.AccountFunding.Wallet.StagedPurchase( - this.extraParams, this.merchant); - } + private Map extraParams; - /** - * 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 - * PaymentIntentConfirmParams.PaymentMethodOptions.Card.PaymentDetails.MoneyServices.AccountFunding.Wallet.StagedPurchase#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; - } + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentConfirmParams.PaymentMethodOptions.Card.PaymentDetails + .MoneyServices.AccountFunding + build() { + return new PaymentIntentConfirmParams.PaymentMethodOptions.Card.PaymentDetails + .MoneyServices.AccountFunding(this.digitalAssetCategory, this.extraParams); + } - /** - * 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 - * PaymentIntentConfirmParams.PaymentMethodOptions.Card.PaymentDetails.MoneyServices.AccountFunding.Wallet.StagedPurchase#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 category of digital asset being acquired through this account funding + * transaction. + */ + public Builder setDigitalAssetCategory( + PaymentIntentConfirmParams.PaymentMethodOptions.Card.PaymentDetails.MoneyServices + .AccountFunding.DigitalAssetCategory + digitalAssetCategory) { + this.digitalAssetCategory = digitalAssetCategory; + return this; + } - /** The merchant where the staged wallet purchase is made. */ - public Builder setMerchant( - PaymentIntentConfirmParams.PaymentMethodOptions.Card.PaymentDetails - .MoneyServices.AccountFunding.Wallet.StagedPurchase.Merchant - merchant) { - this.merchant = merchant; - 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 + * PaymentIntentConfirmParams.PaymentMethodOptions.Card.PaymentDetails.MoneyServices.AccountFunding#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; + } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class Merchant { - /** - * 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 merchant category code of the merchant. */ - @SerializedName("mcc") - String mcc; - - /** The merchant's name. */ - @SerializedName("name") - String name; - - private Merchant(Map extraParams, String mcc, String name) { - this.extraParams = extraParams; - this.mcc = mcc; - this.name = name; - } - - public static Builder builder() { - return new Builder(); - } - - public static class Builder { - private Map extraParams; - - private String mcc; - - private String name; - - /** Finalize and obtain parameter instance from this builder. */ - public PaymentIntentConfirmParams.PaymentMethodOptions.Card.PaymentDetails - .MoneyServices.AccountFunding.Wallet.StagedPurchase.Merchant - build() { - return new PaymentIntentConfirmParams.PaymentMethodOptions.Card.PaymentDetails - .MoneyServices.AccountFunding.Wallet.StagedPurchase.Merchant( - this.extraParams, this.mcc, this.name); - } - - /** - * 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 - * PaymentIntentConfirmParams.PaymentMethodOptions.Card.PaymentDetails.MoneyServices.AccountFunding.Wallet.StagedPurchase.Merchant#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 - * PaymentIntentConfirmParams.PaymentMethodOptions.Card.PaymentDetails.MoneyServices.AccountFunding.Wallet.StagedPurchase.Merchant#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 merchant category code of the merchant. */ - public Builder setMcc(String mcc) { - this.mcc = mcc; - return this; - } - - /** The merchant's name. */ - public Builder setName(String name) { - this.name = name; - 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 + * PaymentIntentConfirmParams.PaymentMethodOptions.Card.PaymentDetails.MoneyServices.AccountFunding#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); } + this.extraParams.putAll(map); + return this; } } @@ -30703,6 +30418,9 @@ public enum CaptureBy implements ApiRequestParams.EnumParam { } public enum CaptureMethod implements ApiRequestParams.EnumParam { + @SerializedName("automatic_delayed") + AUTOMATIC_DELAYED("automatic_delayed"), + @SerializedName("manual") MANUAL("manual"); @@ -31453,17 +31171,10 @@ public static class AccountFunding { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** Details for a wallet funding transaction. */ - @SerializedName("wallet") - Wallet wallet; - private AccountFunding( - DigitalAssetCategory digitalAssetCategory, - Map extraParams, - Wallet wallet) { + DigitalAssetCategory digitalAssetCategory, Map extraParams) { this.digitalAssetCategory = digitalAssetCategory; this.extraParams = extraParams; - this.wallet = wallet; } public static Builder builder() { @@ -31475,15 +31186,13 @@ public static class Builder { private Map extraParams; - private Wallet wallet; - /** Finalize and obtain parameter instance from this builder. */ public PaymentIntentConfirmParams.PaymentMethodOptions.CardPresent.PaymentDetails .MoneyServices.AccountFunding build() { return new PaymentIntentConfirmParams.PaymentMethodOptions.CardPresent .PaymentDetails.MoneyServices.AccountFunding( - this.digitalAssetCategory, this.extraParams, this.wallet); + this.digitalAssetCategory, this.extraParams); } /** @@ -31527,275 +31236,6 @@ public Builder putAllExtraParam(Map map) { this.extraParams.putAll(map); return this; } - - /** Details for a wallet funding transaction. */ - public Builder setWallet( - PaymentIntentConfirmParams.PaymentMethodOptions.CardPresent.PaymentDetails - .MoneyServices.AccountFunding.Wallet - wallet) { - this.wallet = wallet; - return this; - } - } - - @Getter - @EqualsAndHashCode(callSuper = false) - public static class Wallet { - /** - * 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; - - /** Details for a staged purchase. */ - @SerializedName("staged_purchase") - Object stagedPurchase; - - private Wallet(Map extraParams, Object stagedPurchase) { - this.extraParams = extraParams; - this.stagedPurchase = stagedPurchase; - } - - public static Builder builder() { - return new Builder(); - } - - public static class Builder { - private Map extraParams; - - private Object stagedPurchase; - - /** Finalize and obtain parameter instance from this builder. */ - public PaymentIntentConfirmParams.PaymentMethodOptions.CardPresent.PaymentDetails - .MoneyServices.AccountFunding.Wallet - build() { - return new PaymentIntentConfirmParams.PaymentMethodOptions.CardPresent - .PaymentDetails.MoneyServices.AccountFunding.Wallet( - this.extraParams, this.stagedPurchase); - } - - /** - * 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 - * PaymentIntentConfirmParams.PaymentMethodOptions.CardPresent.PaymentDetails.MoneyServices.AccountFunding.Wallet#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 - * PaymentIntentConfirmParams.PaymentMethodOptions.CardPresent.PaymentDetails.MoneyServices.AccountFunding.Wallet#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); - } - this.extraParams.putAll(map); - return this; - } - - /** Details for a staged purchase. */ - public Builder setStagedPurchase( - PaymentIntentConfirmParams.PaymentMethodOptions.CardPresent.PaymentDetails - .MoneyServices.AccountFunding.Wallet.StagedPurchase - stagedPurchase) { - this.stagedPurchase = stagedPurchase; - return this; - } - - /** Details for a staged purchase. */ - public Builder setStagedPurchase(EmptyParam stagedPurchase) { - this.stagedPurchase = stagedPurchase; - return this; - } - } - - @Getter - @EqualsAndHashCode(callSuper = false) - public static class StagedPurchase { - /** - * 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 merchant where the staged wallet purchase is made. */ - @SerializedName("merchant") - Merchant merchant; - - private StagedPurchase(Map extraParams, Merchant merchant) { - this.extraParams = extraParams; - this.merchant = merchant; - } - - public static Builder builder() { - return new Builder(); - } - - public static class Builder { - private Map extraParams; - - private Merchant merchant; - - /** Finalize and obtain parameter instance from this builder. */ - public PaymentIntentConfirmParams.PaymentMethodOptions.CardPresent.PaymentDetails - .MoneyServices.AccountFunding.Wallet.StagedPurchase - build() { - return new PaymentIntentConfirmParams.PaymentMethodOptions.CardPresent - .PaymentDetails.MoneyServices.AccountFunding.Wallet.StagedPurchase( - this.extraParams, this.merchant); - } - - /** - * 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 - * PaymentIntentConfirmParams.PaymentMethodOptions.CardPresent.PaymentDetails.MoneyServices.AccountFunding.Wallet.StagedPurchase#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 - * PaymentIntentConfirmParams.PaymentMethodOptions.CardPresent.PaymentDetails.MoneyServices.AccountFunding.Wallet.StagedPurchase#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 merchant where the staged wallet purchase is made. */ - public Builder setMerchant( - PaymentIntentConfirmParams.PaymentMethodOptions.CardPresent.PaymentDetails - .MoneyServices.AccountFunding.Wallet.StagedPurchase.Merchant - merchant) { - this.merchant = merchant; - return this; - } - } - - @Getter - @EqualsAndHashCode(callSuper = false) - public static class Merchant { - /** - * 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 merchant category code of the merchant. */ - @SerializedName("mcc") - String mcc; - - /** The merchant's name. */ - @SerializedName("name") - String name; - - private Merchant(Map extraParams, String mcc, String name) { - this.extraParams = extraParams; - this.mcc = mcc; - this.name = name; - } - - public static Builder builder() { - return new Builder(); - } - - public static class Builder { - private Map extraParams; - - private String mcc; - - private String name; - - /** Finalize and obtain parameter instance from this builder. */ - public PaymentIntentConfirmParams.PaymentMethodOptions.CardPresent - .PaymentDetails.MoneyServices.AccountFunding.Wallet.StagedPurchase - .Merchant - build() { - return new PaymentIntentConfirmParams.PaymentMethodOptions.CardPresent - .PaymentDetails.MoneyServices.AccountFunding.Wallet.StagedPurchase - .Merchant(this.extraParams, this.mcc, this.name); - } - - /** - * 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 - * PaymentIntentConfirmParams.PaymentMethodOptions.CardPresent.PaymentDetails.MoneyServices.AccountFunding.Wallet.StagedPurchase.Merchant#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 - * PaymentIntentConfirmParams.PaymentMethodOptions.CardPresent.PaymentDetails.MoneyServices.AccountFunding.Wallet.StagedPurchase.Merchant#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 merchant category code of the merchant. */ - public Builder setMcc(String mcc) { - this.mcc = mcc; - return this; - } - - /** The merchant's name. */ - public Builder setName(String name) { - this.name = name; - return this; - } - } - } - } } public enum DigitalAssetCategory implements ApiRequestParams.EnumParam { @@ -31933,6 +31373,9 @@ public enum CaptureBy implements ApiRequestParams.EnumParam { } public enum CaptureMethod implements ApiRequestParams.EnumParam { + @SerializedName("automatic_delayed") + AUTOMATIC_DELAYED("automatic_delayed"), + @SerializedName("manual") MANUAL("manual"), @@ -46671,9 +46114,35 @@ public static class Satispay { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - private Satispay(ApiRequestParams.EnumParam captureMethod, Map extraParams) { + /** + * Indicates that you intend to make future payments with this PaymentIntent's payment method. + * + *

If you provide a Customer with the PaymentIntent, you can use this parameter to attach the payment method to the + * Customer after the PaymentIntent is confirmed and the customer completes any required + * actions. If you don't provide a Customer, you can still attach the payment method to a + * Customer after the transaction completes. + * + *

If the payment method is {@code card_present} and isn't a digital wallet, Stripe creates + * and attaches a generated_card + * payment method representing the card to the Customer instead. + * + *

When processing card payments, Stripe uses {@code setup_future_usage} to help you comply + * with regional legislation and network rules, such as SCA. + */ + @SerializedName("setup_future_usage") + ApiRequestParams.EnumParam setupFutureUsage; + + private Satispay( + ApiRequestParams.EnumParam captureMethod, + Map extraParams, + ApiRequestParams.EnumParam setupFutureUsage) { this.captureMethod = captureMethod; this.extraParams = extraParams; + this.setupFutureUsage = setupFutureUsage; } public static Builder builder() { @@ -46685,10 +46154,12 @@ public static class Builder { private Map extraParams; + private ApiRequestParams.EnumParam setupFutureUsage; + /** Finalize and obtain parameter instance from this builder. */ public PaymentIntentConfirmParams.PaymentMethodOptions.Satispay build() { return new PaymentIntentConfirmParams.PaymentMethodOptions.Satispay( - this.captureMethod, this.extraParams); + this.captureMethod, this.extraParams, this.setupFutureUsage); } /** @@ -46749,6 +46220,58 @@ public Builder putAllExtraParam(Map map) { this.extraParams.putAll(map); return this; } + + /** + * Indicates that you intend to make future payments with this PaymentIntent's payment + * method. + * + *

If you provide a Customer with the PaymentIntent, you can use this parameter to attach the payment method to + * the Customer after the PaymentIntent is confirmed and the customer completes any required + * actions. If you don't provide a Customer, you can still attach the payment method to a + * Customer after the transaction completes. + * + *

If the payment method is {@code card_present} and isn't a digital wallet, Stripe + * creates and attaches a generated_card + * payment method representing the card to the Customer instead. + * + *

When processing card payments, Stripe uses {@code setup_future_usage} to help you + * comply with regional legislation and network rules, such as SCA. + */ + public Builder setSetupFutureUsage( + PaymentIntentConfirmParams.PaymentMethodOptions.Satispay.SetupFutureUsage + setupFutureUsage) { + this.setupFutureUsage = setupFutureUsage; + return this; + } + + /** + * Indicates that you intend to make future payments with this PaymentIntent's payment + * method. + * + *

If you provide a Customer with the PaymentIntent, you can use this parameter to attach the payment method to + * the Customer after the PaymentIntent is confirmed and the customer completes any required + * actions. If you don't provide a Customer, you can still attach the payment method to a + * Customer after the transaction completes. + * + *

If the payment method is {@code card_present} and isn't a digital wallet, Stripe + * creates and attaches a generated_card + * payment method representing the card to the Customer instead. + * + *

When processing card payments, Stripe uses {@code setup_future_usage} to help you + * comply with regional legislation and network rules, such as SCA. + */ + public Builder setSetupFutureUsage(EmptyParam setupFutureUsage) { + this.setupFutureUsage = setupFutureUsage; + return this; + } } public enum CaptureMethod implements ApiRequestParams.EnumParam { @@ -46762,6 +46285,24 @@ public enum CaptureMethod implements ApiRequestParams.EnumParam { this.value = value; } } + + public enum SetupFutureUsage implements ApiRequestParams.EnumParam { + @SerializedName("none") + NONE("none"), + + @SerializedName("off_session") + OFF_SESSION("off_session"), + + @SerializedName("on_session") + ON_SESSION("on_session"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + SetupFutureUsage(String value) { + this.value = value; + } + } } @Getter diff --git a/src/main/java/com/stripe/param/PaymentIntentCreateParams.java b/src/main/java/com/stripe/param/PaymentIntentCreateParams.java index 27f4333dce1..a92b77bea22 100644 --- a/src/main/java/com/stripe/param/PaymentIntentCreateParams.java +++ b/src/main/java/com/stripe/param/PaymentIntentCreateParams.java @@ -15323,10 +15323,18 @@ public Builder setType(String type) { @Getter @EqualsAndHashCode(callSuper = false) public static class MoneyServices { - /** Account funding transaction details including sender and beneficiary information. */ + /** Account funding transaction details including sender information. */ @SerializedName("account_funding") Object accountFunding; + /** ID of the Account representing the beneficiary in this account funding transaction. */ + @SerializedName("beneficiary_account") + String beneficiaryAccount; + + /** Inline identity details for the beneficiary of this transaction. */ + @SerializedName("beneficiary_details") + Object beneficiaryDetails; + /** * 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. @@ -15342,9 +15350,13 @@ public static class MoneyServices { private MoneyServices( Object accountFunding, + String beneficiaryAccount, + Object beneficiaryDetails, Map extraParams, ApiRequestParams.EnumParam transactionType) { this.accountFunding = accountFunding; + this.beneficiaryAccount = beneficiaryAccount; + this.beneficiaryDetails = beneficiaryDetails; this.extraParams = extraParams; this.transactionType = transactionType; } @@ -15356,6 +15368,10 @@ public static Builder builder() { public static class Builder { private Object accountFunding; + private String beneficiaryAccount; + + private Object beneficiaryDetails; + private Map extraParams; private ApiRequestParams.EnumParam transactionType; @@ -15363,22 +15379,46 @@ public static class Builder { /** Finalize and obtain parameter instance from this builder. */ public PaymentIntentCreateParams.PaymentDetails.MoneyServices build() { return new PaymentIntentCreateParams.PaymentDetails.MoneyServices( - this.accountFunding, this.extraParams, this.transactionType); + this.accountFunding, + this.beneficiaryAccount, + this.beneficiaryDetails, + this.extraParams, + this.transactionType); } - /** Account funding transaction details including sender and beneficiary information. */ + /** Account funding transaction details including sender information. */ public Builder setAccountFunding( PaymentIntentCreateParams.PaymentDetails.MoneyServices.AccountFunding accountFunding) { this.accountFunding = accountFunding; return this; } - /** Account funding transaction details including sender and beneficiary information. */ + /** Account funding transaction details including sender information. */ public Builder setAccountFunding(EmptyParam accountFunding) { this.accountFunding = accountFunding; return this; } + /** ID of the Account representing the beneficiary in this account funding transaction. */ + public Builder setBeneficiaryAccount(String beneficiaryAccount) { + this.beneficiaryAccount = beneficiaryAccount; + return this; + } + + /** Inline identity details for the beneficiary of this transaction. */ + public Builder setBeneficiaryDetails( + PaymentIntentCreateParams.PaymentDetails.MoneyServices.BeneficiaryDetails + beneficiaryDetails) { + this.beneficiaryDetails = beneficiaryDetails; + return this; + } + + /** Inline identity details for the beneficiary of this transaction. */ + public Builder setBeneficiaryDetails(EmptyParam beneficiaryDetails) { + this.beneficiaryDetails = beneficiaryDetails; + 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 @@ -15425,14 +15465,6 @@ public Builder setTransactionType(EmptyParam transactionType) { @Getter @EqualsAndHashCode(callSuper = false) public static class AccountFunding { - /** ID of the Account representing the beneficiary in this account funding transaction. */ - @SerializedName("beneficiary_account") - String beneficiaryAccount; - - /** Inline identity details for the beneficiary of this account funding transaction. */ - @SerializedName("beneficiary_details") - Object beneficiaryDetails; - /** * 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. @@ -15452,13 +15484,7 @@ public static class AccountFunding { Object senderDetails; private AccountFunding( - String beneficiaryAccount, - Object beneficiaryDetails, - Map extraParams, - String senderAccount, - Object senderDetails) { - this.beneficiaryAccount = beneficiaryAccount; - this.beneficiaryDetails = beneficiaryDetails; + Map extraParams, String senderAccount, Object senderDetails) { this.extraParams = extraParams; this.senderAccount = senderAccount; this.senderDetails = senderDetails; @@ -15469,10 +15495,6 @@ public static Builder builder() { } public static class Builder { - private String beneficiaryAccount; - - private Object beneficiaryDetails; - private Map extraParams; private String senderAccount; @@ -15482,32 +15504,7 @@ public static class Builder { /** Finalize and obtain parameter instance from this builder. */ public PaymentIntentCreateParams.PaymentDetails.MoneyServices.AccountFunding build() { return new PaymentIntentCreateParams.PaymentDetails.MoneyServices.AccountFunding( - this.beneficiaryAccount, - this.beneficiaryDetails, - this.extraParams, - this.senderAccount, - this.senderDetails); - } - - /** ID of the Account representing the beneficiary in this account funding transaction. */ - public Builder setBeneficiaryAccount(String beneficiaryAccount) { - this.beneficiaryAccount = beneficiaryAccount; - return this; - } - - /** Inline identity details for the beneficiary of this account funding transaction. */ - public Builder setBeneficiaryDetails( - PaymentIntentCreateParams.PaymentDetails.MoneyServices.AccountFunding - .BeneficiaryDetails - beneficiaryDetails) { - this.beneficiaryDetails = beneficiaryDetails; - return this; - } - - /** Inline identity details for the beneficiary of this account funding transaction. */ - public Builder setBeneficiaryDetails(EmptyParam beneficiaryDetails) { - this.beneficiaryDetails = beneficiaryDetails; - return this; + this.extraParams, this.senderAccount, this.senderDetails); } /** @@ -15563,7 +15560,7 @@ public Builder setSenderDetails(EmptyParam senderDetails) { @Getter @EqualsAndHashCode(callSuper = false) - public static class BeneficiaryDetails { + public static class SenderDetails { /** Address. */ @SerializedName("address") Address address; @@ -15594,7 +15591,7 @@ public static class BeneficiaryDetails { @SerializedName("phone") String phone; - private BeneficiaryDetails( + private SenderDetails( Address address, DateOfBirth dateOfBirth, String email, @@ -15628,10 +15625,10 @@ public static class Builder { /** Finalize and obtain parameter instance from this builder. */ public PaymentIntentCreateParams.PaymentDetails.MoneyServices.AccountFunding - .BeneficiaryDetails + .SenderDetails build() { return new PaymentIntentCreateParams.PaymentDetails.MoneyServices.AccountFunding - .BeneficiaryDetails( + .SenderDetails( this.address, this.dateOfBirth, this.email, @@ -15642,8 +15639,8 @@ public static class Builder { /** Address. */ public Builder setAddress( - PaymentIntentCreateParams.PaymentDetails.MoneyServices.AccountFunding - .BeneficiaryDetails.Address + PaymentIntentCreateParams.PaymentDetails.MoneyServices.AccountFunding.SenderDetails + .Address address) { this.address = address; return this; @@ -15651,8 +15648,8 @@ public Builder setAddress( /** Date of birth. */ public Builder setDateOfBirth( - PaymentIntentCreateParams.PaymentDetails.MoneyServices.AccountFunding - .BeneficiaryDetails.DateOfBirth + PaymentIntentCreateParams.PaymentDetails.MoneyServices.AccountFunding.SenderDetails + .DateOfBirth dateOfBirth) { this.dateOfBirth = dateOfBirth; return this; @@ -15668,7 +15665,7 @@ public Builder setEmail(String email) { * 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 - * PaymentIntentCreateParams.PaymentDetails.MoneyServices.AccountFunding.BeneficiaryDetails#extraParams} + * PaymentIntentCreateParams.PaymentDetails.MoneyServices.AccountFunding.SenderDetails#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -15683,7 +15680,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * PaymentIntentCreateParams.PaymentDetails.MoneyServices.AccountFunding.BeneficiaryDetails#extraParams} + * PaymentIntentCreateParams.PaymentDetails.MoneyServices.AccountFunding.SenderDetails#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -15788,10 +15785,10 @@ public static class Builder { /** Finalize and obtain parameter instance from this builder. */ public PaymentIntentCreateParams.PaymentDetails.MoneyServices.AccountFunding - .BeneficiaryDetails.Address + .SenderDetails.Address build() { return new PaymentIntentCreateParams.PaymentDetails.MoneyServices.AccountFunding - .BeneficiaryDetails.Address( + .SenderDetails.Address( this.city, this.country, this.extraParams, @@ -15820,7 +15817,7 @@ public Builder setCountry(String country) { * 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 - * PaymentIntentCreateParams.PaymentDetails.MoneyServices.AccountFunding.BeneficiaryDetails.Address#extraParams} + * PaymentIntentCreateParams.PaymentDetails.MoneyServices.AccountFunding.SenderDetails.Address#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -15835,7 +15832,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * PaymentIntentCreateParams.PaymentDetails.MoneyServices.AccountFunding.BeneficiaryDetails.Address#extraParams} + * PaymentIntentCreateParams.PaymentDetails.MoneyServices.AccountFunding.SenderDetails.Address#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -15922,11 +15919,10 @@ public static class Builder { /** Finalize and obtain parameter instance from this builder. */ public PaymentIntentCreateParams.PaymentDetails.MoneyServices.AccountFunding - .BeneficiaryDetails.DateOfBirth + .SenderDetails.DateOfBirth build() { return new PaymentIntentCreateParams.PaymentDetails.MoneyServices.AccountFunding - .BeneficiaryDetails.DateOfBirth( - this.day, this.extraParams, this.month, this.year); + .SenderDetails.DateOfBirth(this.day, this.extraParams, this.month, this.year); } /** Required. Day of birth, between 1 and 31. */ @@ -15939,7 +15935,7 @@ public Builder setDay(Long day) { * 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 - * PaymentIntentCreateParams.PaymentDetails.MoneyServices.AccountFunding.BeneficiaryDetails.DateOfBirth#extraParams} + * PaymentIntentCreateParams.PaymentDetails.MoneyServices.AccountFunding.SenderDetails.DateOfBirth#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -15954,7 +15950,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * PaymentIntentCreateParams.PaymentDetails.MoneyServices.AccountFunding.BeneficiaryDetails.DateOfBirth#extraParams} + * PaymentIntentCreateParams.PaymentDetails.MoneyServices.AccountFunding.SenderDetails.DateOfBirth#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -15979,21 +15975,162 @@ public Builder setYear(Long year) { } } } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class BeneficiaryDetails { + /** Address. */ + @SerializedName("address") + Address address; + + /** Date of birth. */ + @SerializedName("date_of_birth") + DateOfBirth dateOfBirth; + + /** Email address. */ + @SerializedName("email") + String email; + + /** + * 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; + + /** Full name. */ + @SerializedName("name") + String name; + + /** Phone number. */ + @SerializedName("phone") + String phone; + + private BeneficiaryDetails( + Address address, + DateOfBirth dateOfBirth, + String email, + Map extraParams, + String name, + String phone) { + this.address = address; + this.dateOfBirth = dateOfBirth; + this.email = email; + this.extraParams = extraParams; + this.name = name; + this.phone = phone; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Address address; + + private DateOfBirth dateOfBirth; + + private String email; + + private Map extraParams; + + private String name; + + private String phone; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentCreateParams.PaymentDetails.MoneyServices.BeneficiaryDetails build() { + return new PaymentIntentCreateParams.PaymentDetails.MoneyServices.BeneficiaryDetails( + this.address, + this.dateOfBirth, + this.email, + this.extraParams, + this.name, + this.phone); + } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class SenderDetails { /** Address. */ - @SerializedName("address") - Address address; + public Builder setAddress( + PaymentIntentCreateParams.PaymentDetails.MoneyServices.BeneficiaryDetails.Address + address) { + this.address = address; + return this; + } /** Date of birth. */ - @SerializedName("date_of_birth") - DateOfBirth dateOfBirth; + public Builder setDateOfBirth( + PaymentIntentCreateParams.PaymentDetails.MoneyServices.BeneficiaryDetails.DateOfBirth + dateOfBirth) { + this.dateOfBirth = dateOfBirth; + return this; + } /** Email address. */ - @SerializedName("email") - String email; + public Builder setEmail(String email) { + this.email = email; + 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 + * PaymentIntentCreateParams.PaymentDetails.MoneyServices.BeneficiaryDetails#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 + * PaymentIntentCreateParams.PaymentDetails.MoneyServices.BeneficiaryDetails#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Full name. */ + public Builder setName(String name) { + this.name = name; + return this; + } + + /** Phone number. */ + public Builder setPhone(String phone) { + this.phone = phone; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Address { + /** City, district, suburb, town, or village. */ + @SerializedName("city") + String city; + + /** + * Two-letter country code (ISO + * 3166-1 alpha-2). + */ + @SerializedName("country") + String country; /** * Map of extra parameters for custom features not available in this client library. The @@ -16005,27 +16142,40 @@ public static class SenderDetails { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** Full name. */ - @SerializedName("name") - String name; + /** Address line 1, such as the street, PO Box, or company name. */ + @SerializedName("line1") + String line1; - /** Phone number. */ - @SerializedName("phone") - String phone; + /** Address line 2, such as the apartment, suite, unit, or building. */ + @SerializedName("line2") + String line2; - private SenderDetails( - Address address, - DateOfBirth dateOfBirth, - String email, + /** ZIP or postal code. */ + @SerializedName("postal_code") + String postalCode; + + /** + * State, county, province, or region (ISO 3166-2). + */ + @SerializedName("state") + String state; + + private Address( + String city, + String country, Map extraParams, - String name, - String phone) { - this.address = address; - this.dateOfBirth = dateOfBirth; - this.email = email; + String line1, + String line2, + String postalCode, + String state) { + this.city = city; + this.country = country; this.extraParams = extraParams; - this.name = name; - this.phone = phone; + this.line1 = line1; + this.line2 = line2; + this.postalCode = postalCode; + this.state = state; } public static Builder builder() { @@ -16033,53 +16183,46 @@ public static Builder builder() { } public static class Builder { - private Address address; - - private DateOfBirth dateOfBirth; + private String city; - private String email; + private String country; private Map extraParams; - private String name; + private String line1; - private String phone; + private String line2; + + private String postalCode; + + private String state; /** Finalize and obtain parameter instance from this builder. */ - public PaymentIntentCreateParams.PaymentDetails.MoneyServices.AccountFunding - .SenderDetails + public PaymentIntentCreateParams.PaymentDetails.MoneyServices.BeneficiaryDetails.Address build() { - return new PaymentIntentCreateParams.PaymentDetails.MoneyServices.AccountFunding - .SenderDetails( - this.address, - this.dateOfBirth, - this.email, + return new PaymentIntentCreateParams.PaymentDetails.MoneyServices.BeneficiaryDetails + .Address( + this.city, + this.country, this.extraParams, - this.name, - this.phone); - } - - /** Address. */ - public Builder setAddress( - PaymentIntentCreateParams.PaymentDetails.MoneyServices.AccountFunding.SenderDetails - .Address - address) { - this.address = address; - return this; + this.line1, + this.line2, + this.postalCode, + this.state); } - /** Date of birth. */ - public Builder setDateOfBirth( - PaymentIntentCreateParams.PaymentDetails.MoneyServices.AccountFunding.SenderDetails - .DateOfBirth - dateOfBirth) { - this.dateOfBirth = dateOfBirth; + /** City, district, suburb, town, or village. */ + public Builder setCity(String city) { + this.city = city; return this; } - /** Email address. */ - public Builder setEmail(String email) { - this.email = email; + /** + * Two-letter country code (ISO 3166-1 alpha-2). + */ + public Builder setCountry(String country) { + this.country = country; return this; } @@ -16087,7 +16230,7 @@ public Builder setEmail(String email) { * 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 - * PaymentIntentCreateParams.PaymentDetails.MoneyServices.AccountFunding.SenderDetails#extraParams} + * PaymentIntentCreateParams.PaymentDetails.MoneyServices.BeneficiaryDetails.Address#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -16102,7 +16245,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * PaymentIntentCreateParams.PaymentDetails.MoneyServices.AccountFunding.SenderDetails#extraParams} + * PaymentIntentCreateParams.PaymentDetails.MoneyServices.BeneficiaryDetails.Address#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -16113,287 +16256,134 @@ public Builder putAllExtraParam(Map map) { return this; } - /** Full name. */ - public Builder setName(String name) { - this.name = name; + /** Address line 1, such as the street, PO Box, or company name. */ + public Builder setLine1(String line1) { + this.line1 = line1; return this; } - /** Phone number. */ - public Builder setPhone(String phone) { - this.phone = phone; + /** Address line 2, such as the apartment, suite, unit, or building. */ + public Builder setLine2(String line2) { + this.line2 = line2; return this; } - } - - @Getter - @EqualsAndHashCode(callSuper = false) - public static class Address { - /** City, district, suburb, town, or village. */ - @SerializedName("city") - String city; - - /** - * Two-letter country code (ISO 3166-1 alpha-2). - */ - @SerializedName("country") - String country; - - /** - * 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; - - /** Address line 1, such as the street, PO Box, or company name. */ - @SerializedName("line1") - String line1; - - /** Address line 2, such as the apartment, suite, unit, or building. */ - @SerializedName("line2") - String line2; /** ZIP or postal code. */ - @SerializedName("postal_code") - String postalCode; + public Builder setPostalCode(String postalCode) { + this.postalCode = postalCode; + return this; + } /** * State, county, province, or region (ISO 3166-2). */ - @SerializedName("state") - String state; - - private Address( - String city, - String country, - Map extraParams, - String line1, - String line2, - String postalCode, - String state) { - this.city = city; - this.country = country; - this.extraParams = extraParams; - this.line1 = line1; - this.line2 = line2; - this.postalCode = postalCode; + public Builder setState(String state) { this.state = state; - } - - public static Builder builder() { - return new Builder(); - } - - public static class Builder { - private String city; - - private String country; - - private Map extraParams; - - private String line1; - - private String line2; - - private String postalCode; - - private String state; - - /** Finalize and obtain parameter instance from this builder. */ - public PaymentIntentCreateParams.PaymentDetails.MoneyServices.AccountFunding - .SenderDetails.Address - build() { - return new PaymentIntentCreateParams.PaymentDetails.MoneyServices.AccountFunding - .SenderDetails.Address( - this.city, - this.country, - this.extraParams, - this.line1, - this.line2, - this.postalCode, - this.state); - } - - /** City, district, suburb, town, or village. */ - public Builder setCity(String city) { - this.city = city; - return this; - } - - /** - * Two-letter country code (ISO 3166-1 alpha-2). - */ - public Builder setCountry(String country) { - this.country = country; - 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 - * PaymentIntentCreateParams.PaymentDetails.MoneyServices.AccountFunding.SenderDetails.Address#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 - * PaymentIntentCreateParams.PaymentDetails.MoneyServices.AccountFunding.SenderDetails.Address#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); - } - this.extraParams.putAll(map); - return this; - } - - /** Address line 1, such as the street, PO Box, or company name. */ - public Builder setLine1(String line1) { - this.line1 = line1; - return this; - } - - /** Address line 2, such as the apartment, suite, unit, or building. */ - public Builder setLine2(String line2) { - this.line2 = line2; - return this; - } - - /** ZIP or postal code. */ - public Builder setPostalCode(String postalCode) { - this.postalCode = postalCode; - return this; - } - - /** - * State, county, province, or region (ISO 3166-2). - */ - public Builder setState(String state) { - this.state = state; - return this; - } + return this; } } + } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class DateOfBirth { - /** Required. Day of birth, between 1 and 31. */ - @SerializedName("day") - Long day; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class DateOfBirth { + /** Required. Day of birth, between 1 and 31. */ + @SerializedName("day") + Long day; - /** - * 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; + /** + * 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. Month of birth, between 1 and 12. */ - @SerializedName("month") - Long month; + /** Required. Month of birth, between 1 and 12. */ + @SerializedName("month") + Long month; - /** Required. Four-digit year of birth. */ - @SerializedName("year") - Long year; + /** Required. Four-digit year of birth. */ + @SerializedName("year") + Long year; - private DateOfBirth(Long day, Map extraParams, Long month, Long year) { - this.day = day; - this.extraParams = extraParams; - this.month = month; - this.year = year; - } + private DateOfBirth(Long day, Map extraParams, Long month, Long year) { + this.day = day; + this.extraParams = extraParams; + this.month = month; + this.year = year; + } - public static Builder builder() { - return new Builder(); - } + public static Builder builder() { + return new Builder(); + } - public static class Builder { - private Long day; + public static class Builder { + private Long day; - private Map extraParams; + private Map extraParams; - private Long month; + private Long month; - private Long year; + private Long year; - /** Finalize and obtain parameter instance from this builder. */ - public PaymentIntentCreateParams.PaymentDetails.MoneyServices.AccountFunding - .SenderDetails.DateOfBirth - build() { - return new PaymentIntentCreateParams.PaymentDetails.MoneyServices.AccountFunding - .SenderDetails.DateOfBirth(this.day, this.extraParams, this.month, this.year); - } + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentCreateParams.PaymentDetails.MoneyServices.BeneficiaryDetails + .DateOfBirth + build() { + return new PaymentIntentCreateParams.PaymentDetails.MoneyServices.BeneficiaryDetails + .DateOfBirth(this.day, this.extraParams, this.month, this.year); + } - /** Required. Day of birth, between 1 and 31. */ - public Builder setDay(Long day) { - this.day = day; - return this; - } + /** Required. Day of birth, between 1 and 31. */ + public Builder setDay(Long day) { + this.day = day; + 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 - * PaymentIntentCreateParams.PaymentDetails.MoneyServices.AccountFunding.SenderDetails.DateOfBirth#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 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 + * PaymentIntentCreateParams.PaymentDetails.MoneyServices.BeneficiaryDetails.DateOfBirth#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 - * PaymentIntentCreateParams.PaymentDetails.MoneyServices.AccountFunding.SenderDetails.DateOfBirth#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 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 + * PaymentIntentCreateParams.PaymentDetails.MoneyServices.BeneficiaryDetails.DateOfBirth#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. Month of birth, between 1 and 12. */ - public Builder setMonth(Long month) { - this.month = month; - return this; - } + /** Required. Month of birth, between 1 and 12. */ + public Builder setMonth(Long month) { + this.month = month; + return this; + } - /** Required. Four-digit year of birth. */ - public Builder setYear(Long year) { - this.year = year; - return this; - } + /** Required. Four-digit year of birth. */ + public Builder setYear(Long year) { + this.year = year; + return this; } } } @@ -29976,346 +29966,69 @@ public static class AccountFunding { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** Details for a wallet funding transaction. */ - @SerializedName("wallet") - Wallet wallet; - private AccountFunding( - DigitalAssetCategory digitalAssetCategory, - Map extraParams, - Wallet wallet) { + DigitalAssetCategory digitalAssetCategory, Map extraParams) { this.digitalAssetCategory = digitalAssetCategory; this.extraParams = extraParams; - this.wallet = wallet; - } - - public static Builder builder() { - return new Builder(); - } - - public static class Builder { - private DigitalAssetCategory digitalAssetCategory; - - private Map extraParams; - - private Wallet wallet; - - /** Finalize and obtain parameter instance from this builder. */ - public PaymentIntentCreateParams.PaymentMethodOptions.Card.PaymentDetails - .MoneyServices.AccountFunding - build() { - return new PaymentIntentCreateParams.PaymentMethodOptions.Card.PaymentDetails - .MoneyServices.AccountFunding( - this.digitalAssetCategory, this.extraParams, this.wallet); - } - - /** - * The category of digital asset being acquired through this account funding - * transaction. - */ - public Builder setDigitalAssetCategory( - PaymentIntentCreateParams.PaymentMethodOptions.Card.PaymentDetails.MoneyServices - .AccountFunding.DigitalAssetCategory - digitalAssetCategory) { - this.digitalAssetCategory = digitalAssetCategory; - 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 - * PaymentIntentCreateParams.PaymentMethodOptions.Card.PaymentDetails.MoneyServices.AccountFunding#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 - * PaymentIntentCreateParams.PaymentMethodOptions.Card.PaymentDetails.MoneyServices.AccountFunding#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); - } - this.extraParams.putAll(map); - return this; - } - - /** Details for a wallet funding transaction. */ - public Builder setWallet( - PaymentIntentCreateParams.PaymentMethodOptions.Card.PaymentDetails.MoneyServices - .AccountFunding.Wallet - wallet) { - this.wallet = wallet; - return this; - } } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class Wallet { - /** - * 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; - - /** Details for a staged purchase. */ - @SerializedName("staged_purchase") - Object stagedPurchase; - - private Wallet(Map extraParams, Object stagedPurchase) { - this.extraParams = extraParams; - this.stagedPurchase = stagedPurchase; - } - - public static Builder builder() { - return new Builder(); - } - - public static class Builder { - private Map extraParams; - - private Object stagedPurchase; - - /** Finalize and obtain parameter instance from this builder. */ - public PaymentIntentCreateParams.PaymentMethodOptions.Card.PaymentDetails - .MoneyServices.AccountFunding.Wallet - build() { - return new PaymentIntentCreateParams.PaymentMethodOptions.Card.PaymentDetails - .MoneyServices.AccountFunding.Wallet(this.extraParams, this.stagedPurchase); - } - - /** - * 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 - * PaymentIntentCreateParams.PaymentMethodOptions.Card.PaymentDetails.MoneyServices.AccountFunding.Wallet#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 - * PaymentIntentCreateParams.PaymentMethodOptions.Card.PaymentDetails.MoneyServices.AccountFunding.Wallet#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); - } - this.extraParams.putAll(map); - return this; - } - - /** Details for a staged purchase. */ - public Builder setStagedPurchase( - PaymentIntentCreateParams.PaymentMethodOptions.Card.PaymentDetails.MoneyServices - .AccountFunding.Wallet.StagedPurchase - stagedPurchase) { - this.stagedPurchase = stagedPurchase; - return this; - } - - /** Details for a staged purchase. */ - public Builder setStagedPurchase(EmptyParam stagedPurchase) { - this.stagedPurchase = stagedPurchase; - return this; - } - } - - @Getter - @EqualsAndHashCode(callSuper = false) - public static class StagedPurchase { - /** - * 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 merchant where the staged wallet purchase is made. */ - @SerializedName("merchant") - Merchant merchant; - - private StagedPurchase(Map extraParams, Merchant merchant) { - this.extraParams = extraParams; - this.merchant = merchant; - } - - public static Builder builder() { - return new Builder(); - } - - public static class Builder { - private Map extraParams; + public static Builder builder() { + return new Builder(); + } - private Merchant merchant; + public static class Builder { + private DigitalAssetCategory digitalAssetCategory; - /** Finalize and obtain parameter instance from this builder. */ - public PaymentIntentCreateParams.PaymentMethodOptions.Card.PaymentDetails - .MoneyServices.AccountFunding.Wallet.StagedPurchase - build() { - return new PaymentIntentCreateParams.PaymentMethodOptions.Card.PaymentDetails - .MoneyServices.AccountFunding.Wallet.StagedPurchase( - this.extraParams, this.merchant); - } + private Map extraParams; - /** - * 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 - * PaymentIntentCreateParams.PaymentMethodOptions.Card.PaymentDetails.MoneyServices.AccountFunding.Wallet.StagedPurchase#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; - } + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentCreateParams.PaymentMethodOptions.Card.PaymentDetails + .MoneyServices.AccountFunding + build() { + return new PaymentIntentCreateParams.PaymentMethodOptions.Card.PaymentDetails + .MoneyServices.AccountFunding(this.digitalAssetCategory, this.extraParams); + } - /** - * 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 - * PaymentIntentCreateParams.PaymentMethodOptions.Card.PaymentDetails.MoneyServices.AccountFunding.Wallet.StagedPurchase#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 category of digital asset being acquired through this account funding + * transaction. + */ + public Builder setDigitalAssetCategory( + PaymentIntentCreateParams.PaymentMethodOptions.Card.PaymentDetails.MoneyServices + .AccountFunding.DigitalAssetCategory + digitalAssetCategory) { + this.digitalAssetCategory = digitalAssetCategory; + return this; + } - /** The merchant where the staged wallet purchase is made. */ - public Builder setMerchant( - PaymentIntentCreateParams.PaymentMethodOptions.Card.PaymentDetails - .MoneyServices.AccountFunding.Wallet.StagedPurchase.Merchant - merchant) { - this.merchant = merchant; - 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 + * PaymentIntentCreateParams.PaymentMethodOptions.Card.PaymentDetails.MoneyServices.AccountFunding#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; + } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class Merchant { - /** - * 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 merchant category code of the merchant. */ - @SerializedName("mcc") - String mcc; - - /** The merchant's name. */ - @SerializedName("name") - String name; - - private Merchant(Map extraParams, String mcc, String name) { - this.extraParams = extraParams; - this.mcc = mcc; - this.name = name; - } - - public static Builder builder() { - return new Builder(); - } - - public static class Builder { - private Map extraParams; - - private String mcc; - - private String name; - - /** Finalize and obtain parameter instance from this builder. */ - public PaymentIntentCreateParams.PaymentMethodOptions.Card.PaymentDetails - .MoneyServices.AccountFunding.Wallet.StagedPurchase.Merchant - build() { - return new PaymentIntentCreateParams.PaymentMethodOptions.Card.PaymentDetails - .MoneyServices.AccountFunding.Wallet.StagedPurchase.Merchant( - this.extraParams, this.mcc, this.name); - } - - /** - * 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 - * PaymentIntentCreateParams.PaymentMethodOptions.Card.PaymentDetails.MoneyServices.AccountFunding.Wallet.StagedPurchase.Merchant#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 - * PaymentIntentCreateParams.PaymentMethodOptions.Card.PaymentDetails.MoneyServices.AccountFunding.Wallet.StagedPurchase.Merchant#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 merchant category code of the merchant. */ - public Builder setMcc(String mcc) { - this.mcc = mcc; - return this; - } - - /** The merchant's name. */ - public Builder setName(String name) { - this.name = name; - 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 + * PaymentIntentCreateParams.PaymentMethodOptions.Card.PaymentDetails.MoneyServices.AccountFunding#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); } + this.extraParams.putAll(map); + return this; } } @@ -31180,6 +30893,9 @@ public enum CaptureBy implements ApiRequestParams.EnumParam { } public enum CaptureMethod implements ApiRequestParams.EnumParam { + @SerializedName("automatic_delayed") + AUTOMATIC_DELAYED("automatic_delayed"), + @SerializedName("manual") MANUAL("manual"); @@ -31929,17 +31645,10 @@ public static class AccountFunding { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** Details for a wallet funding transaction. */ - @SerializedName("wallet") - Wallet wallet; - private AccountFunding( - DigitalAssetCategory digitalAssetCategory, - Map extraParams, - Wallet wallet) { + DigitalAssetCategory digitalAssetCategory, Map extraParams) { this.digitalAssetCategory = digitalAssetCategory; this.extraParams = extraParams; - this.wallet = wallet; } public static Builder builder() { @@ -31951,15 +31660,12 @@ public static class Builder { private Map extraParams; - private Wallet wallet; - /** Finalize and obtain parameter instance from this builder. */ public PaymentIntentCreateParams.PaymentMethodOptions.CardPresent.PaymentDetails .MoneyServices.AccountFunding build() { return new PaymentIntentCreateParams.PaymentMethodOptions.CardPresent.PaymentDetails - .MoneyServices.AccountFunding( - this.digitalAssetCategory, this.extraParams, this.wallet); + .MoneyServices.AccountFunding(this.digitalAssetCategory, this.extraParams); } /** @@ -32003,274 +31709,6 @@ public Builder putAllExtraParam(Map map) { this.extraParams.putAll(map); return this; } - - /** Details for a wallet funding transaction. */ - public Builder setWallet( - PaymentIntentCreateParams.PaymentMethodOptions.CardPresent.PaymentDetails - .MoneyServices.AccountFunding.Wallet - wallet) { - this.wallet = wallet; - return this; - } - } - - @Getter - @EqualsAndHashCode(callSuper = false) - public static class Wallet { - /** - * 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; - - /** Details for a staged purchase. */ - @SerializedName("staged_purchase") - Object stagedPurchase; - - private Wallet(Map extraParams, Object stagedPurchase) { - this.extraParams = extraParams; - this.stagedPurchase = stagedPurchase; - } - - public static Builder builder() { - return new Builder(); - } - - public static class Builder { - private Map extraParams; - - private Object stagedPurchase; - - /** Finalize and obtain parameter instance from this builder. */ - public PaymentIntentCreateParams.PaymentMethodOptions.CardPresent.PaymentDetails - .MoneyServices.AccountFunding.Wallet - build() { - return new PaymentIntentCreateParams.PaymentMethodOptions.CardPresent - .PaymentDetails.MoneyServices.AccountFunding.Wallet( - this.extraParams, this.stagedPurchase); - } - - /** - * 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 - * PaymentIntentCreateParams.PaymentMethodOptions.CardPresent.PaymentDetails.MoneyServices.AccountFunding.Wallet#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 - * PaymentIntentCreateParams.PaymentMethodOptions.CardPresent.PaymentDetails.MoneyServices.AccountFunding.Wallet#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); - } - this.extraParams.putAll(map); - return this; - } - - /** Details for a staged purchase. */ - public Builder setStagedPurchase( - PaymentIntentCreateParams.PaymentMethodOptions.CardPresent.PaymentDetails - .MoneyServices.AccountFunding.Wallet.StagedPurchase - stagedPurchase) { - this.stagedPurchase = stagedPurchase; - return this; - } - - /** Details for a staged purchase. */ - public Builder setStagedPurchase(EmptyParam stagedPurchase) { - this.stagedPurchase = stagedPurchase; - return this; - } - } - - @Getter - @EqualsAndHashCode(callSuper = false) - public static class StagedPurchase { - /** - * 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 merchant where the staged wallet purchase is made. */ - @SerializedName("merchant") - Merchant merchant; - - private StagedPurchase(Map extraParams, Merchant merchant) { - this.extraParams = extraParams; - this.merchant = merchant; - } - - public static Builder builder() { - return new Builder(); - } - - public static class Builder { - private Map extraParams; - - private Merchant merchant; - - /** Finalize and obtain parameter instance from this builder. */ - public PaymentIntentCreateParams.PaymentMethodOptions.CardPresent.PaymentDetails - .MoneyServices.AccountFunding.Wallet.StagedPurchase - build() { - return new PaymentIntentCreateParams.PaymentMethodOptions.CardPresent - .PaymentDetails.MoneyServices.AccountFunding.Wallet.StagedPurchase( - this.extraParams, this.merchant); - } - - /** - * 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 - * PaymentIntentCreateParams.PaymentMethodOptions.CardPresent.PaymentDetails.MoneyServices.AccountFunding.Wallet.StagedPurchase#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 - * PaymentIntentCreateParams.PaymentMethodOptions.CardPresent.PaymentDetails.MoneyServices.AccountFunding.Wallet.StagedPurchase#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 merchant where the staged wallet purchase is made. */ - public Builder setMerchant( - PaymentIntentCreateParams.PaymentMethodOptions.CardPresent.PaymentDetails - .MoneyServices.AccountFunding.Wallet.StagedPurchase.Merchant - merchant) { - this.merchant = merchant; - return this; - } - } - - @Getter - @EqualsAndHashCode(callSuper = false) - public static class Merchant { - /** - * 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 merchant category code of the merchant. */ - @SerializedName("mcc") - String mcc; - - /** The merchant's name. */ - @SerializedName("name") - String name; - - private Merchant(Map extraParams, String mcc, String name) { - this.extraParams = extraParams; - this.mcc = mcc; - this.name = name; - } - - public static Builder builder() { - return new Builder(); - } - - public static class Builder { - private Map extraParams; - - private String mcc; - - private String name; - - /** Finalize and obtain parameter instance from this builder. */ - public PaymentIntentCreateParams.PaymentMethodOptions.CardPresent.PaymentDetails - .MoneyServices.AccountFunding.Wallet.StagedPurchase.Merchant - build() { - return new PaymentIntentCreateParams.PaymentMethodOptions.CardPresent - .PaymentDetails.MoneyServices.AccountFunding.Wallet.StagedPurchase - .Merchant(this.extraParams, this.mcc, this.name); - } - - /** - * 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 - * PaymentIntentCreateParams.PaymentMethodOptions.CardPresent.PaymentDetails.MoneyServices.AccountFunding.Wallet.StagedPurchase.Merchant#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 - * PaymentIntentCreateParams.PaymentMethodOptions.CardPresent.PaymentDetails.MoneyServices.AccountFunding.Wallet.StagedPurchase.Merchant#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 merchant category code of the merchant. */ - public Builder setMcc(String mcc) { - this.mcc = mcc; - return this; - } - - /** The merchant's name. */ - public Builder setName(String name) { - this.name = name; - return this; - } - } - } - } } public enum DigitalAssetCategory implements ApiRequestParams.EnumParam { @@ -32408,6 +31846,9 @@ public enum CaptureBy implements ApiRequestParams.EnumParam { } public enum CaptureMethod implements ApiRequestParams.EnumParam { + @SerializedName("automatic_delayed") + AUTOMATIC_DELAYED("automatic_delayed"), + @SerializedName("manual") MANUAL("manual"), @@ -47132,9 +46573,35 @@ public static class Satispay { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - private Satispay(ApiRequestParams.EnumParam captureMethod, Map extraParams) { + /** + * Indicates that you intend to make future payments with this PaymentIntent's payment method. + * + *

If you provide a Customer with the PaymentIntent, you can use this parameter to attach the payment method to the + * Customer after the PaymentIntent is confirmed and the customer completes any required + * actions. If you don't provide a Customer, you can still attach the payment method to a + * Customer after the transaction completes. + * + *

If the payment method is {@code card_present} and isn't a digital wallet, Stripe creates + * and attaches a generated_card + * payment method representing the card to the Customer instead. + * + *

When processing card payments, Stripe uses {@code setup_future_usage} to help you comply + * with regional legislation and network rules, such as SCA. + */ + @SerializedName("setup_future_usage") + ApiRequestParams.EnumParam setupFutureUsage; + + private Satispay( + ApiRequestParams.EnumParam captureMethod, + Map extraParams, + ApiRequestParams.EnumParam setupFutureUsage) { this.captureMethod = captureMethod; this.extraParams = extraParams; + this.setupFutureUsage = setupFutureUsage; } public static Builder builder() { @@ -47146,10 +46613,12 @@ public static class Builder { private Map extraParams; + private ApiRequestParams.EnumParam setupFutureUsage; + /** Finalize and obtain parameter instance from this builder. */ public PaymentIntentCreateParams.PaymentMethodOptions.Satispay build() { return new PaymentIntentCreateParams.PaymentMethodOptions.Satispay( - this.captureMethod, this.extraParams); + this.captureMethod, this.extraParams, this.setupFutureUsage); } /** @@ -47210,6 +46679,58 @@ public Builder putAllExtraParam(Map map) { this.extraParams.putAll(map); return this; } + + /** + * Indicates that you intend to make future payments with this PaymentIntent's payment + * method. + * + *

If you provide a Customer with the PaymentIntent, you can use this parameter to attach the payment method to + * the Customer after the PaymentIntent is confirmed and the customer completes any required + * actions. If you don't provide a Customer, you can still attach the payment method to a + * Customer after the transaction completes. + * + *

If the payment method is {@code card_present} and isn't a digital wallet, Stripe + * creates and attaches a generated_card + * payment method representing the card to the Customer instead. + * + *

When processing card payments, Stripe uses {@code setup_future_usage} to help you + * comply with regional legislation and network rules, such as SCA. + */ + public Builder setSetupFutureUsage( + PaymentIntentCreateParams.PaymentMethodOptions.Satispay.SetupFutureUsage + setupFutureUsage) { + this.setupFutureUsage = setupFutureUsage; + return this; + } + + /** + * Indicates that you intend to make future payments with this PaymentIntent's payment + * method. + * + *

If you provide a Customer with the PaymentIntent, you can use this parameter to attach the payment method to + * the Customer after the PaymentIntent is confirmed and the customer completes any required + * actions. If you don't provide a Customer, you can still attach the payment method to a + * Customer after the transaction completes. + * + *

If the payment method is {@code card_present} and isn't a digital wallet, Stripe + * creates and attaches a generated_card + * payment method representing the card to the Customer instead. + * + *

When processing card payments, Stripe uses {@code setup_future_usage} to help you + * comply with regional legislation and network rules, such as SCA. + */ + public Builder setSetupFutureUsage(EmptyParam setupFutureUsage) { + this.setupFutureUsage = setupFutureUsage; + return this; + } } public enum CaptureMethod implements ApiRequestParams.EnumParam { @@ -47223,6 +46744,24 @@ public enum CaptureMethod implements ApiRequestParams.EnumParam { this.value = value; } } + + public enum SetupFutureUsage implements ApiRequestParams.EnumParam { + @SerializedName("none") + NONE("none"), + + @SerializedName("off_session") + OFF_SESSION("off_session"), + + @SerializedName("on_session") + ON_SESSION("on_session"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + SetupFutureUsage(String value) { + this.value = value; + } + } } @Getter diff --git a/src/main/java/com/stripe/param/PaymentIntentUpdateParams.java b/src/main/java/com/stripe/param/PaymentIntentUpdateParams.java index 715916b0090..5a3338dd054 100644 --- a/src/main/java/com/stripe/param/PaymentIntentUpdateParams.java +++ b/src/main/java/com/stripe/param/PaymentIntentUpdateParams.java @@ -16123,10 +16123,18 @@ public Builder setType(EmptyParam type) { @Getter @EqualsAndHashCode(callSuper = false) public static class MoneyServices { - /** Account funding transaction details including sender and beneficiary information. */ + /** Account funding transaction details including sender information. */ @SerializedName("account_funding") Object accountFunding; + /** ID of the Account representing the beneficiary in this account funding transaction. */ + @SerializedName("beneficiary_account") + Object beneficiaryAccount; + + /** Inline identity details for the beneficiary of this transaction. */ + @SerializedName("beneficiary_details") + Object beneficiaryDetails; + /** * 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. @@ -16142,9 +16150,13 @@ public static class MoneyServices { private MoneyServices( Object accountFunding, + Object beneficiaryAccount, + Object beneficiaryDetails, Map extraParams, ApiRequestParams.EnumParam transactionType) { this.accountFunding = accountFunding; + this.beneficiaryAccount = beneficiaryAccount; + this.beneficiaryDetails = beneficiaryDetails; this.extraParams = extraParams; this.transactionType = transactionType; } @@ -16156,6 +16168,10 @@ public static Builder builder() { public static class Builder { private Object accountFunding; + private Object beneficiaryAccount; + + private Object beneficiaryDetails; + private Map extraParams; private ApiRequestParams.EnumParam transactionType; @@ -16163,22 +16179,52 @@ public static class Builder { /** Finalize and obtain parameter instance from this builder. */ public PaymentIntentUpdateParams.PaymentDetails.MoneyServices build() { return new PaymentIntentUpdateParams.PaymentDetails.MoneyServices( - this.accountFunding, this.extraParams, this.transactionType); + this.accountFunding, + this.beneficiaryAccount, + this.beneficiaryDetails, + this.extraParams, + this.transactionType); } - /** Account funding transaction details including sender and beneficiary information. */ + /** Account funding transaction details including sender information. */ public Builder setAccountFunding( PaymentIntentUpdateParams.PaymentDetails.MoneyServices.AccountFunding accountFunding) { this.accountFunding = accountFunding; return this; } - /** Account funding transaction details including sender and beneficiary information. */ + /** Account funding transaction details including sender information. */ public Builder setAccountFunding(EmptyParam accountFunding) { this.accountFunding = accountFunding; return this; } + /** ID of the Account representing the beneficiary in this account funding transaction. */ + public Builder setBeneficiaryAccount(String beneficiaryAccount) { + this.beneficiaryAccount = beneficiaryAccount; + return this; + } + + /** ID of the Account representing the beneficiary in this account funding transaction. */ + public Builder setBeneficiaryAccount(EmptyParam beneficiaryAccount) { + this.beneficiaryAccount = beneficiaryAccount; + return this; + } + + /** Inline identity details for the beneficiary of this transaction. */ + public Builder setBeneficiaryDetails( + PaymentIntentUpdateParams.PaymentDetails.MoneyServices.BeneficiaryDetails + beneficiaryDetails) { + this.beneficiaryDetails = beneficiaryDetails; + return this; + } + + /** Inline identity details for the beneficiary of this transaction. */ + public Builder setBeneficiaryDetails(EmptyParam beneficiaryDetails) { + this.beneficiaryDetails = beneficiaryDetails; + 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 @@ -16225,14 +16271,6 @@ public Builder setTransactionType(EmptyParam transactionType) { @Getter @EqualsAndHashCode(callSuper = false) public static class AccountFunding { - /** ID of the Account representing the beneficiary in this account funding transaction. */ - @SerializedName("beneficiary_account") - Object beneficiaryAccount; - - /** Inline identity details for the beneficiary of this account funding transaction. */ - @SerializedName("beneficiary_details") - Object beneficiaryDetails; - /** * 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. @@ -16252,13 +16290,7 @@ public static class AccountFunding { Object senderDetails; private AccountFunding( - Object beneficiaryAccount, - Object beneficiaryDetails, - Map extraParams, - Object senderAccount, - Object senderDetails) { - this.beneficiaryAccount = beneficiaryAccount; - this.beneficiaryDetails = beneficiaryDetails; + Map extraParams, Object senderAccount, Object senderDetails) { this.extraParams = extraParams; this.senderAccount = senderAccount; this.senderDetails = senderDetails; @@ -16269,10 +16301,6 @@ public static Builder builder() { } public static class Builder { - private Object beneficiaryAccount; - - private Object beneficiaryDetails; - private Map extraParams; private Object senderAccount; @@ -16282,38 +16310,7 @@ public static class Builder { /** Finalize and obtain parameter instance from this builder. */ public PaymentIntentUpdateParams.PaymentDetails.MoneyServices.AccountFunding build() { return new PaymentIntentUpdateParams.PaymentDetails.MoneyServices.AccountFunding( - this.beneficiaryAccount, - this.beneficiaryDetails, - this.extraParams, - this.senderAccount, - this.senderDetails); - } - - /** ID of the Account representing the beneficiary in this account funding transaction. */ - public Builder setBeneficiaryAccount(String beneficiaryAccount) { - this.beneficiaryAccount = beneficiaryAccount; - return this; - } - - /** ID of the Account representing the beneficiary in this account funding transaction. */ - public Builder setBeneficiaryAccount(EmptyParam beneficiaryAccount) { - this.beneficiaryAccount = beneficiaryAccount; - return this; - } - - /** Inline identity details for the beneficiary of this account funding transaction. */ - public Builder setBeneficiaryDetails( - PaymentIntentUpdateParams.PaymentDetails.MoneyServices.AccountFunding - .BeneficiaryDetails - beneficiaryDetails) { - this.beneficiaryDetails = beneficiaryDetails; - return this; - } - - /** Inline identity details for the beneficiary of this account funding transaction. */ - public Builder setBeneficiaryDetails(EmptyParam beneficiaryDetails) { - this.beneficiaryDetails = beneficiaryDetails; - return this; + this.extraParams, this.senderAccount, this.senderDetails); } /** @@ -16375,7 +16372,7 @@ public Builder setSenderDetails(EmptyParam senderDetails) { @Getter @EqualsAndHashCode(callSuper = false) - public static class BeneficiaryDetails { + public static class SenderDetails { /** Address. */ @SerializedName("address") Address address; @@ -16406,7 +16403,7 @@ public static class BeneficiaryDetails { @SerializedName("phone") Object phone; - private BeneficiaryDetails( + private SenderDetails( Address address, DateOfBirth dateOfBirth, Object email, @@ -16440,10 +16437,10 @@ public static class Builder { /** Finalize and obtain parameter instance from this builder. */ public PaymentIntentUpdateParams.PaymentDetails.MoneyServices.AccountFunding - .BeneficiaryDetails + .SenderDetails build() { return new PaymentIntentUpdateParams.PaymentDetails.MoneyServices.AccountFunding - .BeneficiaryDetails( + .SenderDetails( this.address, this.dateOfBirth, this.email, @@ -16454,8 +16451,8 @@ public static class Builder { /** Address. */ public Builder setAddress( - PaymentIntentUpdateParams.PaymentDetails.MoneyServices.AccountFunding - .BeneficiaryDetails.Address + PaymentIntentUpdateParams.PaymentDetails.MoneyServices.AccountFunding.SenderDetails + .Address address) { this.address = address; return this; @@ -16463,8 +16460,8 @@ public Builder setAddress( /** Date of birth. */ public Builder setDateOfBirth( - PaymentIntentUpdateParams.PaymentDetails.MoneyServices.AccountFunding - .BeneficiaryDetails.DateOfBirth + PaymentIntentUpdateParams.PaymentDetails.MoneyServices.AccountFunding.SenderDetails + .DateOfBirth dateOfBirth) { this.dateOfBirth = dateOfBirth; return this; @@ -16486,7 +16483,7 @@ public Builder setEmail(EmptyParam email) { * 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 - * PaymentIntentUpdateParams.PaymentDetails.MoneyServices.AccountFunding.BeneficiaryDetails#extraParams} + * PaymentIntentUpdateParams.PaymentDetails.MoneyServices.AccountFunding.SenderDetails#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -16501,7 +16498,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * PaymentIntentUpdateParams.PaymentDetails.MoneyServices.AccountFunding.BeneficiaryDetails#extraParams} + * PaymentIntentUpdateParams.PaymentDetails.MoneyServices.AccountFunding.SenderDetails#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -16618,10 +16615,10 @@ public static class Builder { /** Finalize and obtain parameter instance from this builder. */ public PaymentIntentUpdateParams.PaymentDetails.MoneyServices.AccountFunding - .BeneficiaryDetails.Address + .SenderDetails.Address build() { return new PaymentIntentUpdateParams.PaymentDetails.MoneyServices.AccountFunding - .BeneficiaryDetails.Address( + .SenderDetails.Address( this.city, this.country, this.extraParams, @@ -16665,7 +16662,7 @@ public Builder setCountry(EmptyParam country) { * 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 - * PaymentIntentUpdateParams.PaymentDetails.MoneyServices.AccountFunding.BeneficiaryDetails.Address#extraParams} + * PaymentIntentUpdateParams.PaymentDetails.MoneyServices.AccountFunding.SenderDetails.Address#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -16680,7 +16677,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * PaymentIntentUpdateParams.PaymentDetails.MoneyServices.AccountFunding.BeneficiaryDetails.Address#extraParams} + * PaymentIntentUpdateParams.PaymentDetails.MoneyServices.AccountFunding.SenderDetails.Address#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -16794,11 +16791,10 @@ public static class Builder { /** Finalize and obtain parameter instance from this builder. */ public PaymentIntentUpdateParams.PaymentDetails.MoneyServices.AccountFunding - .BeneficiaryDetails.DateOfBirth + .SenderDetails.DateOfBirth build() { return new PaymentIntentUpdateParams.PaymentDetails.MoneyServices.AccountFunding - .BeneficiaryDetails.DateOfBirth( - this.day, this.extraParams, this.month, this.year); + .SenderDetails.DateOfBirth(this.day, this.extraParams, this.month, this.year); } /** Required. Day of birth, between 1 and 31. */ @@ -16811,7 +16807,7 @@ public Builder setDay(Long day) { * 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 - * PaymentIntentUpdateParams.PaymentDetails.MoneyServices.AccountFunding.BeneficiaryDetails.DateOfBirth#extraParams} + * PaymentIntentUpdateParams.PaymentDetails.MoneyServices.AccountFunding.SenderDetails.DateOfBirth#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -16826,7 +16822,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * PaymentIntentUpdateParams.PaymentDetails.MoneyServices.AccountFunding.BeneficiaryDetails.DateOfBirth#extraParams} + * PaymentIntentUpdateParams.PaymentDetails.MoneyServices.AccountFunding.SenderDetails.DateOfBirth#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -16851,113 +16847,287 @@ public Builder setYear(Long year) { } } } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class BeneficiaryDetails { + /** Address. */ + @SerializedName("address") + Address address; + + /** Date of birth. */ + @SerializedName("date_of_birth") + DateOfBirth dateOfBirth; + + /** Email address. */ + @SerializedName("email") + Object email; + + /** + * 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; + + /** Full name. */ + @SerializedName("name") + Object name; + + /** Phone number. */ + @SerializedName("phone") + Object phone; + + private BeneficiaryDetails( + Address address, + DateOfBirth dateOfBirth, + Object email, + Map extraParams, + Object name, + Object phone) { + this.address = address; + this.dateOfBirth = dateOfBirth; + this.email = email; + this.extraParams = extraParams; + this.name = name; + this.phone = phone; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Address address; + + private DateOfBirth dateOfBirth; + + private Object email; + + private Map extraParams; + + private Object name; + + private Object phone; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentUpdateParams.PaymentDetails.MoneyServices.BeneficiaryDetails build() { + return new PaymentIntentUpdateParams.PaymentDetails.MoneyServices.BeneficiaryDetails( + this.address, + this.dateOfBirth, + this.email, + this.extraParams, + this.name, + this.phone); + } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class SenderDetails { /** Address. */ - @SerializedName("address") - Address address; + public Builder setAddress( + PaymentIntentUpdateParams.PaymentDetails.MoneyServices.BeneficiaryDetails.Address + address) { + this.address = address; + return this; + } /** Date of birth. */ - @SerializedName("date_of_birth") - DateOfBirth dateOfBirth; + public Builder setDateOfBirth( + PaymentIntentUpdateParams.PaymentDetails.MoneyServices.BeneficiaryDetails.DateOfBirth + dateOfBirth) { + this.dateOfBirth = dateOfBirth; + return this; + } /** Email address. */ - @SerializedName("email") - Object email; + public Builder setEmail(String email) { + this.email = email; + return this; + } + + /** Email address. */ + public Builder setEmail(EmptyParam email) { + this.email = email; + return this; + } /** - * 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. + * 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 + * PaymentIntentUpdateParams.PaymentDetails.MoneyServices.BeneficiaryDetails#extraParams} + * for the field documentation. */ - @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) - Map extraParams; + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } - /** Full name. */ - @SerializedName("name") - Object name; + /** + * 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 + * PaymentIntentUpdateParams.PaymentDetails.MoneyServices.BeneficiaryDetails#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - /** Phone number. */ - @SerializedName("phone") - Object phone; + /** Full name. */ + public Builder setName(String name) { + this.name = name; + return this; + } - private SenderDetails( - Address address, - DateOfBirth dateOfBirth, - Object email, - Map extraParams, - Object name, - Object phone) { - this.address = address; - this.dateOfBirth = dateOfBirth; - this.email = email; - this.extraParams = extraParams; + /** Full name. */ + public Builder setName(EmptyParam name) { this.name = name; - this.phone = phone; + return this; } - public static Builder builder() { - return new Builder(); + /** Phone number. */ + public Builder setPhone(String phone) { + this.phone = phone; + return this; } - public static class Builder { - private Address address; + /** Phone number. */ + public Builder setPhone(EmptyParam phone) { + this.phone = phone; + return this; + } + } - private DateOfBirth dateOfBirth; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Address { + /** City, district, suburb, town, or village. */ + @SerializedName("city") + Object city; - private Object email; + /** + * Two-letter country code (ISO + * 3166-1 alpha-2). + */ + @SerializedName("country") + Object country; - private Map extraParams; + /** + * 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; - private Object name; + /** Address line 1, such as the street, PO Box, or company name. */ + @SerializedName("line1") + Object line1; - private Object phone; + /** Address line 2, such as the apartment, suite, unit, or building. */ + @SerializedName("line2") + Object line2; + + /** ZIP or postal code. */ + @SerializedName("postal_code") + Object postalCode; + + /** + * State, county, province, or region (ISO 3166-2). + */ + @SerializedName("state") + Object state; + + private Address( + Object city, + Object country, + Map extraParams, + Object line1, + Object line2, + Object postalCode, + Object state) { + this.city = city; + this.country = country; + this.extraParams = extraParams; + this.line1 = line1; + this.line2 = line2; + this.postalCode = postalCode; + this.state = state; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Object city; + + private Object country; + + private Map extraParams; + + private Object line1; + + private Object line2; + + private Object postalCode; + + private Object state; /** Finalize and obtain parameter instance from this builder. */ - public PaymentIntentUpdateParams.PaymentDetails.MoneyServices.AccountFunding - .SenderDetails + public PaymentIntentUpdateParams.PaymentDetails.MoneyServices.BeneficiaryDetails.Address build() { - return new PaymentIntentUpdateParams.PaymentDetails.MoneyServices.AccountFunding - .SenderDetails( - this.address, - this.dateOfBirth, - this.email, + return new PaymentIntentUpdateParams.PaymentDetails.MoneyServices.BeneficiaryDetails + .Address( + this.city, + this.country, this.extraParams, - this.name, - this.phone); + this.line1, + this.line2, + this.postalCode, + this.state); } - /** Address. */ - public Builder setAddress( - PaymentIntentUpdateParams.PaymentDetails.MoneyServices.AccountFunding.SenderDetails - .Address - address) { - this.address = address; + /** City, district, suburb, town, or village. */ + public Builder setCity(String city) { + this.city = city; return this; } - /** Date of birth. */ - public Builder setDateOfBirth( - PaymentIntentUpdateParams.PaymentDetails.MoneyServices.AccountFunding.SenderDetails - .DateOfBirth - dateOfBirth) { - this.dateOfBirth = dateOfBirth; + /** City, district, suburb, town, or village. */ + public Builder setCity(EmptyParam city) { + this.city = city; return this; } - /** Email address. */ - public Builder setEmail(String email) { - this.email = email; + /** + * Two-letter country code (ISO 3166-1 alpha-2). + */ + public Builder setCountry(String country) { + this.country = country; return this; } - /** Email address. */ - public Builder setEmail(EmptyParam email) { - this.email = email; + /** + * Two-letter country code (ISO 3166-1 alpha-2). + */ + public Builder setCountry(EmptyParam country) { + this.country = country; return this; } @@ -16965,7 +17135,7 @@ public Builder setEmail(EmptyParam email) { * 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 - * PaymentIntentUpdateParams.PaymentDetails.MoneyServices.AccountFunding.SenderDetails#extraParams} + * PaymentIntentUpdateParams.PaymentDetails.MoneyServices.BeneficiaryDetails.Address#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -16980,7 +17150,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * PaymentIntentUpdateParams.PaymentDetails.MoneyServices.AccountFunding.SenderDetails#extraParams} + * PaymentIntentUpdateParams.PaymentDetails.MoneyServices.BeneficiaryDetails.Address#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -16991,341 +17161,161 @@ public Builder putAllExtraParam(Map map) { return this; } - /** Full name. */ - public Builder setName(String name) { - this.name = name; + /** Address line 1, such as the street, PO Box, or company name. */ + public Builder setLine1(String line1) { + this.line1 = line1; return this; } - /** Full name. */ - public Builder setName(EmptyParam name) { - this.name = name; + /** Address line 1, such as the street, PO Box, or company name. */ + public Builder setLine1(EmptyParam line1) { + this.line1 = line1; return this; } - /** Phone number. */ - public Builder setPhone(String phone) { - this.phone = phone; + /** Address line 2, such as the apartment, suite, unit, or building. */ + public Builder setLine2(String line2) { + this.line2 = line2; return this; } - /** Phone number. */ - public Builder setPhone(EmptyParam phone) { - this.phone = phone; + /** Address line 2, such as the apartment, suite, unit, or building. */ + public Builder setLine2(EmptyParam line2) { + this.line2 = line2; return this; } - } - - @Getter - @EqualsAndHashCode(callSuper = false) - public static class Address { - /** City, district, suburb, town, or village. */ - @SerializedName("city") - Object city; - - /** - * Two-letter country code (ISO 3166-1 alpha-2). - */ - @SerializedName("country") - Object country; - /** - * 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; - - /** Address line 1, such as the street, PO Box, or company name. */ - @SerializedName("line1") - Object line1; - - /** Address line 2, such as the apartment, suite, unit, or building. */ - @SerializedName("line2") - Object line2; + /** ZIP or postal code. */ + public Builder setPostalCode(String postalCode) { + this.postalCode = postalCode; + return this; + } /** ZIP or postal code. */ - @SerializedName("postal_code") - Object postalCode; + public Builder setPostalCode(EmptyParam postalCode) { + this.postalCode = postalCode; + return this; + } /** * State, county, province, or region (ISO 3166-2). */ - @SerializedName("state") - Object state; - - private Address( - Object city, - Object country, - Map extraParams, - Object line1, - Object line2, - Object postalCode, - Object state) { - this.city = city; - this.country = country; - this.extraParams = extraParams; - this.line1 = line1; - this.line2 = line2; - this.postalCode = postalCode; + public Builder setState(String state) { this.state = state; + return this; } - public static Builder builder() { - return new Builder(); - } - - public static class Builder { - private Object city; - - private Object country; - - private Map extraParams; - - private Object line1; - - private Object line2; - - private Object postalCode; - - private Object state; - - /** Finalize and obtain parameter instance from this builder. */ - public PaymentIntentUpdateParams.PaymentDetails.MoneyServices.AccountFunding - .SenderDetails.Address - build() { - return new PaymentIntentUpdateParams.PaymentDetails.MoneyServices.AccountFunding - .SenderDetails.Address( - this.city, - this.country, - this.extraParams, - this.line1, - this.line2, - this.postalCode, - this.state); - } - - /** City, district, suburb, town, or village. */ - public Builder setCity(String city) { - this.city = city; - return this; - } - - /** City, district, suburb, town, or village. */ - public Builder setCity(EmptyParam city) { - this.city = city; - return this; - } - - /** - * Two-letter country code (ISO 3166-1 alpha-2). - */ - public Builder setCountry(String country) { - this.country = country; - return this; - } - - /** - * Two-letter country code (ISO 3166-1 alpha-2). - */ - public Builder setCountry(EmptyParam country) { - this.country = country; - 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 - * PaymentIntentUpdateParams.PaymentDetails.MoneyServices.AccountFunding.SenderDetails.Address#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 - * PaymentIntentUpdateParams.PaymentDetails.MoneyServices.AccountFunding.SenderDetails.Address#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); - } - this.extraParams.putAll(map); - return this; - } - - /** Address line 1, such as the street, PO Box, or company name. */ - public Builder setLine1(String line1) { - this.line1 = line1; - return this; - } - - /** Address line 1, such as the street, PO Box, or company name. */ - public Builder setLine1(EmptyParam line1) { - this.line1 = line1; - return this; - } - - /** Address line 2, such as the apartment, suite, unit, or building. */ - public Builder setLine2(String line2) { - this.line2 = line2; - return this; - } - - /** Address line 2, such as the apartment, suite, unit, or building. */ - public Builder setLine2(EmptyParam line2) { - this.line2 = line2; - return this; - } - - /** ZIP or postal code. */ - public Builder setPostalCode(String postalCode) { - this.postalCode = postalCode; - return this; - } - - /** ZIP or postal code. */ - public Builder setPostalCode(EmptyParam postalCode) { - this.postalCode = postalCode; - return this; - } - - /** - * State, county, province, or region (ISO 3166-2). - */ - public Builder setState(String state) { - this.state = state; - return this; - } - - /** - * State, county, province, or region (ISO 3166-2). - */ - public Builder setState(EmptyParam state) { - this.state = state; - return this; - } + /** + * State, county, province, or region (ISO 3166-2). + */ + public Builder setState(EmptyParam state) { + this.state = state; + return this; } } + } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class DateOfBirth { - /** Required. Day of birth, between 1 and 31. */ - @SerializedName("day") - Long day; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class DateOfBirth { + /** Required. Day of birth, between 1 and 31. */ + @SerializedName("day") + Long day; - /** - * 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; + /** + * 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. Month of birth, between 1 and 12. */ - @SerializedName("month") - Long month; + /** Required. Month of birth, between 1 and 12. */ + @SerializedName("month") + Long month; - /** Required. Four-digit year of birth. */ - @SerializedName("year") - Long year; + /** Required. Four-digit year of birth. */ + @SerializedName("year") + Long year; - private DateOfBirth(Long day, Map extraParams, Long month, Long year) { - this.day = day; - this.extraParams = extraParams; - this.month = month; - this.year = year; - } + private DateOfBirth(Long day, Map extraParams, Long month, Long year) { + this.day = day; + this.extraParams = extraParams; + this.month = month; + this.year = year; + } - public static Builder builder() { - return new Builder(); - } + public static Builder builder() { + return new Builder(); + } - public static class Builder { - private Long day; + public static class Builder { + private Long day; - private Map extraParams; + private Map extraParams; - private Long month; + private Long month; - private Long year; + private Long year; - /** Finalize and obtain parameter instance from this builder. */ - public PaymentIntentUpdateParams.PaymentDetails.MoneyServices.AccountFunding - .SenderDetails.DateOfBirth - build() { - return new PaymentIntentUpdateParams.PaymentDetails.MoneyServices.AccountFunding - .SenderDetails.DateOfBirth(this.day, this.extraParams, this.month, this.year); - } + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentUpdateParams.PaymentDetails.MoneyServices.BeneficiaryDetails + .DateOfBirth + build() { + return new PaymentIntentUpdateParams.PaymentDetails.MoneyServices.BeneficiaryDetails + .DateOfBirth(this.day, this.extraParams, this.month, this.year); + } - /** Required. Day of birth, between 1 and 31. */ - public Builder setDay(Long day) { - this.day = day; - return this; - } + /** Required. Day of birth, between 1 and 31. */ + public Builder setDay(Long day) { + this.day = day; + 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 - * PaymentIntentUpdateParams.PaymentDetails.MoneyServices.AccountFunding.SenderDetails.DateOfBirth#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 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 + * PaymentIntentUpdateParams.PaymentDetails.MoneyServices.BeneficiaryDetails.DateOfBirth#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 - * PaymentIntentUpdateParams.PaymentDetails.MoneyServices.AccountFunding.SenderDetails.DateOfBirth#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 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 + * PaymentIntentUpdateParams.PaymentDetails.MoneyServices.BeneficiaryDetails.DateOfBirth#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. Month of birth, between 1 and 12. */ - public Builder setMonth(Long month) { - this.month = month; - return this; - } + /** Required. Month of birth, between 1 and 12. */ + public Builder setMonth(Long month) { + this.month = month; + return this; + } - /** Required. Four-digit year of birth. */ - public Builder setYear(Long year) { - this.year = year; - return this; - } + /** Required. Four-digit year of birth. */ + public Builder setYear(Long year) { + this.year = year; + return this; } } } @@ -31233,358 +31223,69 @@ public static class AccountFunding { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** Details for a wallet funding transaction. */ - @SerializedName("wallet") - Wallet wallet; - private AccountFunding( - DigitalAssetCategory digitalAssetCategory, - Map extraParams, - Wallet wallet) { + DigitalAssetCategory digitalAssetCategory, Map extraParams) { this.digitalAssetCategory = digitalAssetCategory; this.extraParams = extraParams; - this.wallet = wallet; - } - - public static Builder builder() { - return new Builder(); - } - - public static class Builder { - private DigitalAssetCategory digitalAssetCategory; - - private Map extraParams; - - private Wallet wallet; - - /** Finalize and obtain parameter instance from this builder. */ - public PaymentIntentUpdateParams.PaymentMethodOptions.Card.PaymentDetails - .MoneyServices.AccountFunding - build() { - return new PaymentIntentUpdateParams.PaymentMethodOptions.Card.PaymentDetails - .MoneyServices.AccountFunding( - this.digitalAssetCategory, this.extraParams, this.wallet); - } - - /** - * The category of digital asset being acquired through this account funding - * transaction. - */ - public Builder setDigitalAssetCategory( - PaymentIntentUpdateParams.PaymentMethodOptions.Card.PaymentDetails.MoneyServices - .AccountFunding.DigitalAssetCategory - digitalAssetCategory) { - this.digitalAssetCategory = digitalAssetCategory; - 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 - * PaymentIntentUpdateParams.PaymentMethodOptions.Card.PaymentDetails.MoneyServices.AccountFunding#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 - * PaymentIntentUpdateParams.PaymentMethodOptions.Card.PaymentDetails.MoneyServices.AccountFunding#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); - } - this.extraParams.putAll(map); - return this; - } - - /** Details for a wallet funding transaction. */ - public Builder setWallet( - PaymentIntentUpdateParams.PaymentMethodOptions.Card.PaymentDetails.MoneyServices - .AccountFunding.Wallet - wallet) { - this.wallet = wallet; - return this; - } } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class Wallet { - /** - * 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; - - /** Details for a staged purchase. */ - @SerializedName("staged_purchase") - Object stagedPurchase; - - private Wallet(Map extraParams, Object stagedPurchase) { - this.extraParams = extraParams; - this.stagedPurchase = stagedPurchase; - } - - public static Builder builder() { - return new Builder(); - } - - public static class Builder { - private Map extraParams; - - private Object stagedPurchase; - - /** Finalize and obtain parameter instance from this builder. */ - public PaymentIntentUpdateParams.PaymentMethodOptions.Card.PaymentDetails - .MoneyServices.AccountFunding.Wallet - build() { - return new PaymentIntentUpdateParams.PaymentMethodOptions.Card.PaymentDetails - .MoneyServices.AccountFunding.Wallet(this.extraParams, this.stagedPurchase); - } - - /** - * 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 - * PaymentIntentUpdateParams.PaymentMethodOptions.Card.PaymentDetails.MoneyServices.AccountFunding.Wallet#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 - * PaymentIntentUpdateParams.PaymentMethodOptions.Card.PaymentDetails.MoneyServices.AccountFunding.Wallet#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); - } - this.extraParams.putAll(map); - return this; - } - - /** Details for a staged purchase. */ - public Builder setStagedPurchase( - PaymentIntentUpdateParams.PaymentMethodOptions.Card.PaymentDetails.MoneyServices - .AccountFunding.Wallet.StagedPurchase - stagedPurchase) { - this.stagedPurchase = stagedPurchase; - return this; - } - - /** Details for a staged purchase. */ - public Builder setStagedPurchase(EmptyParam stagedPurchase) { - this.stagedPurchase = stagedPurchase; - return this; - } - } - - @Getter - @EqualsAndHashCode(callSuper = false) - public static class StagedPurchase { - /** - * 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 merchant where the staged wallet purchase is made. */ - @SerializedName("merchant") - Merchant merchant; - - private StagedPurchase(Map extraParams, Merchant merchant) { - this.extraParams = extraParams; - this.merchant = merchant; - } - - public static Builder builder() { - return new Builder(); - } - - public static class Builder { - private Map extraParams; + public static Builder builder() { + return new Builder(); + } - private Merchant merchant; + public static class Builder { + private DigitalAssetCategory digitalAssetCategory; - /** Finalize and obtain parameter instance from this builder. */ - public PaymentIntentUpdateParams.PaymentMethodOptions.Card.PaymentDetails - .MoneyServices.AccountFunding.Wallet.StagedPurchase - build() { - return new PaymentIntentUpdateParams.PaymentMethodOptions.Card.PaymentDetails - .MoneyServices.AccountFunding.Wallet.StagedPurchase( - this.extraParams, this.merchant); - } + private Map extraParams; - /** - * 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 - * PaymentIntentUpdateParams.PaymentMethodOptions.Card.PaymentDetails.MoneyServices.AccountFunding.Wallet.StagedPurchase#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; - } + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentUpdateParams.PaymentMethodOptions.Card.PaymentDetails + .MoneyServices.AccountFunding + build() { + return new PaymentIntentUpdateParams.PaymentMethodOptions.Card.PaymentDetails + .MoneyServices.AccountFunding(this.digitalAssetCategory, this.extraParams); + } - /** - * 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 - * PaymentIntentUpdateParams.PaymentMethodOptions.Card.PaymentDetails.MoneyServices.AccountFunding.Wallet.StagedPurchase#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 category of digital asset being acquired through this account funding + * transaction. + */ + public Builder setDigitalAssetCategory( + PaymentIntentUpdateParams.PaymentMethodOptions.Card.PaymentDetails.MoneyServices + .AccountFunding.DigitalAssetCategory + digitalAssetCategory) { + this.digitalAssetCategory = digitalAssetCategory; + return this; + } - /** The merchant where the staged wallet purchase is made. */ - public Builder setMerchant( - PaymentIntentUpdateParams.PaymentMethodOptions.Card.PaymentDetails - .MoneyServices.AccountFunding.Wallet.StagedPurchase.Merchant - merchant) { - this.merchant = merchant; - 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 + * PaymentIntentUpdateParams.PaymentMethodOptions.Card.PaymentDetails.MoneyServices.AccountFunding#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; + } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class Merchant { - /** - * 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 merchant category code of the merchant. */ - @SerializedName("mcc") - Object mcc; - - /** The merchant's name. */ - @SerializedName("name") - Object name; - - private Merchant(Map extraParams, Object mcc, Object name) { - this.extraParams = extraParams; - this.mcc = mcc; - this.name = name; - } - - public static Builder builder() { - return new Builder(); - } - - public static class Builder { - private Map extraParams; - - private Object mcc; - - private Object name; - - /** Finalize and obtain parameter instance from this builder. */ - public PaymentIntentUpdateParams.PaymentMethodOptions.Card.PaymentDetails - .MoneyServices.AccountFunding.Wallet.StagedPurchase.Merchant - build() { - return new PaymentIntentUpdateParams.PaymentMethodOptions.Card.PaymentDetails - .MoneyServices.AccountFunding.Wallet.StagedPurchase.Merchant( - this.extraParams, this.mcc, this.name); - } - - /** - * 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 - * PaymentIntentUpdateParams.PaymentMethodOptions.Card.PaymentDetails.MoneyServices.AccountFunding.Wallet.StagedPurchase.Merchant#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 - * PaymentIntentUpdateParams.PaymentMethodOptions.Card.PaymentDetails.MoneyServices.AccountFunding.Wallet.StagedPurchase.Merchant#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 merchant category code of the merchant. */ - public Builder setMcc(String mcc) { - this.mcc = mcc; - return this; - } - - /** The merchant category code of the merchant. */ - public Builder setMcc(EmptyParam mcc) { - this.mcc = mcc; - return this; - } - - /** The merchant's name. */ - public Builder setName(String name) { - this.name = name; - return this; - } - - /** The merchant's name. */ - public Builder setName(EmptyParam name) { - this.name = name; - 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 + * PaymentIntentUpdateParams.PaymentMethodOptions.Card.PaymentDetails.MoneyServices.AccountFunding#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); } + this.extraParams.putAll(map); + return this; } } @@ -32536,6 +32237,9 @@ public enum CaptureBy implements ApiRequestParams.EnumParam { } public enum CaptureMethod implements ApiRequestParams.EnumParam { + @SerializedName("automatic_delayed") + AUTOMATIC_DELAYED("automatic_delayed"), + @SerializedName("manual") MANUAL("manual"); @@ -33285,17 +32989,10 @@ public static class AccountFunding { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** Details for a wallet funding transaction. */ - @SerializedName("wallet") - Wallet wallet; - private AccountFunding( - DigitalAssetCategory digitalAssetCategory, - Map extraParams, - Wallet wallet) { + DigitalAssetCategory digitalAssetCategory, Map extraParams) { this.digitalAssetCategory = digitalAssetCategory; this.extraParams = extraParams; - this.wallet = wallet; } public static Builder builder() { @@ -33307,15 +33004,12 @@ public static class Builder { private Map extraParams; - private Wallet wallet; - /** Finalize and obtain parameter instance from this builder. */ public PaymentIntentUpdateParams.PaymentMethodOptions.CardPresent.PaymentDetails .MoneyServices.AccountFunding build() { return new PaymentIntentUpdateParams.PaymentMethodOptions.CardPresent.PaymentDetails - .MoneyServices.AccountFunding( - this.digitalAssetCategory, this.extraParams, this.wallet); + .MoneyServices.AccountFunding(this.digitalAssetCategory, this.extraParams); } /** @@ -33359,286 +33053,6 @@ public Builder putAllExtraParam(Map map) { this.extraParams.putAll(map); return this; } - - /** Details for a wallet funding transaction. */ - public Builder setWallet( - PaymentIntentUpdateParams.PaymentMethodOptions.CardPresent.PaymentDetails - .MoneyServices.AccountFunding.Wallet - wallet) { - this.wallet = wallet; - return this; - } - } - - @Getter - @EqualsAndHashCode(callSuper = false) - public static class Wallet { - /** - * 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; - - /** Details for a staged purchase. */ - @SerializedName("staged_purchase") - Object stagedPurchase; - - private Wallet(Map extraParams, Object stagedPurchase) { - this.extraParams = extraParams; - this.stagedPurchase = stagedPurchase; - } - - public static Builder builder() { - return new Builder(); - } - - public static class Builder { - private Map extraParams; - - private Object stagedPurchase; - - /** Finalize and obtain parameter instance from this builder. */ - public PaymentIntentUpdateParams.PaymentMethodOptions.CardPresent.PaymentDetails - .MoneyServices.AccountFunding.Wallet - build() { - return new PaymentIntentUpdateParams.PaymentMethodOptions.CardPresent - .PaymentDetails.MoneyServices.AccountFunding.Wallet( - this.extraParams, this.stagedPurchase); - } - - /** - * 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 - * PaymentIntentUpdateParams.PaymentMethodOptions.CardPresent.PaymentDetails.MoneyServices.AccountFunding.Wallet#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 - * PaymentIntentUpdateParams.PaymentMethodOptions.CardPresent.PaymentDetails.MoneyServices.AccountFunding.Wallet#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); - } - this.extraParams.putAll(map); - return this; - } - - /** Details for a staged purchase. */ - public Builder setStagedPurchase( - PaymentIntentUpdateParams.PaymentMethodOptions.CardPresent.PaymentDetails - .MoneyServices.AccountFunding.Wallet.StagedPurchase - stagedPurchase) { - this.stagedPurchase = stagedPurchase; - return this; - } - - /** Details for a staged purchase. */ - public Builder setStagedPurchase(EmptyParam stagedPurchase) { - this.stagedPurchase = stagedPurchase; - return this; - } - } - - @Getter - @EqualsAndHashCode(callSuper = false) - public static class StagedPurchase { - /** - * 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 merchant where the staged wallet purchase is made. */ - @SerializedName("merchant") - Merchant merchant; - - private StagedPurchase(Map extraParams, Merchant merchant) { - this.extraParams = extraParams; - this.merchant = merchant; - } - - public static Builder builder() { - return new Builder(); - } - - public static class Builder { - private Map extraParams; - - private Merchant merchant; - - /** Finalize and obtain parameter instance from this builder. */ - public PaymentIntentUpdateParams.PaymentMethodOptions.CardPresent.PaymentDetails - .MoneyServices.AccountFunding.Wallet.StagedPurchase - build() { - return new PaymentIntentUpdateParams.PaymentMethodOptions.CardPresent - .PaymentDetails.MoneyServices.AccountFunding.Wallet.StagedPurchase( - this.extraParams, this.merchant); - } - - /** - * 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 - * PaymentIntentUpdateParams.PaymentMethodOptions.CardPresent.PaymentDetails.MoneyServices.AccountFunding.Wallet.StagedPurchase#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 - * PaymentIntentUpdateParams.PaymentMethodOptions.CardPresent.PaymentDetails.MoneyServices.AccountFunding.Wallet.StagedPurchase#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 merchant where the staged wallet purchase is made. */ - public Builder setMerchant( - PaymentIntentUpdateParams.PaymentMethodOptions.CardPresent.PaymentDetails - .MoneyServices.AccountFunding.Wallet.StagedPurchase.Merchant - merchant) { - this.merchant = merchant; - return this; - } - } - - @Getter - @EqualsAndHashCode(callSuper = false) - public static class Merchant { - /** - * 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 merchant category code of the merchant. */ - @SerializedName("mcc") - Object mcc; - - /** The merchant's name. */ - @SerializedName("name") - Object name; - - private Merchant(Map extraParams, Object mcc, Object name) { - this.extraParams = extraParams; - this.mcc = mcc; - this.name = name; - } - - public static Builder builder() { - return new Builder(); - } - - public static class Builder { - private Map extraParams; - - private Object mcc; - - private Object name; - - /** Finalize and obtain parameter instance from this builder. */ - public PaymentIntentUpdateParams.PaymentMethodOptions.CardPresent.PaymentDetails - .MoneyServices.AccountFunding.Wallet.StagedPurchase.Merchant - build() { - return new PaymentIntentUpdateParams.PaymentMethodOptions.CardPresent - .PaymentDetails.MoneyServices.AccountFunding.Wallet.StagedPurchase - .Merchant(this.extraParams, this.mcc, this.name); - } - - /** - * 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 - * PaymentIntentUpdateParams.PaymentMethodOptions.CardPresent.PaymentDetails.MoneyServices.AccountFunding.Wallet.StagedPurchase.Merchant#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 - * PaymentIntentUpdateParams.PaymentMethodOptions.CardPresent.PaymentDetails.MoneyServices.AccountFunding.Wallet.StagedPurchase.Merchant#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 merchant category code of the merchant. */ - public Builder setMcc(String mcc) { - this.mcc = mcc; - return this; - } - - /** The merchant category code of the merchant. */ - public Builder setMcc(EmptyParam mcc) { - this.mcc = mcc; - return this; - } - - /** The merchant's name. */ - public Builder setName(String name) { - this.name = name; - return this; - } - - /** The merchant's name. */ - public Builder setName(EmptyParam name) { - this.name = name; - return this; - } - } - } - } } public enum DigitalAssetCategory implements ApiRequestParams.EnumParam { @@ -33776,6 +33190,9 @@ public enum CaptureBy implements ApiRequestParams.EnumParam { } public enum CaptureMethod implements ApiRequestParams.EnumParam { + @SerializedName("automatic_delayed") + AUTOMATIC_DELAYED("automatic_delayed"), + @SerializedName("manual") MANUAL("manual"), @@ -49293,9 +48710,35 @@ public static class Satispay { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - private Satispay(ApiRequestParams.EnumParam captureMethod, Map extraParams) { + /** + * Indicates that you intend to make future payments with this PaymentIntent's payment method. + * + *

If you provide a Customer with the PaymentIntent, you can use this parameter to attach the payment method to the + * Customer after the PaymentIntent is confirmed and the customer completes any required + * actions. If you don't provide a Customer, you can still attach the payment method to a + * Customer after the transaction completes. + * + *

If the payment method is {@code card_present} and isn't a digital wallet, Stripe creates + * and attaches a generated_card + * payment method representing the card to the Customer instead. + * + *

When processing card payments, Stripe uses {@code setup_future_usage} to help you comply + * with regional legislation and network rules, such as SCA. + */ + @SerializedName("setup_future_usage") + ApiRequestParams.EnumParam setupFutureUsage; + + private Satispay( + ApiRequestParams.EnumParam captureMethod, + Map extraParams, + ApiRequestParams.EnumParam setupFutureUsage) { this.captureMethod = captureMethod; this.extraParams = extraParams; + this.setupFutureUsage = setupFutureUsage; } public static Builder builder() { @@ -49307,10 +48750,12 @@ public static class Builder { private Map extraParams; + private ApiRequestParams.EnumParam setupFutureUsage; + /** Finalize and obtain parameter instance from this builder. */ public PaymentIntentUpdateParams.PaymentMethodOptions.Satispay build() { return new PaymentIntentUpdateParams.PaymentMethodOptions.Satispay( - this.captureMethod, this.extraParams); + this.captureMethod, this.extraParams, this.setupFutureUsage); } /** @@ -49371,6 +48816,58 @@ public Builder putAllExtraParam(Map map) { this.extraParams.putAll(map); return this; } + + /** + * Indicates that you intend to make future payments with this PaymentIntent's payment + * method. + * + *

If you provide a Customer with the PaymentIntent, you can use this parameter to attach the payment method to + * the Customer after the PaymentIntent is confirmed and the customer completes any required + * actions. If you don't provide a Customer, you can still attach the payment method to a + * Customer after the transaction completes. + * + *

If the payment method is {@code card_present} and isn't a digital wallet, Stripe + * creates and attaches a generated_card + * payment method representing the card to the Customer instead. + * + *

When processing card payments, Stripe uses {@code setup_future_usage} to help you + * comply with regional legislation and network rules, such as SCA. + */ + public Builder setSetupFutureUsage( + PaymentIntentUpdateParams.PaymentMethodOptions.Satispay.SetupFutureUsage + setupFutureUsage) { + this.setupFutureUsage = setupFutureUsage; + return this; + } + + /** + * Indicates that you intend to make future payments with this PaymentIntent's payment + * method. + * + *

If you provide a Customer with the PaymentIntent, you can use this parameter to attach the payment method to + * the Customer after the PaymentIntent is confirmed and the customer completes any required + * actions. If you don't provide a Customer, you can still attach the payment method to a + * Customer after the transaction completes. + * + *

If the payment method is {@code card_present} and isn't a digital wallet, Stripe + * creates and attaches a generated_card + * payment method representing the card to the Customer instead. + * + *

When processing card payments, Stripe uses {@code setup_future_usage} to help you + * comply with regional legislation and network rules, such as SCA. + */ + public Builder setSetupFutureUsage(EmptyParam setupFutureUsage) { + this.setupFutureUsage = setupFutureUsage; + return this; + } } public enum CaptureMethod implements ApiRequestParams.EnumParam { @@ -49384,6 +48881,24 @@ public enum CaptureMethod implements ApiRequestParams.EnumParam { this.value = value; } } + + public enum SetupFutureUsage implements ApiRequestParams.EnumParam { + @SerializedName("none") + NONE("none"), + + @SerializedName("off_session") + OFF_SESSION("off_session"), + + @SerializedName("on_session") + ON_SESSION("on_session"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + SetupFutureUsage(String value) { + this.value = value; + } + } } @Getter diff --git a/src/main/java/com/stripe/param/PaymentRecordReportPaymentAttemptParams.java b/src/main/java/com/stripe/param/PaymentRecordReportPaymentAttemptParams.java index 4684e841b48..c5838838cd6 100644 --- a/src/main/java/com/stripe/param/PaymentRecordReportPaymentAttemptParams.java +++ b/src/main/java/com/stripe/param/PaymentRecordReportPaymentAttemptParams.java @@ -969,6 +969,10 @@ public static class PaymentMethodDetails { @SerializedName("billing_details") BillingDetails billingDetails; + /** Information about the card payment method used to make this payment. */ + @SerializedName("card") + Card card; + /** Information about the custom (user-defined) payment method used to make this payment. */ @SerializedName("custom") Custom custom; @@ -996,11 +1000,13 @@ public static class PaymentMethodDetails { private PaymentMethodDetails( BillingDetails billingDetails, + Card card, Custom custom, Map extraParams, String paymentMethod, Type type) { this.billingDetails = billingDetails; + this.card = card; this.custom = custom; this.extraParams = extraParams; this.paymentMethod = paymentMethod; @@ -1014,6 +1020,8 @@ public static Builder builder() { public static class Builder { private BillingDetails billingDetails; + private Card card; + private Custom custom; private Map extraParams; @@ -1025,7 +1033,12 @@ public static class Builder { /** Finalize and obtain parameter instance from this builder. */ public PaymentRecordReportPaymentAttemptParams.PaymentMethodDetails build() { return new PaymentRecordReportPaymentAttemptParams.PaymentMethodDetails( - this.billingDetails, this.custom, this.extraParams, this.paymentMethod, this.type); + this.billingDetails, + this.card, + this.custom, + this.extraParams, + this.paymentMethod, + this.type); } /** The billing details associated with the method of payment. */ @@ -1036,6 +1049,13 @@ public Builder setBillingDetails( return this; } + /** Information about the card payment method used to make this payment. */ + public Builder setCard( + PaymentRecordReportPaymentAttemptParams.PaymentMethodDetails.Card card) { + this.card = card; + return this; + } + /** Information about the custom (user-defined) payment method used to make this payment. */ public Builder setCustom( PaymentRecordReportPaymentAttemptParams.PaymentMethodDetails.Custom custom) { @@ -1376,6 +1396,260 @@ public Builder setState(String state) { } } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Card { + /** Verification checks performed on the card. */ + @SerializedName("checks") + Checks checks; + + /** + * 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; + + private Card(Checks checks, Map extraParams) { + this.checks = checks; + this.extraParams = extraParams; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Checks checks; + + private Map extraParams; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentRecordReportPaymentAttemptParams.PaymentMethodDetails.Card build() { + return new PaymentRecordReportPaymentAttemptParams.PaymentMethodDetails.Card( + this.checks, this.extraParams); + } + + /** Verification checks performed on the card. */ + public Builder setChecks( + PaymentRecordReportPaymentAttemptParams.PaymentMethodDetails.Card.Checks checks) { + this.checks = checks; + 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 + * PaymentRecordReportPaymentAttemptParams.PaymentMethodDetails.Card#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 + * PaymentRecordReportPaymentAttemptParams.PaymentMethodDetails.Card#extraParams} for the + * field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Checks { + /** The result of the check on the cardholder's address line 1. */ + @SerializedName("address_line1_check") + AddressLine1Check addressLine1Check; + + /** The result of the check on the cardholder's postal code. */ + @SerializedName("address_postal_code_check") + AddressPostalCodeCheck addressPostalCodeCheck; + + /** The result of the check on the card's CVC. */ + @SerializedName("cvc_check") + CvcCheck cvcCheck; + + /** + * 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; + + private Checks( + AddressLine1Check addressLine1Check, + AddressPostalCodeCheck addressPostalCodeCheck, + CvcCheck cvcCheck, + Map extraParams) { + this.addressLine1Check = addressLine1Check; + this.addressPostalCodeCheck = addressPostalCodeCheck; + this.cvcCheck = cvcCheck; + this.extraParams = extraParams; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private AddressLine1Check addressLine1Check; + + private AddressPostalCodeCheck addressPostalCodeCheck; + + private CvcCheck cvcCheck; + + private Map extraParams; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentRecordReportPaymentAttemptParams.PaymentMethodDetails.Card.Checks build() { + return new PaymentRecordReportPaymentAttemptParams.PaymentMethodDetails.Card.Checks( + this.addressLine1Check, + this.addressPostalCodeCheck, + this.cvcCheck, + this.extraParams); + } + + /** The result of the check on the cardholder's address line 1. */ + public Builder setAddressLine1Check( + PaymentRecordReportPaymentAttemptParams.PaymentMethodDetails.Card.Checks + .AddressLine1Check + addressLine1Check) { + this.addressLine1Check = addressLine1Check; + return this; + } + + /** The result of the check on the cardholder's postal code. */ + public Builder setAddressPostalCodeCheck( + PaymentRecordReportPaymentAttemptParams.PaymentMethodDetails.Card.Checks + .AddressPostalCodeCheck + addressPostalCodeCheck) { + this.addressPostalCodeCheck = addressPostalCodeCheck; + return this; + } + + /** The result of the check on the card's CVC. */ + public Builder setCvcCheck( + PaymentRecordReportPaymentAttemptParams.PaymentMethodDetails.Card.Checks.CvcCheck + cvcCheck) { + this.cvcCheck = cvcCheck; + 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 + * PaymentRecordReportPaymentAttemptParams.PaymentMethodDetails.Card.Checks#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 + * PaymentRecordReportPaymentAttemptParams.PaymentMethodDetails.Card.Checks#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + } + + public enum AddressLine1Check implements ApiRequestParams.EnumParam { + @SerializedName("fail") + FAIL("fail"), + + @SerializedName("pass") + PASS("pass"), + + @SerializedName("unavailable") + UNAVAILABLE("unavailable"), + + @SerializedName("unchecked") + UNCHECKED("unchecked"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + AddressLine1Check(String value) { + this.value = value; + } + } + + public enum AddressPostalCodeCheck implements ApiRequestParams.EnumParam { + @SerializedName("fail") + FAIL("fail"), + + @SerializedName("pass") + PASS("pass"), + + @SerializedName("unavailable") + UNAVAILABLE("unavailable"), + + @SerializedName("unchecked") + UNCHECKED("unchecked"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + AddressPostalCodeCheck(String value) { + this.value = value; + } + } + + public enum CvcCheck implements ApiRequestParams.EnumParam { + @SerializedName("fail") + FAIL("fail"), + + @SerializedName("pass") + PASS("pass"), + + @SerializedName("unavailable") + UNAVAILABLE("unavailable"), + + @SerializedName("unchecked") + UNCHECKED("unchecked"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + CvcCheck(String value) { + this.value = value; + } + } + } + } + @Getter @EqualsAndHashCode(callSuper = false) public static class Custom { @@ -1468,6 +1742,9 @@ public Builder setType(String type) { } public enum Type implements ApiRequestParams.EnumParam { + @SerializedName("card") + CARD("card"), + @SerializedName("custom") CUSTOM("custom"); diff --git a/src/main/java/com/stripe/param/PaymentRecordReportPaymentParams.java b/src/main/java/com/stripe/param/PaymentRecordReportPaymentParams.java index 659d462a483..ebaceec36c5 100644 --- a/src/main/java/com/stripe/param/PaymentRecordReportPaymentParams.java +++ b/src/main/java/com/stripe/param/PaymentRecordReportPaymentParams.java @@ -1237,6 +1237,10 @@ public static class PaymentMethodDetails { @SerializedName("billing_details") BillingDetails billingDetails; + /** Information about the card payment method used to make this payment. */ + @SerializedName("card") + Card card; + /** Information about the custom (user-defined) payment method used to make this payment. */ @SerializedName("custom") Custom custom; @@ -1264,11 +1268,13 @@ public static class PaymentMethodDetails { private PaymentMethodDetails( BillingDetails billingDetails, + Card card, Custom custom, Map extraParams, String paymentMethod, Type type) { this.billingDetails = billingDetails; + this.card = card; this.custom = custom; this.extraParams = extraParams; this.paymentMethod = paymentMethod; @@ -1282,6 +1288,8 @@ public static Builder builder() { public static class Builder { private BillingDetails billingDetails; + private Card card; + private Custom custom; private Map extraParams; @@ -1293,7 +1301,12 @@ public static class Builder { /** Finalize and obtain parameter instance from this builder. */ public PaymentRecordReportPaymentParams.PaymentMethodDetails build() { return new PaymentRecordReportPaymentParams.PaymentMethodDetails( - this.billingDetails, this.custom, this.extraParams, this.paymentMethod, this.type); + this.billingDetails, + this.card, + this.custom, + this.extraParams, + this.paymentMethod, + this.type); } /** The billing details associated with the method of payment. */ @@ -1303,6 +1316,12 @@ public Builder setBillingDetails( return this; } + /** Information about the card payment method used to make this payment. */ + public Builder setCard(PaymentRecordReportPaymentParams.PaymentMethodDetails.Card card) { + this.card = card; + return this; + } + /** Information about the custom (user-defined) payment method used to make this payment. */ public Builder setCustom( PaymentRecordReportPaymentParams.PaymentMethodDetails.Custom custom) { @@ -1640,6 +1659,256 @@ public Builder setState(String state) { } } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Card { + /** Verification checks performed on the card. */ + @SerializedName("checks") + Checks checks; + + /** + * 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; + + private Card(Checks checks, Map extraParams) { + this.checks = checks; + this.extraParams = extraParams; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Checks checks; + + private Map extraParams; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentRecordReportPaymentParams.PaymentMethodDetails.Card build() { + return new PaymentRecordReportPaymentParams.PaymentMethodDetails.Card( + this.checks, this.extraParams); + } + + /** Verification checks performed on the card. */ + public Builder setChecks( + PaymentRecordReportPaymentParams.PaymentMethodDetails.Card.Checks checks) { + this.checks = checks; + 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 PaymentRecordReportPaymentParams.PaymentMethodDetails.Card#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 PaymentRecordReportPaymentParams.PaymentMethodDetails.Card#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Checks { + /** The result of the check on the cardholder's address line 1. */ + @SerializedName("address_line1_check") + AddressLine1Check addressLine1Check; + + /** The result of the check on the cardholder's postal code. */ + @SerializedName("address_postal_code_check") + AddressPostalCodeCheck addressPostalCodeCheck; + + /** The result of the check on the card's CVC. */ + @SerializedName("cvc_check") + CvcCheck cvcCheck; + + /** + * 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; + + private Checks( + AddressLine1Check addressLine1Check, + AddressPostalCodeCheck addressPostalCodeCheck, + CvcCheck cvcCheck, + Map extraParams) { + this.addressLine1Check = addressLine1Check; + this.addressPostalCodeCheck = addressPostalCodeCheck; + this.cvcCheck = cvcCheck; + this.extraParams = extraParams; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private AddressLine1Check addressLine1Check; + + private AddressPostalCodeCheck addressPostalCodeCheck; + + private CvcCheck cvcCheck; + + private Map extraParams; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentRecordReportPaymentParams.PaymentMethodDetails.Card.Checks build() { + return new PaymentRecordReportPaymentParams.PaymentMethodDetails.Card.Checks( + this.addressLine1Check, + this.addressPostalCodeCheck, + this.cvcCheck, + this.extraParams); + } + + /** The result of the check on the cardholder's address line 1. */ + public Builder setAddressLine1Check( + PaymentRecordReportPaymentParams.PaymentMethodDetails.Card.Checks.AddressLine1Check + addressLine1Check) { + this.addressLine1Check = addressLine1Check; + return this; + } + + /** The result of the check on the cardholder's postal code. */ + public Builder setAddressPostalCodeCheck( + PaymentRecordReportPaymentParams.PaymentMethodDetails.Card.Checks + .AddressPostalCodeCheck + addressPostalCodeCheck) { + this.addressPostalCodeCheck = addressPostalCodeCheck; + return this; + } + + /** The result of the check on the card's CVC. */ + public Builder setCvcCheck( + PaymentRecordReportPaymentParams.PaymentMethodDetails.Card.Checks.CvcCheck cvcCheck) { + this.cvcCheck = cvcCheck; + 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 + * PaymentRecordReportPaymentParams.PaymentMethodDetails.Card.Checks#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 + * PaymentRecordReportPaymentParams.PaymentMethodDetails.Card.Checks#extraParams} for the + * field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + } + + public enum AddressLine1Check implements ApiRequestParams.EnumParam { + @SerializedName("fail") + FAIL("fail"), + + @SerializedName("pass") + PASS("pass"), + + @SerializedName("unavailable") + UNAVAILABLE("unavailable"), + + @SerializedName("unchecked") + UNCHECKED("unchecked"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + AddressLine1Check(String value) { + this.value = value; + } + } + + public enum AddressPostalCodeCheck implements ApiRequestParams.EnumParam { + @SerializedName("fail") + FAIL("fail"), + + @SerializedName("pass") + PASS("pass"), + + @SerializedName("unavailable") + UNAVAILABLE("unavailable"), + + @SerializedName("unchecked") + UNCHECKED("unchecked"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + AddressPostalCodeCheck(String value) { + this.value = value; + } + } + + public enum CvcCheck implements ApiRequestParams.EnumParam { + @SerializedName("fail") + FAIL("fail"), + + @SerializedName("pass") + PASS("pass"), + + @SerializedName("unavailable") + UNAVAILABLE("unavailable"), + + @SerializedName("unchecked") + UNCHECKED("unchecked"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + CvcCheck(String value) { + this.value = value; + } + } + } + } + @Getter @EqualsAndHashCode(callSuper = false) public static class Custom { @@ -1730,6 +1999,9 @@ public Builder setType(String type) { } public enum Type implements ApiRequestParams.EnumParam { + @SerializedName("card") + CARD("card"), + @SerializedName("custom") CUSTOM("custom"); diff --git a/src/main/java/com/stripe/param/radar/CustomerEvaluationRetrieveParams.java b/src/main/java/com/stripe/param/radar/CustomerEvaluationRetrieveParams.java new file mode 100644 index 00000000000..3d37ec8afa3 --- /dev/null +++ b/src/main/java/com/stripe/param/radar/CustomerEvaluationRetrieveParams.java @@ -0,0 +1,100 @@ +// File generated from our OpenAPI spec +package com.stripe.param.radar; + +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.EqualsAndHashCode; +import lombok.Getter; + +@Getter +@EqualsAndHashCode(callSuper = false) +public class CustomerEvaluationRetrieveParams 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; + + private CustomerEvaluationRetrieveParams(List expand, Map extraParams) { + this.expand = expand; + this.extraParams = extraParams; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private List expand; + + private Map extraParams; + + /** Finalize and obtain parameter instance from this builder. */ + public CustomerEvaluationRetrieveParams build() { + return new CustomerEvaluationRetrieveParams(this.expand, this.extraParams); + } + + /** + * 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 + * CustomerEvaluationRetrieveParams#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 + * CustomerEvaluationRetrieveParams#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 + * CustomerEvaluationRetrieveParams#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 CustomerEvaluationRetrieveParams#extraParams} for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + } +} diff --git a/src/main/java/com/stripe/service/radar/CustomerEvaluationService.java b/src/main/java/com/stripe/service/radar/CustomerEvaluationService.java index 873a679bd91..8bb968a0f94 100644 --- a/src/main/java/com/stripe/service/radar/CustomerEvaluationService.java +++ b/src/main/java/com/stripe/service/radar/CustomerEvaluationService.java @@ -11,6 +11,7 @@ import com.stripe.net.RequestOptions; import com.stripe.net.StripeResponseGetter; import com.stripe.param.radar.CustomerEvaluationCreateParams; +import com.stripe.param.radar.CustomerEvaluationRetrieveParams; import com.stripe.param.radar.CustomerEvaluationUpdateParams; public final class CustomerEvaluationService extends ApiService { @@ -18,6 +19,37 @@ public CustomerEvaluationService(StripeResponseGetter responseGetter) { super(responseGetter); } + /** Retrieves an {@code CustomerEvaluation} object. */ + public CustomerEvaluation retrieve( + String customerEvaluation, CustomerEvaluationRetrieveParams params) throws StripeException { + return retrieve(customerEvaluation, params, (RequestOptions) null); + } + /** Retrieves an {@code CustomerEvaluation} object. */ + public CustomerEvaluation retrieve(String customerEvaluation, RequestOptions options) + throws StripeException { + return retrieve(customerEvaluation, (CustomerEvaluationRetrieveParams) null, options); + } + /** Retrieves an {@code CustomerEvaluation} object. */ + public CustomerEvaluation retrieve(String customerEvaluation) throws StripeException { + return retrieve( + customerEvaluation, (CustomerEvaluationRetrieveParams) null, (RequestOptions) null); + } + /** Retrieves an {@code CustomerEvaluation} object. */ + public CustomerEvaluation retrieve( + String customerEvaluation, CustomerEvaluationRetrieveParams params, RequestOptions options) + throws StripeException { + String path = + String.format( + "/v1/radar/customer_evaluations/%s", ApiResource.urlEncodeId(customerEvaluation)); + ApiRequest request = + new ApiRequest( + BaseAddress.API, + ApiResource.RequestMethod.GET, + path, + ApiRequestParams.paramsToMap(params), + options); + return this.request(request, CustomerEvaluation.class); + } /** Creates a new {@code CustomerEvaluation} object. */ public CustomerEvaluation create(CustomerEvaluationCreateParams params) throws StripeException { return create(params, (RequestOptions) null); From 8c634271aa9ba1e51a85624f6d2de549135d58e1 Mon Sep 17 00:00:00 2001 From: Stripe OpenAPI <105521251+stripe-openapi[bot]@users.noreply.github.com> Date: Fri, 12 Jun 2026 03:41:34 +0000 Subject: [PATCH 02/14] Update generated code for v2296 and 8a1c7d2f1fe275b292b3211f80a7833af35f7748 --- CODEGEN_VERSION | 2 +- OPENAPI_VERSION | 2 +- .../java/com/stripe/model/PaymentIntent.java | 138 ++++++++++++++---- src/main/java/com/stripe/model/Product.java | 54 +++++++ .../java/com/stripe/model/SetupAttempt.java | 12 -- .../com/stripe/model/checkout/Session.java | 12 -- .../param/PaymentIntentConfirmParams.java | 108 +------------- .../param/PaymentIntentCreateParams.java | 108 +------------- ...mentIntentSimulateCryptoDepositParams.java | 14 +- .../param/PaymentIntentUpdateParams.java | 108 +------------- 10 files changed, 201 insertions(+), 357 deletions(-) diff --git a/CODEGEN_VERSION b/CODEGEN_VERSION index 86cb90fe5ec..3ea82edb725 100644 --- a/CODEGEN_VERSION +++ b/CODEGEN_VERSION @@ -1 +1 @@ -6f145c2614d8c9cc87bf358f4f93c44e3bd47fa4 \ No newline at end of file +8a1c7d2f1fe275b292b3211f80a7833af35f7748 \ No newline at end of file diff --git a/OPENAPI_VERSION b/OPENAPI_VERSION index 7b1ccaa0490..87c94cdfc18 100644 --- a/OPENAPI_VERSION +++ b/OPENAPI_VERSION @@ -1 +1 @@ -v2295 \ No newline at end of file +v2296 \ No newline at end of file diff --git a/src/main/java/com/stripe/model/PaymentIntent.java b/src/main/java/com/stripe/model/PaymentIntent.java index 10d03c0f09b..a68f2d8b9da 100644 --- a/src/main/java/com/stripe/model/PaymentIntent.java +++ b/src/main/java/com/stripe/model/PaymentIntent.java @@ -2644,6 +2644,12 @@ public static class DepositAddresses extends StripeObject { @SerializedName("base") Base base; + @SerializedName("ethereum") + Ethereum ethereum; + + @SerializedName("polygon") + Polygon polygon; + @SerializedName("solana") Solana solana; @@ -2687,9 +2693,105 @@ public static class SupportedToken extends StripeObject { String tokenContractAddress; /** - * The supported token currency. Supported token currencies include: {@code usdc}. + * The supported token currency. + * + *

One of {@code usdc}, {@code usdg}, or {@code usdp}. + */ + @SerializedName("token_currency") + String tokenCurrency; + } + } + + /** + * For more details about Ethereum, please refer to the API Reference. + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Ethereum extends StripeObject { + /** Address of the deposit address. */ + @SerializedName("address") + String address; + + /** The wallet address that should receive refunds for deposits on this network. */ + @SerializedName("refund_address") + String refundAddress; + + /** The token currencies supported on this network. */ + @SerializedName("supported_tokens") + List< + PaymentIntent.NextAction.CryptoDisplayDetails.DepositAddresses.Ethereum + .SupportedToken> + supportedTokens; + + /** + * For more details about SupportedToken, please refer to the API Reference. + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class SupportedToken extends StripeObject { + /** + * The on-chain contract address for the supported token currency on this specific + * network. + */ + @SerializedName("token_contract_address") + String tokenContractAddress; + + /** + * The supported token currency. + * + *

One of {@code usdc}, {@code usdg}, or {@code usdp}. + */ + @SerializedName("token_currency") + String tokenCurrency; + } + } + + /** + * For more details about Polygon, please refer to the API Reference. + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Polygon extends StripeObject { + /** Address of the deposit address. */ + @SerializedName("address") + String address; + + /** The wallet address that should receive refunds for deposits on this network. */ + @SerializedName("refund_address") + String refundAddress; + + /** The token currencies supported on this network. */ + @SerializedName("supported_tokens") + List< + PaymentIntent.NextAction.CryptoDisplayDetails.DepositAddresses.Polygon + .SupportedToken> + supportedTokens; + + /** + * For more details about SupportedToken, please refer to the API Reference. + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class SupportedToken extends StripeObject { + /** + * The on-chain contract address for the supported token currency on this specific + * network. + */ + @SerializedName("token_contract_address") + String tokenContractAddress; + + /** + * The supported token currency. * - *

Equal to {@code usdc}. + *

One of {@code usdc}, {@code usdg}, or {@code usdp}. */ @SerializedName("token_currency") String tokenCurrency; @@ -2733,9 +2835,9 @@ public static class SupportedToken extends StripeObject { String tokenContractAddress; /** - * The supported token currency. Supported token currencies include: {@code usdc}. + * The supported token currency. * - *

Equal to {@code usdc}. + *

One of {@code usdc}, {@code usdg}, or {@code usdp}. */ @SerializedName("token_currency") String tokenCurrency; @@ -2779,9 +2881,9 @@ public static class SupportedToken extends StripeObject { String tokenContractAddress; /** - * The supported token currency. Supported token currencies include: {@code usdc}. + * The supported token currency. * - *

Equal to {@code usdc}. + *

One of {@code usdc}, {@code usdg}, or {@code usdp}. */ @SerializedName("token_currency") String tokenCurrency; @@ -8205,30 +8307,6 @@ public static class Satispay extends StripeObject { */ @SerializedName("capture_method") String captureMethod; - - /** - * Indicates that you intend to make future payments with this PaymentIntent's payment method. - * - *

If you provide a Customer with the PaymentIntent, you can use this parameter to attach the payment method to the - * Customer after the PaymentIntent is confirmed and the customer completes any required - * actions. If you don't provide a Customer, you can still attach the payment method to a - * Customer after the transaction completes. - * - *

If the payment method is {@code card_present} and isn't a digital wallet, Stripe creates - * and attaches a generated_card - * payment method representing the card to the Customer instead. - * - *

When processing card payments, Stripe uses {@code setup_future_usage} to help you comply - * with regional legislation and network rules, such as SCA. - * - *

One of {@code none}, {@code off_session}, or {@code on_session}. - */ - @SerializedName("setup_future_usage") - String setupFutureUsage; } /** diff --git a/src/main/java/com/stripe/model/Product.java b/src/main/java/com/stripe/model/Product.java index 5e3caa077d1..1cf6339c8f0 100644 --- a/src/main/java/com/stripe/model/Product.java +++ b/src/main/java/com/stripe/model/Product.java @@ -87,6 +87,9 @@ public class Product extends ApiResource implements HasId, MetadataStorepricing tables. @@ -538,6 +541,56 @@ public static class Identifiers extends StripeObject { String upc; } + /** + * For more details about ManagedPayments, please refer to the API Reference. + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class ManagedPayments extends StripeObject { + /** + * Whether this product is eligible for use with Managed Payments. Possible values are {@code + * eligible} and {@code ineligible}. + * + *

One of {@code eligible}, or {@code ineligible}. + */ + @SerializedName("eligibility") + String eligibility; + + /** + * The reasons this product is ineligible for use with Managed Payments, if any. This field + * isn't present if the product is eligible. + */ + @SerializedName("ineligibility_reasons") + List ineligibilityReasons; + + /** + * For more details about IneligibilityReason, please refer to the API Reference. + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class IneligibilityReason extends StripeObject { + /** + * A code identifying the reason this product can't be used with Managed Payments. Additional + * values might be added as Managed Payments evolves its eligibility criteria. + * + *

One of {@code ineligible_tax_code}, or {@code no_tax_code_specified}. + */ + @SerializedName("code") + String code; + + /** + * A human-readable description of the reason this product can't be used with Managed + * Payments. + */ + @SerializedName("message") + String message; + } + } + /** * For more details about MarketingFeature, please refer to the API Reference. @@ -595,6 +648,7 @@ public void setResponseGetter(StripeResponseGetter responseGetter) { super.setResponseGetter(responseGetter); trySetResponseGetter(defaultPrice, responseGetter); trySetResponseGetter(identifiers, responseGetter); + trySetResponseGetter(managedPayments, responseGetter); trySetResponseGetter(packageDimensions, responseGetter); trySetResponseGetter(taxCode, responseGetter); trySetResponseGetter(taxDetails, responseGetter); diff --git a/src/main/java/com/stripe/model/SetupAttempt.java b/src/main/java/com/stripe/model/SetupAttempt.java index 5b698d248af..81f0ad1428b 100644 --- a/src/main/java/com/stripe/model/SetupAttempt.java +++ b/src/main/java/com/stripe/model/SetupAttempt.java @@ -339,9 +339,6 @@ public static class PaymentMethodDetails extends StripeObject { @SerializedName("revolut_pay") RevolutPay revolutPay; - @SerializedName("satispay") - Satispay satispay; - @SerializedName("sepa_debit") SepaDebit sepaDebit; @@ -1040,15 +1037,6 @@ public static class Pix extends StripeObject {} @EqualsAndHashCode(callSuper = false) public static class RevolutPay extends StripeObject {} - /** - * For more details about Satispay, please refer to the API Reference. - */ - @Getter - @Setter - @EqualsAndHashCode(callSuper = false) - public static class Satispay extends StripeObject {} - /** * For more details about SepaDebit, please refer to the API Reference. diff --git a/src/main/java/com/stripe/model/checkout/Session.java b/src/main/java/com/stripe/model/checkout/Session.java index a0b5d26c531..9a2faadb211 100644 --- a/src/main/java/com/stripe/model/checkout/Session.java +++ b/src/main/java/com/stripe/model/checkout/Session.java @@ -1758,18 +1758,6 @@ public static class Boleto extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class Card extends StripeObject { - /** - * The brand of the card, accounting for customer's brand choice on dual-branded cards. - * - *

One of {@code accel}, {@code amex}, {@code carnet}, {@code cartes_bancaires}, {@code - * conecs}, {@code diners}, {@code discover}, {@code eftpos_au}, {@code elo}, {@code - * girocard}, {@code interac}, {@code jaywan}, {@code jcb}, {@code link}, {@code maestro}, - * {@code mastercard}, {@code nyce}, {@code pulse}, {@code rupay}, {@code star}, {@code - * unionpay}, {@code unknown}, or {@code visa}. - */ - @SerializedName("brand") - String brand; - /** * Two-letter ISO code representing the country of the card. You could use this attribute to * get a sense of the international breakdown of cards you've collected. diff --git a/src/main/java/com/stripe/param/PaymentIntentConfirmParams.java b/src/main/java/com/stripe/param/PaymentIntentConfirmParams.java index 7ce5c5bf337..6acf3a251dc 100644 --- a/src/main/java/com/stripe/param/PaymentIntentConfirmParams.java +++ b/src/main/java/com/stripe/param/PaymentIntentConfirmParams.java @@ -31933,6 +31933,12 @@ public enum Network implements ApiRequestParams.EnumParam { @SerializedName("base") BASE("base"), + @SerializedName("ethereum") + ETHEREUM("ethereum"), + + @SerializedName("polygon") + POLYGON("polygon"), + @SerializedName("solana") SOLANA("solana"), @@ -46114,35 +46120,9 @@ public static class Satispay { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** - * Indicates that you intend to make future payments with this PaymentIntent's payment method. - * - *

If you provide a Customer with the PaymentIntent, you can use this parameter to attach the payment method to the - * Customer after the PaymentIntent is confirmed and the customer completes any required - * actions. If you don't provide a Customer, you can still attach the payment method to a - * Customer after the transaction completes. - * - *

If the payment method is {@code card_present} and isn't a digital wallet, Stripe creates - * and attaches a generated_card - * payment method representing the card to the Customer instead. - * - *

When processing card payments, Stripe uses {@code setup_future_usage} to help you comply - * with regional legislation and network rules, such as SCA. - */ - @SerializedName("setup_future_usage") - ApiRequestParams.EnumParam setupFutureUsage; - - private Satispay( - ApiRequestParams.EnumParam captureMethod, - Map extraParams, - ApiRequestParams.EnumParam setupFutureUsage) { + private Satispay(ApiRequestParams.EnumParam captureMethod, Map extraParams) { this.captureMethod = captureMethod; this.extraParams = extraParams; - this.setupFutureUsage = setupFutureUsage; } public static Builder builder() { @@ -46154,12 +46134,10 @@ public static class Builder { private Map extraParams; - private ApiRequestParams.EnumParam setupFutureUsage; - /** Finalize and obtain parameter instance from this builder. */ public PaymentIntentConfirmParams.PaymentMethodOptions.Satispay build() { return new PaymentIntentConfirmParams.PaymentMethodOptions.Satispay( - this.captureMethod, this.extraParams, this.setupFutureUsage); + this.captureMethod, this.extraParams); } /** @@ -46220,58 +46198,6 @@ public Builder putAllExtraParam(Map map) { this.extraParams.putAll(map); return this; } - - /** - * Indicates that you intend to make future payments with this PaymentIntent's payment - * method. - * - *

If you provide a Customer with the PaymentIntent, you can use this parameter to attach the payment method to - * the Customer after the PaymentIntent is confirmed and the customer completes any required - * actions. If you don't provide a Customer, you can still attach the payment method to a - * Customer after the transaction completes. - * - *

If the payment method is {@code card_present} and isn't a digital wallet, Stripe - * creates and attaches a generated_card - * payment method representing the card to the Customer instead. - * - *

When processing card payments, Stripe uses {@code setup_future_usage} to help you - * comply with regional legislation and network rules, such as SCA. - */ - public Builder setSetupFutureUsage( - PaymentIntentConfirmParams.PaymentMethodOptions.Satispay.SetupFutureUsage - setupFutureUsage) { - this.setupFutureUsage = setupFutureUsage; - return this; - } - - /** - * Indicates that you intend to make future payments with this PaymentIntent's payment - * method. - * - *

If you provide a Customer with the PaymentIntent, you can use this parameter to attach the payment method to - * the Customer after the PaymentIntent is confirmed and the customer completes any required - * actions. If you don't provide a Customer, you can still attach the payment method to a - * Customer after the transaction completes. - * - *

If the payment method is {@code card_present} and isn't a digital wallet, Stripe - * creates and attaches a generated_card - * payment method representing the card to the Customer instead. - * - *

When processing card payments, Stripe uses {@code setup_future_usage} to help you - * comply with regional legislation and network rules, such as SCA. - */ - public Builder setSetupFutureUsage(EmptyParam setupFutureUsage) { - this.setupFutureUsage = setupFutureUsage; - return this; - } } public enum CaptureMethod implements ApiRequestParams.EnumParam { @@ -46285,24 +46211,6 @@ public enum CaptureMethod implements ApiRequestParams.EnumParam { this.value = value; } } - - public enum SetupFutureUsage implements ApiRequestParams.EnumParam { - @SerializedName("none") - NONE("none"), - - @SerializedName("off_session") - OFF_SESSION("off_session"), - - @SerializedName("on_session") - ON_SESSION("on_session"); - - @Getter(onMethod_ = {@Override}) - private final String value; - - SetupFutureUsage(String value) { - this.value = value; - } - } } @Getter diff --git a/src/main/java/com/stripe/param/PaymentIntentCreateParams.java b/src/main/java/com/stripe/param/PaymentIntentCreateParams.java index a92b77bea22..7a8cc3269ea 100644 --- a/src/main/java/com/stripe/param/PaymentIntentCreateParams.java +++ b/src/main/java/com/stripe/param/PaymentIntentCreateParams.java @@ -32404,6 +32404,12 @@ public enum Network implements ApiRequestParams.EnumParam { @SerializedName("base") BASE("base"), + @SerializedName("ethereum") + ETHEREUM("ethereum"), + + @SerializedName("polygon") + POLYGON("polygon"), + @SerializedName("solana") SOLANA("solana"), @@ -46573,35 +46579,9 @@ public static class Satispay { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** - * Indicates that you intend to make future payments with this PaymentIntent's payment method. - * - *

If you provide a Customer with the PaymentIntent, you can use this parameter to attach the payment method to the - * Customer after the PaymentIntent is confirmed and the customer completes any required - * actions. If you don't provide a Customer, you can still attach the payment method to a - * Customer after the transaction completes. - * - *

If the payment method is {@code card_present} and isn't a digital wallet, Stripe creates - * and attaches a generated_card - * payment method representing the card to the Customer instead. - * - *

When processing card payments, Stripe uses {@code setup_future_usage} to help you comply - * with regional legislation and network rules, such as SCA. - */ - @SerializedName("setup_future_usage") - ApiRequestParams.EnumParam setupFutureUsage; - - private Satispay( - ApiRequestParams.EnumParam captureMethod, - Map extraParams, - ApiRequestParams.EnumParam setupFutureUsage) { + private Satispay(ApiRequestParams.EnumParam captureMethod, Map extraParams) { this.captureMethod = captureMethod; this.extraParams = extraParams; - this.setupFutureUsage = setupFutureUsage; } public static Builder builder() { @@ -46613,12 +46593,10 @@ public static class Builder { private Map extraParams; - private ApiRequestParams.EnumParam setupFutureUsage; - /** Finalize and obtain parameter instance from this builder. */ public PaymentIntentCreateParams.PaymentMethodOptions.Satispay build() { return new PaymentIntentCreateParams.PaymentMethodOptions.Satispay( - this.captureMethod, this.extraParams, this.setupFutureUsage); + this.captureMethod, this.extraParams); } /** @@ -46679,58 +46657,6 @@ public Builder putAllExtraParam(Map map) { this.extraParams.putAll(map); return this; } - - /** - * Indicates that you intend to make future payments with this PaymentIntent's payment - * method. - * - *

If you provide a Customer with the PaymentIntent, you can use this parameter to attach the payment method to - * the Customer after the PaymentIntent is confirmed and the customer completes any required - * actions. If you don't provide a Customer, you can still attach the payment method to a - * Customer after the transaction completes. - * - *

If the payment method is {@code card_present} and isn't a digital wallet, Stripe - * creates and attaches a generated_card - * payment method representing the card to the Customer instead. - * - *

When processing card payments, Stripe uses {@code setup_future_usage} to help you - * comply with regional legislation and network rules, such as SCA. - */ - public Builder setSetupFutureUsage( - PaymentIntentCreateParams.PaymentMethodOptions.Satispay.SetupFutureUsage - setupFutureUsage) { - this.setupFutureUsage = setupFutureUsage; - return this; - } - - /** - * Indicates that you intend to make future payments with this PaymentIntent's payment - * method. - * - *

If you provide a Customer with the PaymentIntent, you can use this parameter to attach the payment method to - * the Customer after the PaymentIntent is confirmed and the customer completes any required - * actions. If you don't provide a Customer, you can still attach the payment method to a - * Customer after the transaction completes. - * - *

If the payment method is {@code card_present} and isn't a digital wallet, Stripe - * creates and attaches a generated_card - * payment method representing the card to the Customer instead. - * - *

When processing card payments, Stripe uses {@code setup_future_usage} to help you - * comply with regional legislation and network rules, such as SCA. - */ - public Builder setSetupFutureUsage(EmptyParam setupFutureUsage) { - this.setupFutureUsage = setupFutureUsage; - return this; - } } public enum CaptureMethod implements ApiRequestParams.EnumParam { @@ -46744,24 +46670,6 @@ public enum CaptureMethod implements ApiRequestParams.EnumParam { this.value = value; } } - - public enum SetupFutureUsage implements ApiRequestParams.EnumParam { - @SerializedName("none") - NONE("none"), - - @SerializedName("off_session") - OFF_SESSION("off_session"), - - @SerializedName("on_session") - ON_SESSION("on_session"); - - @Getter(onMethod_ = {@Override}) - private final String value; - - SetupFutureUsage(String value) { - this.value = value; - } - } } @Getter diff --git a/src/main/java/com/stripe/param/PaymentIntentSimulateCryptoDepositParams.java b/src/main/java/com/stripe/param/PaymentIntentSimulateCryptoDepositParams.java index 3b044e82613..09ce6fddee6 100644 --- a/src/main/java/com/stripe/param/PaymentIntentSimulateCryptoDepositParams.java +++ b/src/main/java/com/stripe/param/PaymentIntentSimulateCryptoDepositParams.java @@ -179,6 +179,12 @@ public enum Network implements ApiRequestParams.EnumParam { @SerializedName("base") BASE("base"), + @SerializedName("ethereum") + ETHEREUM("ethereum"), + + @SerializedName("polygon") + POLYGON("polygon"), + @SerializedName("solana") SOLANA("solana"), @@ -195,7 +201,13 @@ public enum Network implements ApiRequestParams.EnumParam { public enum TokenCurrency implements ApiRequestParams.EnumParam { @SerializedName("usdc") - USDC("usdc"); + USDC("usdc"), + + @SerializedName("usdg") + USDG("usdg"), + + @SerializedName("usdp") + USDP("usdp"); @Getter(onMethod_ = {@Override}) private final String value; diff --git a/src/main/java/com/stripe/param/PaymentIntentUpdateParams.java b/src/main/java/com/stripe/param/PaymentIntentUpdateParams.java index 5a3338dd054..22dfd8a2f67 100644 --- a/src/main/java/com/stripe/param/PaymentIntentUpdateParams.java +++ b/src/main/java/com/stripe/param/PaymentIntentUpdateParams.java @@ -33748,6 +33748,12 @@ public enum Network implements ApiRequestParams.EnumParam { @SerializedName("base") BASE("base"), + @SerializedName("ethereum") + ETHEREUM("ethereum"), + + @SerializedName("polygon") + POLYGON("polygon"), + @SerializedName("solana") SOLANA("solana"), @@ -48710,35 +48716,9 @@ public static class Satispay { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** - * Indicates that you intend to make future payments with this PaymentIntent's payment method. - * - *

If you provide a Customer with the PaymentIntent, you can use this parameter to attach the payment method to the - * Customer after the PaymentIntent is confirmed and the customer completes any required - * actions. If you don't provide a Customer, you can still attach the payment method to a - * Customer after the transaction completes. - * - *

If the payment method is {@code card_present} and isn't a digital wallet, Stripe creates - * and attaches a generated_card - * payment method representing the card to the Customer instead. - * - *

When processing card payments, Stripe uses {@code setup_future_usage} to help you comply - * with regional legislation and network rules, such as SCA. - */ - @SerializedName("setup_future_usage") - ApiRequestParams.EnumParam setupFutureUsage; - - private Satispay( - ApiRequestParams.EnumParam captureMethod, - Map extraParams, - ApiRequestParams.EnumParam setupFutureUsage) { + private Satispay(ApiRequestParams.EnumParam captureMethod, Map extraParams) { this.captureMethod = captureMethod; this.extraParams = extraParams; - this.setupFutureUsage = setupFutureUsage; } public static Builder builder() { @@ -48750,12 +48730,10 @@ public static class Builder { private Map extraParams; - private ApiRequestParams.EnumParam setupFutureUsage; - /** Finalize and obtain parameter instance from this builder. */ public PaymentIntentUpdateParams.PaymentMethodOptions.Satispay build() { return new PaymentIntentUpdateParams.PaymentMethodOptions.Satispay( - this.captureMethod, this.extraParams, this.setupFutureUsage); + this.captureMethod, this.extraParams); } /** @@ -48816,58 +48794,6 @@ public Builder putAllExtraParam(Map map) { this.extraParams.putAll(map); return this; } - - /** - * Indicates that you intend to make future payments with this PaymentIntent's payment - * method. - * - *

If you provide a Customer with the PaymentIntent, you can use this parameter to attach the payment method to - * the Customer after the PaymentIntent is confirmed and the customer completes any required - * actions. If you don't provide a Customer, you can still attach the payment method to a - * Customer after the transaction completes. - * - *

If the payment method is {@code card_present} and isn't a digital wallet, Stripe - * creates and attaches a generated_card - * payment method representing the card to the Customer instead. - * - *

When processing card payments, Stripe uses {@code setup_future_usage} to help you - * comply with regional legislation and network rules, such as SCA. - */ - public Builder setSetupFutureUsage( - PaymentIntentUpdateParams.PaymentMethodOptions.Satispay.SetupFutureUsage - setupFutureUsage) { - this.setupFutureUsage = setupFutureUsage; - return this; - } - - /** - * Indicates that you intend to make future payments with this PaymentIntent's payment - * method. - * - *

If you provide a Customer with the PaymentIntent, you can use this parameter to attach the payment method to - * the Customer after the PaymentIntent is confirmed and the customer completes any required - * actions. If you don't provide a Customer, you can still attach the payment method to a - * Customer after the transaction completes. - * - *

If the payment method is {@code card_present} and isn't a digital wallet, Stripe - * creates and attaches a generated_card - * payment method representing the card to the Customer instead. - * - *

When processing card payments, Stripe uses {@code setup_future_usage} to help you - * comply with regional legislation and network rules, such as SCA. - */ - public Builder setSetupFutureUsage(EmptyParam setupFutureUsage) { - this.setupFutureUsage = setupFutureUsage; - return this; - } } public enum CaptureMethod implements ApiRequestParams.EnumParam { @@ -48881,24 +48807,6 @@ public enum CaptureMethod implements ApiRequestParams.EnumParam { this.value = value; } } - - public enum SetupFutureUsage implements ApiRequestParams.EnumParam { - @SerializedName("none") - NONE("none"), - - @SerializedName("off_session") - OFF_SESSION("off_session"), - - @SerializedName("on_session") - ON_SESSION("on_session"); - - @Getter(onMethod_ = {@Override}) - private final String value; - - SetupFutureUsage(String value) { - this.value = value; - } - } } @Getter From 8015506757baeb2a6538698e28bdf68db67d08d2 Mon Sep 17 00:00:00 2001 From: Stripe OpenAPI <105521251+stripe-openapi[bot]@users.noreply.github.com> Date: Fri, 12 Jun 2026 08:58:57 +0000 Subject: [PATCH 03/14] Update generated code for v2297 and 3111dcf5bcfa362f9fc8da776e0892504ed566d3 --- CODEGEN_VERSION | 2 +- OPENAPI_VERSION | 2 +- .../java/com/stripe/model/PaymentIntent.java | 20 +- .../param/PaymentIntentConfirmParams.java | 137 +++++++------ .../param/PaymentIntentCreateParams.java | 137 +++++++------ .../param/PaymentIntentUpdateParams.java | 182 ++++++++++-------- 6 files changed, 277 insertions(+), 203 deletions(-) diff --git a/CODEGEN_VERSION b/CODEGEN_VERSION index 3ea82edb725..4cdf42b0f9b 100644 --- a/CODEGEN_VERSION +++ b/CODEGEN_VERSION @@ -1 +1 @@ -8a1c7d2f1fe275b292b3211f80a7833af35f7748 \ No newline at end of file +3111dcf5bcfa362f9fc8da776e0892504ed566d3 \ No newline at end of file diff --git a/OPENAPI_VERSION b/OPENAPI_VERSION index 87c94cdfc18..ca72a77cb9a 100644 --- a/OPENAPI_VERSION +++ b/OPENAPI_VERSION @@ -1 +1 @@ -v2296 \ No newline at end of file +v2297 \ No newline at end of file diff --git a/src/main/java/com/stripe/model/PaymentIntent.java b/src/main/java/com/stripe/model/PaymentIntent.java index a68f2d8b9da..263f7b4f6eb 100644 --- a/src/main/java/com/stripe/model/PaymentIntent.java +++ b/src/main/java/com/stripe/model/PaymentIntent.java @@ -5258,14 +5258,18 @@ public static class SenderDetails extends StripeObject { @SerializedName("email") String email; - /** Full name. */ - @SerializedName("name") - String name; + /** Given name (first name). */ + @SerializedName("given_name") + String givenName; /** Phone number. */ @SerializedName("phone") String phone; + /** Surname (last name). */ + @SerializedName("surname") + String surname; + /** * For more details about Address, please refer to the API Reference. @@ -5344,14 +5348,18 @@ public static class BeneficiaryDetails extends StripeObject { @SerializedName("email") String email; - /** Full name. */ - @SerializedName("name") - String name; + /** Given name (first name). */ + @SerializedName("given_name") + String givenName; /** Phone number. */ @SerializedName("phone") String phone; + /** Surname (last name). */ + @SerializedName("surname") + String surname; + /** * For more details about Address, please refer to the API Reference. diff --git a/src/main/java/com/stripe/param/PaymentIntentConfirmParams.java b/src/main/java/com/stripe/param/PaymentIntentConfirmParams.java index 6acf3a251dc..a9de7814161 100644 --- a/src/main/java/com/stripe/param/PaymentIntentConfirmParams.java +++ b/src/main/java/com/stripe/param/PaymentIntentConfirmParams.java @@ -14824,10 +14824,6 @@ public static class MoneyServices { @SerializedName("account_funding") Object accountFunding; - /** ID of the Account representing the beneficiary in this account funding transaction. */ - @SerializedName("beneficiary_account") - String beneficiaryAccount; - /** Inline identity details for the beneficiary of this transaction. */ @SerializedName("beneficiary_details") Object beneficiaryDetails; @@ -14847,12 +14843,10 @@ public static class MoneyServices { private MoneyServices( Object accountFunding, - String beneficiaryAccount, Object beneficiaryDetails, Map extraParams, ApiRequestParams.EnumParam transactionType) { this.accountFunding = accountFunding; - this.beneficiaryAccount = beneficiaryAccount; this.beneficiaryDetails = beneficiaryDetails; this.extraParams = extraParams; this.transactionType = transactionType; @@ -14865,8 +14859,6 @@ public static Builder builder() { public static class Builder { private Object accountFunding; - private String beneficiaryAccount; - private Object beneficiaryDetails; private Map extraParams; @@ -14876,11 +14868,7 @@ public static class Builder { /** Finalize and obtain parameter instance from this builder. */ public PaymentIntentConfirmParams.PaymentDetails.MoneyServices build() { return new PaymentIntentConfirmParams.PaymentDetails.MoneyServices( - this.accountFunding, - this.beneficiaryAccount, - this.beneficiaryDetails, - this.extraParams, - this.transactionType); + this.accountFunding, this.beneficiaryDetails, this.extraParams, this.transactionType); } /** Account funding transaction details including sender information. */ @@ -14896,12 +14884,6 @@ public Builder setAccountFunding(EmptyParam accountFunding) { return this; } - /** ID of the Account representing the beneficiary in this account funding transaction. */ - public Builder setBeneficiaryAccount(String beneficiaryAccount) { - this.beneficiaryAccount = beneficiaryAccount; - return this; - } - /** Inline identity details for the beneficiary of this transaction. */ public Builder setBeneficiaryDetails( PaymentIntentConfirmParams.PaymentDetails.MoneyServices.BeneficiaryDetails @@ -14972,18 +14954,12 @@ public static class AccountFunding { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** ID of the Account representing the sender in this account funding transaction. */ - @SerializedName("sender_account") - String senderAccount; - /** Inline identity details for the sender of this account funding transaction. */ @SerializedName("sender_details") Object senderDetails; - private AccountFunding( - Map extraParams, String senderAccount, Object senderDetails) { + private AccountFunding(Map extraParams, Object senderDetails) { this.extraParams = extraParams; - this.senderAccount = senderAccount; this.senderDetails = senderDetails; } @@ -14994,14 +14970,12 @@ public static Builder builder() { public static class Builder { private Map extraParams; - private String senderAccount; - private Object senderDetails; /** Finalize and obtain parameter instance from this builder. */ public PaymentIntentConfirmParams.PaymentDetails.MoneyServices.AccountFunding build() { return new PaymentIntentConfirmParams.PaymentDetails.MoneyServices.AccountFunding( - this.extraParams, this.senderAccount, this.senderDetails); + this.extraParams, this.senderDetails); } /** @@ -15034,12 +15008,6 @@ public Builder putAllExtraParam(Map map) { return this; } - /** ID of the Account representing the sender in this account funding transaction. */ - public Builder setSenderAccount(String senderAccount) { - this.senderAccount = senderAccount; - return this; - } - /** Inline identity details for the sender of this account funding transaction. */ public Builder setSenderDetails( PaymentIntentConfirmParams.PaymentDetails.MoneyServices.AccountFunding.SenderDetails @@ -15080,27 +15048,33 @@ public static class SenderDetails { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** Full name. */ - @SerializedName("name") - String name; + /** Given (first) name. */ + @SerializedName("given_name") + String givenName; /** Phone number. */ @SerializedName("phone") String phone; + /** Surname (family name). */ + @SerializedName("surname") + String surname; + private SenderDetails( Address address, DateOfBirth dateOfBirth, String email, Map extraParams, - String name, - String phone) { + String givenName, + String phone, + String surname) { this.address = address; this.dateOfBirth = dateOfBirth; this.email = email; this.extraParams = extraParams; - this.name = name; + this.givenName = givenName; this.phone = phone; + this.surname = surname; } public static Builder builder() { @@ -15116,10 +15090,12 @@ public static class Builder { private Map extraParams; - private String name; + private String givenName; private String phone; + private String surname; + /** Finalize and obtain parameter instance from this builder. */ public PaymentIntentConfirmParams.PaymentDetails.MoneyServices.AccountFunding .SenderDetails @@ -15130,8 +15106,9 @@ public static class Builder { this.dateOfBirth, this.email, this.extraParams, - this.name, - this.phone); + this.givenName, + this.phone, + this.surname); } /** Address. */ @@ -15188,9 +15165,9 @@ public Builder putAllExtraParam(Map map) { return this; } - /** Full name. */ - public Builder setName(String name) { - this.name = name; + /** Given (first) name. */ + public Builder setGivenName(String givenName) { + this.givenName = givenName; return this; } @@ -15199,6 +15176,12 @@ public Builder setPhone(String phone) { this.phone = phone; return this; } + + /** Surname (family name). */ + public Builder setSurname(String surname) { + this.surname = surname; + return this; + } } @Getter @@ -15477,6 +15460,13 @@ public Builder setYear(Long year) { @Getter @EqualsAndHashCode(callSuper = false) public static class BeneficiaryDetails { + /** + * An opaque identifier for the beneficiary's account (e.g. bank account number, card + * first6+last4, or other unique identifier). + */ + @SerializedName("account_reference") + String accountReference; + /** Address. */ @SerializedName("address") Address address; @@ -15499,27 +15489,35 @@ public static class BeneficiaryDetails { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** Full name. */ - @SerializedName("name") - String name; + /** Given (first) name. */ + @SerializedName("given_name") + String givenName; /** Phone number. */ @SerializedName("phone") String phone; + /** Surname (family name). */ + @SerializedName("surname") + String surname; + private BeneficiaryDetails( + String accountReference, Address address, DateOfBirth dateOfBirth, String email, Map extraParams, - String name, - String phone) { + String givenName, + String phone, + String surname) { + this.accountReference = accountReference; this.address = address; this.dateOfBirth = dateOfBirth; this.email = email; this.extraParams = extraParams; - this.name = name; + this.givenName = givenName; this.phone = phone; + this.surname = surname; } public static Builder builder() { @@ -15527,6 +15525,8 @@ public static Builder builder() { } public static class Builder { + private String accountReference; + private Address address; private DateOfBirth dateOfBirth; @@ -15535,20 +15535,33 @@ public static class Builder { private Map extraParams; - private String name; + private String givenName; private String phone; + private String surname; + /** Finalize and obtain parameter instance from this builder. */ public PaymentIntentConfirmParams.PaymentDetails.MoneyServices.BeneficiaryDetails build() { return new PaymentIntentConfirmParams.PaymentDetails.MoneyServices.BeneficiaryDetails( + this.accountReference, this.address, this.dateOfBirth, this.email, this.extraParams, - this.name, - this.phone); + this.givenName, + this.phone, + this.surname); + } + + /** + * An opaque identifier for the beneficiary's account (e.g. bank account number, card + * first6+last4, or other unique identifier). + */ + public Builder setAccountReference(String accountReference) { + this.accountReference = accountReference; + return this; } /** Address. */ @@ -15603,9 +15616,9 @@ public Builder putAllExtraParam(Map map) { return this; } - /** Full name. */ - public Builder setName(String name) { - this.name = name; + /** Given (first) name. */ + public Builder setGivenName(String givenName) { + this.givenName = givenName; return this; } @@ -15614,6 +15627,12 @@ public Builder setPhone(String phone) { this.phone = phone; return this; } + + /** Surname (family name). */ + public Builder setSurname(String surname) { + this.surname = surname; + return this; + } } @Getter diff --git a/src/main/java/com/stripe/param/PaymentIntentCreateParams.java b/src/main/java/com/stripe/param/PaymentIntentCreateParams.java index 7a8cc3269ea..7484919b3da 100644 --- a/src/main/java/com/stripe/param/PaymentIntentCreateParams.java +++ b/src/main/java/com/stripe/param/PaymentIntentCreateParams.java @@ -15327,10 +15327,6 @@ public static class MoneyServices { @SerializedName("account_funding") Object accountFunding; - /** ID of the Account representing the beneficiary in this account funding transaction. */ - @SerializedName("beneficiary_account") - String beneficiaryAccount; - /** Inline identity details for the beneficiary of this transaction. */ @SerializedName("beneficiary_details") Object beneficiaryDetails; @@ -15350,12 +15346,10 @@ public static class MoneyServices { private MoneyServices( Object accountFunding, - String beneficiaryAccount, Object beneficiaryDetails, Map extraParams, ApiRequestParams.EnumParam transactionType) { this.accountFunding = accountFunding; - this.beneficiaryAccount = beneficiaryAccount; this.beneficiaryDetails = beneficiaryDetails; this.extraParams = extraParams; this.transactionType = transactionType; @@ -15368,8 +15362,6 @@ public static Builder builder() { public static class Builder { private Object accountFunding; - private String beneficiaryAccount; - private Object beneficiaryDetails; private Map extraParams; @@ -15379,11 +15371,7 @@ public static class Builder { /** Finalize and obtain parameter instance from this builder. */ public PaymentIntentCreateParams.PaymentDetails.MoneyServices build() { return new PaymentIntentCreateParams.PaymentDetails.MoneyServices( - this.accountFunding, - this.beneficiaryAccount, - this.beneficiaryDetails, - this.extraParams, - this.transactionType); + this.accountFunding, this.beneficiaryDetails, this.extraParams, this.transactionType); } /** Account funding transaction details including sender information. */ @@ -15399,12 +15387,6 @@ public Builder setAccountFunding(EmptyParam accountFunding) { return this; } - /** ID of the Account representing the beneficiary in this account funding transaction. */ - public Builder setBeneficiaryAccount(String beneficiaryAccount) { - this.beneficiaryAccount = beneficiaryAccount; - return this; - } - /** Inline identity details for the beneficiary of this transaction. */ public Builder setBeneficiaryDetails( PaymentIntentCreateParams.PaymentDetails.MoneyServices.BeneficiaryDetails @@ -15475,18 +15457,12 @@ public static class AccountFunding { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** ID of the Account representing the sender in this account funding transaction. */ - @SerializedName("sender_account") - String senderAccount; - /** Inline identity details for the sender of this account funding transaction. */ @SerializedName("sender_details") Object senderDetails; - private AccountFunding( - Map extraParams, String senderAccount, Object senderDetails) { + private AccountFunding(Map extraParams, Object senderDetails) { this.extraParams = extraParams; - this.senderAccount = senderAccount; this.senderDetails = senderDetails; } @@ -15497,14 +15473,12 @@ public static Builder builder() { public static class Builder { private Map extraParams; - private String senderAccount; - private Object senderDetails; /** Finalize and obtain parameter instance from this builder. */ public PaymentIntentCreateParams.PaymentDetails.MoneyServices.AccountFunding build() { return new PaymentIntentCreateParams.PaymentDetails.MoneyServices.AccountFunding( - this.extraParams, this.senderAccount, this.senderDetails); + this.extraParams, this.senderDetails); } /** @@ -15537,12 +15511,6 @@ public Builder putAllExtraParam(Map map) { return this; } - /** ID of the Account representing the sender in this account funding transaction. */ - public Builder setSenderAccount(String senderAccount) { - this.senderAccount = senderAccount; - return this; - } - /** Inline identity details for the sender of this account funding transaction. */ public Builder setSenderDetails( PaymentIntentCreateParams.PaymentDetails.MoneyServices.AccountFunding.SenderDetails @@ -15583,27 +15551,33 @@ public static class SenderDetails { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** Full name. */ - @SerializedName("name") - String name; + /** Given (first) name. */ + @SerializedName("given_name") + String givenName; /** Phone number. */ @SerializedName("phone") String phone; + /** Surname (family name). */ + @SerializedName("surname") + String surname; + private SenderDetails( Address address, DateOfBirth dateOfBirth, String email, Map extraParams, - String name, - String phone) { + String givenName, + String phone, + String surname) { this.address = address; this.dateOfBirth = dateOfBirth; this.email = email; this.extraParams = extraParams; - this.name = name; + this.givenName = givenName; this.phone = phone; + this.surname = surname; } public static Builder builder() { @@ -15619,10 +15593,12 @@ public static class Builder { private Map extraParams; - private String name; + private String givenName; private String phone; + private String surname; + /** Finalize and obtain parameter instance from this builder. */ public PaymentIntentCreateParams.PaymentDetails.MoneyServices.AccountFunding .SenderDetails @@ -15633,8 +15609,9 @@ public static class Builder { this.dateOfBirth, this.email, this.extraParams, - this.name, - this.phone); + this.givenName, + this.phone, + this.surname); } /** Address. */ @@ -15691,9 +15668,9 @@ public Builder putAllExtraParam(Map map) { return this; } - /** Full name. */ - public Builder setName(String name) { - this.name = name; + /** Given (first) name. */ + public Builder setGivenName(String givenName) { + this.givenName = givenName; return this; } @@ -15702,6 +15679,12 @@ public Builder setPhone(String phone) { this.phone = phone; return this; } + + /** Surname (family name). */ + public Builder setSurname(String surname) { + this.surname = surname; + return this; + } } @Getter @@ -15980,6 +15963,13 @@ public Builder setYear(Long year) { @Getter @EqualsAndHashCode(callSuper = false) public static class BeneficiaryDetails { + /** + * An opaque identifier for the beneficiary's account (e.g. bank account number, card + * first6+last4, or other unique identifier). + */ + @SerializedName("account_reference") + String accountReference; + /** Address. */ @SerializedName("address") Address address; @@ -16002,27 +15992,35 @@ public static class BeneficiaryDetails { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** Full name. */ - @SerializedName("name") - String name; + /** Given (first) name. */ + @SerializedName("given_name") + String givenName; /** Phone number. */ @SerializedName("phone") String phone; + /** Surname (family name). */ + @SerializedName("surname") + String surname; + private BeneficiaryDetails( + String accountReference, Address address, DateOfBirth dateOfBirth, String email, Map extraParams, - String name, - String phone) { + String givenName, + String phone, + String surname) { + this.accountReference = accountReference; this.address = address; this.dateOfBirth = dateOfBirth; this.email = email; this.extraParams = extraParams; - this.name = name; + this.givenName = givenName; this.phone = phone; + this.surname = surname; } public static Builder builder() { @@ -16030,6 +16028,8 @@ public static Builder builder() { } public static class Builder { + private String accountReference; + private Address address; private DateOfBirth dateOfBirth; @@ -16038,19 +16038,32 @@ public static class Builder { private Map extraParams; - private String name; + private String givenName; private String phone; + private String surname; + /** Finalize and obtain parameter instance from this builder. */ public PaymentIntentCreateParams.PaymentDetails.MoneyServices.BeneficiaryDetails build() { return new PaymentIntentCreateParams.PaymentDetails.MoneyServices.BeneficiaryDetails( + this.accountReference, this.address, this.dateOfBirth, this.email, this.extraParams, - this.name, - this.phone); + this.givenName, + this.phone, + this.surname); + } + + /** + * An opaque identifier for the beneficiary's account (e.g. bank account number, card + * first6+last4, or other unique identifier). + */ + public Builder setAccountReference(String accountReference) { + this.accountReference = accountReference; + return this; } /** Address. */ @@ -16105,9 +16118,9 @@ public Builder putAllExtraParam(Map map) { return this; } - /** Full name. */ - public Builder setName(String name) { - this.name = name; + /** Given (first) name. */ + public Builder setGivenName(String givenName) { + this.givenName = givenName; return this; } @@ -16116,6 +16129,12 @@ public Builder setPhone(String phone) { this.phone = phone; return this; } + + /** Surname (family name). */ + public Builder setSurname(String surname) { + this.surname = surname; + return this; + } } @Getter diff --git a/src/main/java/com/stripe/param/PaymentIntentUpdateParams.java b/src/main/java/com/stripe/param/PaymentIntentUpdateParams.java index 22dfd8a2f67..ac024498d6c 100644 --- a/src/main/java/com/stripe/param/PaymentIntentUpdateParams.java +++ b/src/main/java/com/stripe/param/PaymentIntentUpdateParams.java @@ -16127,10 +16127,6 @@ public static class MoneyServices { @SerializedName("account_funding") Object accountFunding; - /** ID of the Account representing the beneficiary in this account funding transaction. */ - @SerializedName("beneficiary_account") - Object beneficiaryAccount; - /** Inline identity details for the beneficiary of this transaction. */ @SerializedName("beneficiary_details") Object beneficiaryDetails; @@ -16150,12 +16146,10 @@ public static class MoneyServices { private MoneyServices( Object accountFunding, - Object beneficiaryAccount, Object beneficiaryDetails, Map extraParams, ApiRequestParams.EnumParam transactionType) { this.accountFunding = accountFunding; - this.beneficiaryAccount = beneficiaryAccount; this.beneficiaryDetails = beneficiaryDetails; this.extraParams = extraParams; this.transactionType = transactionType; @@ -16168,8 +16162,6 @@ public static Builder builder() { public static class Builder { private Object accountFunding; - private Object beneficiaryAccount; - private Object beneficiaryDetails; private Map extraParams; @@ -16179,11 +16171,7 @@ public static class Builder { /** Finalize and obtain parameter instance from this builder. */ public PaymentIntentUpdateParams.PaymentDetails.MoneyServices build() { return new PaymentIntentUpdateParams.PaymentDetails.MoneyServices( - this.accountFunding, - this.beneficiaryAccount, - this.beneficiaryDetails, - this.extraParams, - this.transactionType); + this.accountFunding, this.beneficiaryDetails, this.extraParams, this.transactionType); } /** Account funding transaction details including sender information. */ @@ -16199,18 +16187,6 @@ public Builder setAccountFunding(EmptyParam accountFunding) { return this; } - /** ID of the Account representing the beneficiary in this account funding transaction. */ - public Builder setBeneficiaryAccount(String beneficiaryAccount) { - this.beneficiaryAccount = beneficiaryAccount; - return this; - } - - /** ID of the Account representing the beneficiary in this account funding transaction. */ - public Builder setBeneficiaryAccount(EmptyParam beneficiaryAccount) { - this.beneficiaryAccount = beneficiaryAccount; - return this; - } - /** Inline identity details for the beneficiary of this transaction. */ public Builder setBeneficiaryDetails( PaymentIntentUpdateParams.PaymentDetails.MoneyServices.BeneficiaryDetails @@ -16281,18 +16257,12 @@ public static class AccountFunding { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** ID of the Account representing the sender in this account funding transaction. */ - @SerializedName("sender_account") - Object senderAccount; - /** Inline identity details for the sender of this account funding transaction. */ @SerializedName("sender_details") Object senderDetails; - private AccountFunding( - Map extraParams, Object senderAccount, Object senderDetails) { + private AccountFunding(Map extraParams, Object senderDetails) { this.extraParams = extraParams; - this.senderAccount = senderAccount; this.senderDetails = senderDetails; } @@ -16303,14 +16273,12 @@ public static Builder builder() { public static class Builder { private Map extraParams; - private Object senderAccount; - private Object senderDetails; /** Finalize and obtain parameter instance from this builder. */ public PaymentIntentUpdateParams.PaymentDetails.MoneyServices.AccountFunding build() { return new PaymentIntentUpdateParams.PaymentDetails.MoneyServices.AccountFunding( - this.extraParams, this.senderAccount, this.senderDetails); + this.extraParams, this.senderDetails); } /** @@ -16343,18 +16311,6 @@ public Builder putAllExtraParam(Map map) { return this; } - /** ID of the Account representing the sender in this account funding transaction. */ - public Builder setSenderAccount(String senderAccount) { - this.senderAccount = senderAccount; - return this; - } - - /** ID of the Account representing the sender in this account funding transaction. */ - public Builder setSenderAccount(EmptyParam senderAccount) { - this.senderAccount = senderAccount; - return this; - } - /** Inline identity details for the sender of this account funding transaction. */ public Builder setSenderDetails( PaymentIntentUpdateParams.PaymentDetails.MoneyServices.AccountFunding.SenderDetails @@ -16395,27 +16351,33 @@ public static class SenderDetails { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** Full name. */ - @SerializedName("name") - Object name; + /** Given (first) name. */ + @SerializedName("given_name") + Object givenName; /** Phone number. */ @SerializedName("phone") Object phone; + /** Surname (family name). */ + @SerializedName("surname") + Object surname; + private SenderDetails( Address address, DateOfBirth dateOfBirth, Object email, Map extraParams, - Object name, - Object phone) { + Object givenName, + Object phone, + Object surname) { this.address = address; this.dateOfBirth = dateOfBirth; this.email = email; this.extraParams = extraParams; - this.name = name; + this.givenName = givenName; this.phone = phone; + this.surname = surname; } public static Builder builder() { @@ -16431,10 +16393,12 @@ public static class Builder { private Map extraParams; - private Object name; + private Object givenName; private Object phone; + private Object surname; + /** Finalize and obtain parameter instance from this builder. */ public PaymentIntentUpdateParams.PaymentDetails.MoneyServices.AccountFunding .SenderDetails @@ -16445,8 +16409,9 @@ public static class Builder { this.dateOfBirth, this.email, this.extraParams, - this.name, - this.phone); + this.givenName, + this.phone, + this.surname); } /** Address. */ @@ -16509,15 +16474,15 @@ public Builder putAllExtraParam(Map map) { return this; } - /** Full name. */ - public Builder setName(String name) { - this.name = name; + /** Given (first) name. */ + public Builder setGivenName(String givenName) { + this.givenName = givenName; return this; } - /** Full name. */ - public Builder setName(EmptyParam name) { - this.name = name; + /** Given (first) name. */ + public Builder setGivenName(EmptyParam givenName) { + this.givenName = givenName; return this; } @@ -16532,6 +16497,18 @@ public Builder setPhone(EmptyParam phone) { this.phone = phone; return this; } + + /** Surname (family name). */ + public Builder setSurname(String surname) { + this.surname = surname; + return this; + } + + /** Surname (family name). */ + public Builder setSurname(EmptyParam surname) { + this.surname = surname; + return this; + } } @Getter @@ -16852,6 +16829,13 @@ public Builder setYear(Long year) { @Getter @EqualsAndHashCode(callSuper = false) public static class BeneficiaryDetails { + /** + * An opaque identifier for the beneficiary's account (e.g. bank account number, card + * first6+last4, or other unique identifier). + */ + @SerializedName("account_reference") + Object accountReference; + /** Address. */ @SerializedName("address") Address address; @@ -16874,27 +16858,35 @@ public static class BeneficiaryDetails { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** Full name. */ - @SerializedName("name") - Object name; + /** Given (first) name. */ + @SerializedName("given_name") + Object givenName; /** Phone number. */ @SerializedName("phone") Object phone; + /** Surname (family name). */ + @SerializedName("surname") + Object surname; + private BeneficiaryDetails( + Object accountReference, Address address, DateOfBirth dateOfBirth, Object email, Map extraParams, - Object name, - Object phone) { + Object givenName, + Object phone, + Object surname) { + this.accountReference = accountReference; this.address = address; this.dateOfBirth = dateOfBirth; this.email = email; this.extraParams = extraParams; - this.name = name; + this.givenName = givenName; this.phone = phone; + this.surname = surname; } public static Builder builder() { @@ -16902,6 +16894,8 @@ public static Builder builder() { } public static class Builder { + private Object accountReference; + private Address address; private DateOfBirth dateOfBirth; @@ -16910,19 +16904,41 @@ public static class Builder { private Map extraParams; - private Object name; + private Object givenName; private Object phone; + private Object surname; + /** Finalize and obtain parameter instance from this builder. */ public PaymentIntentUpdateParams.PaymentDetails.MoneyServices.BeneficiaryDetails build() { return new PaymentIntentUpdateParams.PaymentDetails.MoneyServices.BeneficiaryDetails( + this.accountReference, this.address, this.dateOfBirth, this.email, this.extraParams, - this.name, - this.phone); + this.givenName, + this.phone, + this.surname); + } + + /** + * An opaque identifier for the beneficiary's account (e.g. bank account number, card + * first6+last4, or other unique identifier). + */ + public Builder setAccountReference(String accountReference) { + this.accountReference = accountReference; + return this; + } + + /** + * An opaque identifier for the beneficiary's account (e.g. bank account number, card + * first6+last4, or other unique identifier). + */ + public Builder setAccountReference(EmptyParam accountReference) { + this.accountReference = accountReference; + return this; } /** Address. */ @@ -16983,15 +16999,15 @@ public Builder putAllExtraParam(Map map) { return this; } - /** Full name. */ - public Builder setName(String name) { - this.name = name; + /** Given (first) name. */ + public Builder setGivenName(String givenName) { + this.givenName = givenName; return this; } - /** Full name. */ - public Builder setName(EmptyParam name) { - this.name = name; + /** Given (first) name. */ + public Builder setGivenName(EmptyParam givenName) { + this.givenName = givenName; return this; } @@ -17006,6 +17022,18 @@ public Builder setPhone(EmptyParam phone) { this.phone = phone; return this; } + + /** Surname (family name). */ + public Builder setSurname(String surname) { + this.surname = surname; + return this; + } + + /** Surname (family name). */ + public Builder setSurname(EmptyParam surname) { + this.surname = surname; + return this; + } } @Getter From 482874d5a45c2bd9e603b73c253cc51c39777e7e Mon Sep 17 00:00:00 2001 From: Stripe OpenAPI <105521251+stripe-openapi[bot]@users.noreply.github.com> Date: Fri, 12 Jun 2026 16:30:23 +0000 Subject: [PATCH 04/14] Update generated code for v2298 and 7665b3a0f31b86696e50b95679348d8b12dfb125 --- CODEGEN_VERSION | 2 +- OPENAPI_VERSION | 2 +- src/main/java/com/stripe/model/Charge.java | 16 + .../com/stripe/model/ConfirmationToken.java | 16 +- .../stripe/model/PaymentAttemptRecord.java | 16 + .../java/com/stripe/model/PaymentMethod.java | 17 +- .../java/com/stripe/model/PaymentRecord.java | 16 + .../model/sharedpayment/GrantedToken.java | 16 +- .../com/stripe/model/v2/core/Account.java | 3771 +- .../param/ConfirmationTokenCreateParams.java | 82 + .../CustomerListPaymentMethodsParams.java | 3 + .../CustomerPaymentMethodListParams.java | 3 + .../param/PaymentIntentConfirmParams.java | 88 + .../param/PaymentIntentCreateParams.java | 88 + .../param/PaymentIntentUpdateParams.java | 88 + .../param/PaymentMethodCreateParams.java | 80 + .../stripe/param/PaymentMethodListParams.java | 3 + .../param/SetupIntentConfirmParams.java | 82 + .../stripe/param/SetupIntentCreateParams.java | 85 + .../stripe/param/SetupIntentUpdateParams.java | 85 + .../param/v2/core/AccountCreateParams.java | 26274 +++++++++++--- .../param/v2/core/AccountUpdateParams.java | 30282 ++++++++++++---- 22 files changed, 46990 insertions(+), 14125 deletions(-) diff --git a/CODEGEN_VERSION b/CODEGEN_VERSION index 4cdf42b0f9b..729af10e736 100644 --- a/CODEGEN_VERSION +++ b/CODEGEN_VERSION @@ -1 +1 @@ -3111dcf5bcfa362f9fc8da776e0892504ed566d3 \ No newline at end of file +7665b3a0f31b86696e50b95679348d8b12dfb125 \ No newline at end of file diff --git a/OPENAPI_VERSION b/OPENAPI_VERSION index ca72a77cb9a..5e9dd1c684d 100644 --- a/OPENAPI_VERSION +++ b/OPENAPI_VERSION @@ -1 +1 @@ -v2297 \ No newline at end of file +v2298 \ No newline at end of file diff --git a/src/main/java/com/stripe/model/Charge.java b/src/main/java/com/stripe/model/Charge.java index ded0550724e..b48de4b3346 100644 --- a/src/main/java/com/stripe/model/Charge.java +++ b/src/main/java/com/stripe/model/Charge.java @@ -1343,6 +1343,9 @@ public static class PaymentMethodDetails extends StripeObject { @SerializedName("swish") Swish swish; + @SerializedName("tamara") + Tamara tamara; + @SerializedName("twint") Twint twint; @@ -4456,6 +4459,19 @@ public static class Swish extends StripeObject { String verifiedPhoneLast4; } + /** + * For more details about Tamara, please refer to the API + * Reference. + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Tamara extends StripeObject { + /** The Tamara transaction ID associated with this payment. */ + @SerializedName("transaction_id") + String transactionId; + } + /** * For more details about Twint, please refer to the API * Reference. diff --git a/src/main/java/com/stripe/model/ConfirmationToken.java b/src/main/java/com/stripe/model/ConfirmationToken.java index 705a8b20d5a..79360b7b18d 100644 --- a/src/main/java/com/stripe/model/ConfirmationToken.java +++ b/src/main/java/com/stripe/model/ConfirmationToken.java @@ -470,6 +470,9 @@ public static class PaymentMethodPreview extends StripeObject { @SerializedName("swish") Swish swish; + @SerializedName("tamara") + Tamara tamara; + @SerializedName("twint") Twint twint; @@ -490,8 +493,8 @@ public static class PaymentMethodPreview extends StripeObject { * paypal}, {@code paypay}, {@code payto}, {@code pix}, {@code promptpay}, {@code qris}, {@code * rechnung}, {@code revolut_pay}, {@code samsung_pay}, {@code satispay}, {@code scalapay}, * {@code sepa_debit}, {@code shopeepay}, {@code sofort}, {@code stripe_balance}, {@code - * sunbit}, {@code swish}, {@code twint}, {@code upi}, {@code us_bank_account}, {@code - * wechat_pay}, or {@code zip}. + * sunbit}, {@code swish}, {@code tamara}, {@code twint}, {@code upi}, {@code us_bank_account}, + * {@code wechat_pay}, or {@code zip}. */ @SerializedName("type") String type; @@ -2597,6 +2600,15 @@ public static class Sunbit extends StripeObject {} @EqualsAndHashCode(callSuper = false) public static class Swish extends StripeObject {} + /** + * For more details about Tamara, please refer to the API + * Reference. + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Tamara extends StripeObject {} + /** * For more details about Twint, please refer to the API * Reference. diff --git a/src/main/java/com/stripe/model/PaymentAttemptRecord.java b/src/main/java/com/stripe/model/PaymentAttemptRecord.java index e6b73f27c12..e9ee1067585 100644 --- a/src/main/java/com/stripe/model/PaymentAttemptRecord.java +++ b/src/main/java/com/stripe/model/PaymentAttemptRecord.java @@ -949,6 +949,9 @@ public static class PaymentMethodDetails extends StripeObject { @SerializedName("swish") Swish swish; + @SerializedName("tamara") + Tamara tamara; + @SerializedName("twint") Twint twint; @@ -3801,6 +3804,19 @@ public static class Swish extends StripeObject { String verifiedPhoneLast4; } + /** + * For more details about Tamara, please refer to the API + * Reference. + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Tamara extends StripeObject { + /** The Tamara transaction ID associated with this payment. */ + @SerializedName("transaction_id") + String transactionId; + } + /** * For more details about Twint, please refer to the API * Reference. diff --git a/src/main/java/com/stripe/model/PaymentMethod.java b/src/main/java/com/stripe/model/PaymentMethod.java index 44749a73cc5..67ab14e9ee7 100644 --- a/src/main/java/com/stripe/model/PaymentMethod.java +++ b/src/main/java/com/stripe/model/PaymentMethod.java @@ -290,6 +290,9 @@ public class PaymentMethod extends ApiResource implements HasId, MetadataStore

API + * Reference. + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Tamara extends StripeObject {} + /** * For more details about Twint, please refer to the API * Reference. @@ -3162,6 +3174,7 @@ public void setResponseGetter(StripeResponseGetter responseGetter) { trySetResponseGetter(stripeBalance, responseGetter); trySetResponseGetter(sunbit, responseGetter); trySetResponseGetter(swish, responseGetter); + trySetResponseGetter(tamara, responseGetter); trySetResponseGetter(twint, responseGetter); trySetResponseGetter(upi, responseGetter); trySetResponseGetter(usBankAccount, responseGetter); diff --git a/src/main/java/com/stripe/model/PaymentRecord.java b/src/main/java/com/stripe/model/PaymentRecord.java index b319eab9acd..5a08e959e35 100644 --- a/src/main/java/com/stripe/model/PaymentRecord.java +++ b/src/main/java/com/stripe/model/PaymentRecord.java @@ -927,6 +927,9 @@ public static class PaymentMethodDetails extends StripeObject { @SerializedName("swish") Swish swish; + @SerializedName("tamara") + Tamara tamara; + @SerializedName("twint") Twint twint; @@ -3778,6 +3781,19 @@ public static class Swish extends StripeObject { String verifiedPhoneLast4; } + /** + * For more details about Tamara, please refer to the API + * Reference. + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Tamara extends StripeObject { + /** The Tamara transaction ID associated with this payment. */ + @SerializedName("transaction_id") + String transactionId; + } + /** * For more details about Twint, please refer to the API * Reference. diff --git a/src/main/java/com/stripe/model/sharedpayment/GrantedToken.java b/src/main/java/com/stripe/model/sharedpayment/GrantedToken.java index 281ba6bae89..0075ca25462 100644 --- a/src/main/java/com/stripe/model/sharedpayment/GrantedToken.java +++ b/src/main/java/com/stripe/model/sharedpayment/GrantedToken.java @@ -344,6 +344,9 @@ public static class PaymentMethodDetails extends StripeObject { @SerializedName("swish") Swish swish; + @SerializedName("tamara") + Tamara tamara; + @SerializedName("twint") Twint twint; @@ -364,8 +367,8 @@ public static class PaymentMethodDetails extends StripeObject { * paypal}, {@code paypay}, {@code payto}, {@code pix}, {@code promptpay}, {@code qris}, {@code * rechnung}, {@code revolut_pay}, {@code samsung_pay}, {@code satispay}, {@code scalapay}, * {@code sepa_debit}, {@code shopeepay}, {@code sofort}, {@code stripe_balance}, {@code - * sunbit}, {@code swish}, {@code twint}, {@code upi}, {@code us_bank_account}, {@code - * wechat_pay}, or {@code zip}. + * sunbit}, {@code swish}, {@code tamara}, {@code twint}, {@code upi}, {@code us_bank_account}, + * {@code wechat_pay}, or {@code zip}. */ @SerializedName("type") String type; @@ -1993,6 +1996,15 @@ public static class Sunbit extends StripeObject {} @EqualsAndHashCode(callSuper = false) public static class Swish extends StripeObject {} + /** + * For more details about Tamara, please refer to the API + * Reference. + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Tamara extends StripeObject {} + /** * For more details about Twint, please refer to the API * Reference. diff --git a/src/main/java/com/stripe/model/v2/core/Account.java b/src/main/java/com/stripe/model/v2/core/Account.java index 8050a44fb48..c5eded6e4da 100644 --- a/src/main/java/com/stripe/model/v2/core/Account.java +++ b/src/main/java/com/stripe/model/v2/core/Account.java @@ -1,8 +1,10 @@ // File generated from our OpenAPI spec package com.stripe.model.v2.core; +import com.google.gson.annotations.JsonAdapter; import com.google.gson.annotations.SerializedName; import com.stripe.model.HasId; +import com.stripe.model.StringInt64TypeAdapter; import com.stripe.model.StripeObject; import com.stripe.v2.Amount; import java.math.BigDecimal; @@ -240,6 +242,13 @@ public static class Celtic extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class ChargeCard extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -259,6 +268,44 @@ public static class ChargeCard extends StripeObject { .StatusDetail> statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code + * inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -294,6 +341,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class SpendCard extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -313,6 +367,44 @@ public static class SpendCard extends StripeObject { .StatusDetail> statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code + * inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -366,6 +458,13 @@ public static class CrossRiverBank extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class ChargeCard extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -385,6 +484,44 @@ public static class ChargeCard extends StripeObject { .ChargeCard.StatusDetail> statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code + * inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -420,6 +557,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class PrepaidCard extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -439,6 +583,44 @@ public static class PrepaidCard extends StripeObject { .PrepaidCard.StatusDetail> statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code + * inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -474,6 +656,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class SpendCard extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -493,6 +682,44 @@ public static class SpendCard extends StripeObject { .SpendCard.StatusDetail> statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code + * inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -538,6 +765,13 @@ public static class FifthThird extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class ChargeCard extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -557,6 +791,44 @@ public static class ChargeCard extends StripeObject { .ChargeCard.StatusDetail> statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code + * inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -608,6 +880,13 @@ public static class Lead extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class PrepaidCard extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -627,6 +906,44 @@ public static class PrepaidCard extends StripeObject { .StatusDetail> statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code + * inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -676,6 +993,13 @@ public static class Stripe extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class ChargeCard extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -695,6 +1019,44 @@ public static class ChargeCard extends StripeObject { .StatusDetail> statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code + * inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -730,6 +1092,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class PrepaidCard extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -749,6 +1118,44 @@ public static class PrepaidCard extends StripeObject { .StatusDetail> statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code + * inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -812,6 +1219,13 @@ public static class Celtic extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class RevolvingCreditCard extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -831,6 +1245,44 @@ public static class RevolvingCreditCard extends StripeObject { .RevolvingCreditCard.StatusDetail> statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code + * inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -876,6 +1328,13 @@ public static class CrossRiverBank extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class PrepaidCard extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -895,6 +1354,44 @@ public static class PrepaidCard extends StripeObject { .PrepaidCard.StatusDetail> statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code + * inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -944,6 +1441,13 @@ public static class Lead extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class DebitCard extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -963,6 +1467,44 @@ public static class DebitCard extends StripeObject { .StatusDetail> statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code + * inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -998,6 +1540,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class PrepaidCard extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -1017,6 +1566,44 @@ public static class PrepaidCard extends StripeObject { .StatusDetail> statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code + * inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -1268,6 +1855,13 @@ public static class Capabilities extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class AutomaticIndirectTax extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -1285,16 +1879,53 @@ public static class AutomaticIndirectTax extends StripeObject { statusDetails; /** - * For more details about StatusDetail, please refer to the API Reference. + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). */ @Getter @Setter @EqualsAndHashCode(callSuper = false) - public static class StatusDetail extends StripeObject { - /** - * Machine-readable code explaining the reason for the Capability to be in its current - * status. + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code inactive}. + */ + @SerializedName("status") + String status; + } + } + + /** + * For more details about StatusDetail, please refer to the API Reference. + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class StatusDetail extends StripeObject { + /** + * Machine-readable code explaining the reason for the Capability to be in its current + * status. * *

One of {@code determining_status}, {@code requirements_past_due}, {@code * requirements_pending_verification}, {@code restricted_other}, {@code @@ -1672,6 +2303,13 @@ public static class Capabilities extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class AchDebitPayments extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -1688,6 +2326,43 @@ public static class AchDebitPayments extends StripeObject { List statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -1723,6 +2398,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class AcssDebitPayments extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -1739,6 +2421,43 @@ public static class AcssDebitPayments extends StripeObject { List statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -1774,6 +2493,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class AffirmPayments extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -1790,6 +2516,43 @@ public static class AffirmPayments extends StripeObject { List statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -1825,6 +2588,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class AfterpayClearpayPayments extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -1841,6 +2611,43 @@ public static class AfterpayClearpayPayments extends StripeObject { List statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -1876,6 +2683,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class AlmaPayments extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -1891,6 +2705,43 @@ public static class AlmaPayments extends StripeObject { @SerializedName("status_details") List statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -1926,6 +2777,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class AmazonPayPayments extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -1942,6 +2800,43 @@ public static class AmazonPayPayments extends StripeObject { List statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -1977,6 +2872,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class AuBecsDebitPayments extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -1993,6 +2895,43 @@ public static class AuBecsDebitPayments extends StripeObject { List statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -2028,6 +2967,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class BacsDebitPayments extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -2044,6 +2990,43 @@ public static class BacsDebitPayments extends StripeObject { List statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -2079,6 +3062,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class BancontactPayments extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -2095,6 +3085,43 @@ public static class BancontactPayments extends StripeObject { List statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -2130,6 +3157,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class BlikPayments extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -2145,6 +3179,43 @@ public static class BlikPayments extends StripeObject { @SerializedName("status_details") List statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -2180,6 +3251,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class BoletoPayments extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -2197,18 +3275,55 @@ public static class BoletoPayments extends StripeObject { statusDetails; /** - * For more details about StatusDetail, please refer to the API Reference. + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). */ @Getter @Setter @EqualsAndHashCode(callSuper = false) - public static class StatusDetail extends StripeObject { - /** - * Machine-readable code explaining the reason for the Capability to be in its current - * status. - * - *

One of {@code determining_status}, {@code requirements_past_due}, {@code + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code inactive}. + */ + @SerializedName("status") + String status; + } + } + + /** + * For more details about StatusDetail, please refer to the API Reference. + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class StatusDetail extends StripeObject { + /** + * Machine-readable code explaining the reason for the Capability to be in its current + * status. + * + *

One of {@code determining_status}, {@code requirements_past_due}, {@code * requirements_pending_verification}, {@code restricted_other}, {@code * unsupported_business}, {@code unsupported_country}, or {@code * unsupported_entity_type}. @@ -2231,6 +3346,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class CardPayments extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -2246,6 +3368,43 @@ public static class CardPayments extends StripeObject { @SerializedName("status_details") List statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -2281,6 +3440,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class CartesBancairesPayments extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -2297,6 +3463,43 @@ public static class CartesBancairesPayments extends StripeObject { List statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -2332,6 +3535,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class CashappPayments extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -2348,6 +3558,43 @@ public static class CashappPayments extends StripeObject { List statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -2383,6 +3630,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class EpsPayments extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -2398,6 +3652,43 @@ public static class EpsPayments extends StripeObject { @SerializedName("status_details") List statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -2433,6 +3724,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class FpxPayments extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -2448,6 +3746,43 @@ public static class FpxPayments extends StripeObject { @SerializedName("status_details") List statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -2483,6 +3818,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class GbBankTransferPayments extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -2499,6 +3841,43 @@ public static class GbBankTransferPayments extends StripeObject { List statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -2534,6 +3913,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class GrabpayPayments extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -2550,6 +3936,43 @@ public static class GrabpayPayments extends StripeObject { List statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -2585,6 +4008,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class IdealPayments extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -2601,6 +4031,43 @@ public static class IdealPayments extends StripeObject { List statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -2636,6 +4103,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class JcbPayments extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -2651,6 +4125,43 @@ public static class JcbPayments extends StripeObject { @SerializedName("status_details") List statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -2686,6 +4197,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class JpBankTransferPayments extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -2702,6 +4220,43 @@ public static class JpBankTransferPayments extends StripeObject { List statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -2737,6 +4292,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class KakaoPayPayments extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -2753,6 +4315,43 @@ public static class KakaoPayPayments extends StripeObject { List statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -2788,6 +4387,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class KlarnaPayments extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -2796,13 +4402,50 @@ public static class KlarnaPayments extends StripeObject { @SerializedName("status") String status; - /** - * Additional details about the capability's status. This value is empty when {@code - * status} is {@code active}. - */ - @SerializedName("status_details") - List - statusDetails; + /** + * Additional details about the capability's status. This value is empty when {@code + * status} is {@code active}. + */ + @SerializedName("status_details") + List + statusDetails; + + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code inactive}. + */ + @SerializedName("status") + String status; + } + } /** * For more details about StatusDetail, please refer to the statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -2890,6 +4577,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class KrCardPayments extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -2906,6 +4600,43 @@ public static class KrCardPayments extends StripeObject { List statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -2941,6 +4672,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class LinkPayments extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -2956,6 +4694,43 @@ public static class LinkPayments extends StripeObject { @SerializedName("status_details") List statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -2991,6 +4766,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class MobilepayPayments extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -3007,6 +4789,43 @@ public static class MobilepayPayments extends StripeObject { List statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -3042,6 +4861,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class MultibancoPayments extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -3058,6 +4884,43 @@ public static class MultibancoPayments extends StripeObject { List statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -3093,6 +4956,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class MxBankTransferPayments extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -3109,6 +4979,43 @@ public static class MxBankTransferPayments extends StripeObject { List statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -3144,6 +5051,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class NaverPayPayments extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -3160,6 +5074,43 @@ public static class NaverPayPayments extends StripeObject { List statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -3195,6 +5146,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class OxxoPayments extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -3210,6 +5168,43 @@ public static class OxxoPayments extends StripeObject { @SerializedName("status_details") List statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -3245,6 +5240,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class P24Payments extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -3260,6 +5262,43 @@ public static class P24Payments extends StripeObject { @SerializedName("status_details") List statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -3295,6 +5334,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class PayByBankPayments extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -3311,6 +5357,43 @@ public static class PayByBankPayments extends StripeObject { List statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -3346,6 +5429,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class PaycoPayments extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -3354,13 +5444,50 @@ public static class PaycoPayments extends StripeObject { @SerializedName("status") String status; - /** - * Additional details about the capability's status. This value is empty when {@code - * status} is {@code active}. - */ - @SerializedName("status_details") - List - statusDetails; + /** + * Additional details about the capability's status. This value is empty when {@code + * status} is {@code active}. + */ + @SerializedName("status_details") + List + statusDetails; + + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code inactive}. + */ + @SerializedName("status") + String status; + } + } /** * For more details about StatusDetail, please refer to the statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -3448,6 +5619,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class PromptpayPayments extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -3464,6 +5642,43 @@ public static class PromptpayPayments extends StripeObject { List statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -3499,6 +5714,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class RevolutPayPayments extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -3515,6 +5737,43 @@ public static class RevolutPayPayments extends StripeObject { List statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -3550,6 +5809,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class SamsungPayPayments extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -3566,6 +5832,43 @@ public static class SamsungPayPayments extends StripeObject { List statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -3601,6 +5904,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class SepaBankTransferPayments extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -3617,6 +5927,43 @@ public static class SepaBankTransferPayments extends StripeObject { List statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -3652,6 +5999,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class SepaDebitPayments extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -3668,6 +6022,43 @@ public static class SepaDebitPayments extends StripeObject { List statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -3712,6 +6103,13 @@ public static class StripeBalance extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class Payouts extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -3729,6 +6127,44 @@ public static class Payouts extends StripeObject { List statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code + * inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -3765,6 +6201,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class SwishPayments extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -3781,6 +6224,43 @@ public static class SwishPayments extends StripeObject { List statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -3816,6 +6296,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class TwintPayments extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -3832,6 +6319,43 @@ public static class TwintPayments extends StripeObject { List statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -3867,6 +6391,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class UsBankTransferPayments extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -3883,6 +6414,43 @@ public static class UsBankTransferPayments extends StripeObject { List statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -3918,6 +6486,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class ZipPayments extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -3926,12 +6501,49 @@ public static class ZipPayments extends StripeObject { @SerializedName("status") String status; - /** - * Additional details about the capability's status. This value is empty when {@code - * status} is {@code active}. - */ - @SerializedName("status_details") - List statusDetails; + /** + * Additional details about the capability's status. This value is empty when {@code + * status} is {@code active}. + */ + @SerializedName("status_details") + List statusDetails; + + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code inactive}. + */ + @SerializedName("status") + String status; + } + } /** * For more details about StatusDetail, please refer to the statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code + * inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -4407,6 +7064,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class Local extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -4424,6 +7088,44 @@ public static class Local extends StripeObject { List statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code + * inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -4459,6 +7161,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class Wire extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -4476,6 +7185,44 @@ public static class Wire extends StripeObject { List statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code + * inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -4512,6 +7259,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class Cards extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -4527,6 +7281,43 @@ public static class Cards extends StripeObject { @SerializedName("status_details") List statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -4562,6 +7353,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class CryptoWallets extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -4578,6 +7376,43 @@ public static class CryptoWallets extends StripeObject { List statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -4613,6 +7448,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class PaperChecks extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -4628,6 +7470,43 @@ public static class PaperChecks extends StripeObject { @SerializedName("status_details") List statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -4678,6 +7557,13 @@ public static class StripeBalance extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class Payouts extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -4695,6 +7581,44 @@ public static class Payouts extends StripeObject { List statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code + * inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -4732,6 +7656,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class StripeTransfers extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -4751,6 +7682,44 @@ public static class StripeTransfers extends StripeObject { .StatusDetail> statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code + * inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -4979,6 +7948,13 @@ public static class HoldsCurrencies extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class Usd extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -4998,6 +7974,44 @@ public static class Usd extends StripeObject { .StatusDetail> statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code + * inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -5054,6 +8068,13 @@ public static class FinancialAddresses extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class BankAccounts extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -5073,6 +8094,44 @@ public static class BankAccounts extends StripeObject { .StatusDetail> statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code + * inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -5108,6 +8167,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class CryptoWallets extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -5127,6 +8193,44 @@ public static class CryptoWallets extends StripeObject { .StatusDetail> statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code + * inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -5184,6 +8288,13 @@ public static class HoldsCurrencies extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class Eur extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -5193,13 +8304,51 @@ public static class Eur extends StripeObject { @SerializedName("status") String status; - /** - * Additional details about the capability's status. This value is empty when {@code - * status} is {@code active}. - */ - @SerializedName("status_details") - List - statusDetails; + /** + * Additional details about the capability's status. This value is empty when {@code + * status} is {@code active}. + */ + @SerializedName("status_details") + List + statusDetails; + + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code + * inactive}. + */ + @SerializedName("status") + String status; + } + } /** * For more details about StatusDetail, please refer to the statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code + * inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -5288,6 +8482,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class Usd extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -5305,6 +8506,44 @@ public static class Usd extends StripeObject { List statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code + * inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -5340,6 +8579,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class Usdc extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -5357,6 +8603,44 @@ public static class Usdc extends StripeObject { List statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code + * inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -5406,6 +8690,13 @@ public static class InboundTransfers extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class BankAccounts extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -5425,6 +8716,44 @@ public static class BankAccounts extends StripeObject { .StatusDetail> statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code + * inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -5498,6 +8827,13 @@ public static class OutboundPayments extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class BankAccounts extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -5517,6 +8853,44 @@ public static class BankAccounts extends StripeObject { .StatusDetail> statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code + * inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -5552,6 +8926,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class Cards extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -5569,6 +8950,44 @@ public static class Cards extends StripeObject { List statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code + * inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -5606,6 +9025,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class CryptoWallets extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -5625,6 +9051,44 @@ public static class CryptoWallets extends StripeObject { .StatusDetail> statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code + * inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -5663,6 +9127,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class FinancialAccounts extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -5682,6 +9153,44 @@ public static class FinancialAccounts extends StripeObject { .StatusDetail> statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code + * inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -5717,6 +9226,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class PaperChecks extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -5736,6 +9252,44 @@ public static class PaperChecks extends StripeObject { .StatusDetail> statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code + * inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -5801,6 +9355,13 @@ public static class OutboundTransfers extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class BankAccounts extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -5820,6 +9381,44 @@ public static class BankAccounts extends StripeObject { .StatusDetail> statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code + * inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -5857,6 +9456,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class CryptoWallets extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -5876,6 +9482,44 @@ public static class CryptoWallets extends StripeObject { .StatusDetail> statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code + * inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. @@ -5914,6 +9558,13 @@ public static class StatusDetail extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class FinancialAccounts extends StripeObject { + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * The status of the Capability. * @@ -5933,6 +9584,44 @@ public static class FinancialAccounts extends StripeObject { .StatusDetail> statusDetails; + /** + * Protections applied to this capability, keyed by protection type (e.g. + * "psp_migration"). + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Protections extends StripeObject { + /** Protection details for PSP migration. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + /** Protection details for PSP migration. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration extends StripeObject { + /** The time until which the protection will expire, as a Unix timestamp. */ + @SerializedName("expires_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long expiresAt; + + /** The time at which the protection was requested, as a Unix timestamp. */ + @SerializedName("requested_at") + @JsonAdapter(StringInt64TypeAdapter.class) + Long requestedAt; + + /** + * The current status of the protection. + * + *

One of {@code active}, {@code disrupted}, {@code expired}, or {@code + * inactive}. + */ + @SerializedName("status") + String status; + } + } + /** * For more details about StatusDetail, please refer to the API Reference. diff --git a/src/main/java/com/stripe/param/ConfirmationTokenCreateParams.java b/src/main/java/com/stripe/param/ConfirmationTokenCreateParams.java index f24c2706eec..42fbb368720 100644 --- a/src/main/java/com/stripe/param/ConfirmationTokenCreateParams.java +++ b/src/main/java/com/stripe/param/ConfirmationTokenCreateParams.java @@ -653,6 +653,13 @@ public static class PaymentMethodData { @SerializedName("swish") Swish swish; + /** + * If this is a {@code tamara} PaymentMethod, this hash contains details about the Tamara + * payment method. + */ + @SerializedName("tamara") + Tamara tamara; + /** * If this is a TWINT PaymentMethod, this hash contains details about the TWINT payment method. */ @@ -759,6 +766,7 @@ private PaymentMethodData( StripeBalance stripeBalance, Sunbit sunbit, Swish swish, + Tamara tamara, Twint twint, Type type, Upi upi, @@ -828,6 +836,7 @@ private PaymentMethodData( this.stripeBalance = stripeBalance; this.sunbit = sunbit; this.swish = swish; + this.tamara = tamara; this.twint = twint; this.type = type; this.upi = upi; @@ -967,6 +976,8 @@ public static class Builder { private Swish swish; + private Tamara tamara; + private Twint twint; private Type type; @@ -1045,6 +1056,7 @@ public ConfirmationTokenCreateParams.PaymentMethodData build() { this.stripeBalance, this.sunbit, this.swish, + this.tamara, this.twint, this.type, this.upi, @@ -1679,6 +1691,15 @@ public Builder setSwish(ConfirmationTokenCreateParams.PaymentMethodData.Swish sw return this; } + /** + * If this is a {@code tamara} PaymentMethod, this hash contains details about the Tamara + * payment method. + */ + public Builder setTamara(ConfirmationTokenCreateParams.PaymentMethodData.Tamara tamara) { + this.tamara = tamara; + return this; + } + /** * If this is a TWINT PaymentMethod, this hash contains details about the TWINT payment * method. @@ -6530,6 +6551,64 @@ public Builder putAllExtraParam(Map map) { } } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Tamara { + /** + * 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; + + private Tamara(Map extraParams) { + this.extraParams = extraParams; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + /** Finalize and obtain parameter instance from this builder. */ + public ConfirmationTokenCreateParams.PaymentMethodData.Tamara build() { + return new ConfirmationTokenCreateParams.PaymentMethodData.Tamara(this.extraParams); + } + + /** + * 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 ConfirmationTokenCreateParams.PaymentMethodData.Tamara#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 ConfirmationTokenCreateParams.PaymentMethodData.Tamara#extraParams} for + * the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + } + } + @Getter @EqualsAndHashCode(callSuper = false) public static class Twint { @@ -7284,6 +7363,9 @@ public enum Type implements ApiRequestParams.EnumParam { @SerializedName("swish") SWISH("swish"), + @SerializedName("tamara") + TAMARA("tamara"), + @SerializedName("twint") TWINT("twint"), diff --git a/src/main/java/com/stripe/param/CustomerListPaymentMethodsParams.java b/src/main/java/com/stripe/param/CustomerListPaymentMethodsParams.java index 1c2f0af5a51..32b08ce1b8b 100644 --- a/src/main/java/com/stripe/param/CustomerListPaymentMethodsParams.java +++ b/src/main/java/com/stripe/param/CustomerListPaymentMethodsParams.java @@ -414,6 +414,9 @@ public enum Type implements ApiRequestParams.EnumParam { @SerializedName("swish") SWISH("swish"), + @SerializedName("tamara") + TAMARA("tamara"), + @SerializedName("twint") TWINT("twint"), diff --git a/src/main/java/com/stripe/param/CustomerPaymentMethodListParams.java b/src/main/java/com/stripe/param/CustomerPaymentMethodListParams.java index c26db9c2b54..fef377b5509 100644 --- a/src/main/java/com/stripe/param/CustomerPaymentMethodListParams.java +++ b/src/main/java/com/stripe/param/CustomerPaymentMethodListParams.java @@ -414,6 +414,9 @@ public enum Type implements ApiRequestParams.EnumParam { @SerializedName("swish") SWISH("swish"), + @SerializedName("tamara") + TAMARA("tamara"), + @SerializedName("twint") TWINT("twint"), diff --git a/src/main/java/com/stripe/param/PaymentIntentConfirmParams.java b/src/main/java/com/stripe/param/PaymentIntentConfirmParams.java index a9de7814161..3969974d743 100644 --- a/src/main/java/com/stripe/param/PaymentIntentConfirmParams.java +++ b/src/main/java/com/stripe/param/PaymentIntentConfirmParams.java @@ -16723,6 +16723,13 @@ public static class PaymentMethodData { @SerializedName("swish") Swish swish; + /** + * If this is a {@code tamara} PaymentMethod, this hash contains details about the Tamara + * payment method. + */ + @SerializedName("tamara") + Tamara tamara; + /** * If this is a TWINT PaymentMethod, this hash contains details about the TWINT payment method. */ @@ -16829,6 +16836,7 @@ private PaymentMethodData( StripeBalance stripeBalance, Sunbit sunbit, Swish swish, + Tamara tamara, Twint twint, Type type, Upi upi, @@ -16898,6 +16906,7 @@ private PaymentMethodData( this.stripeBalance = stripeBalance; this.sunbit = sunbit; this.swish = swish; + this.tamara = tamara; this.twint = twint; this.type = type; this.upi = upi; @@ -17037,6 +17046,8 @@ public static class Builder { private Swish swish; + private Tamara tamara; + private Twint twint; private Type type; @@ -17115,6 +17126,7 @@ public PaymentIntentConfirmParams.PaymentMethodData build() { this.stripeBalance, this.sunbit, this.swish, + this.tamara, this.twint, this.type, this.upi, @@ -17743,6 +17755,15 @@ public Builder setSwish(PaymentIntentConfirmParams.PaymentMethodData.Swish swish return this; } + /** + * If this is a {@code tamara} PaymentMethod, this hash contains details about the Tamara + * payment method. + */ + public Builder setTamara(PaymentIntentConfirmParams.PaymentMethodData.Tamara tamara) { + this.tamara = tamara; + return this; + } + /** * If this is a TWINT PaymentMethod, this hash contains details about the TWINT payment * method. @@ -22575,6 +22596,64 @@ public Builder putAllExtraParam(Map map) { } } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Tamara { + /** + * 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; + + private Tamara(Map extraParams) { + this.extraParams = extraParams; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentConfirmParams.PaymentMethodData.Tamara build() { + return new PaymentIntentConfirmParams.PaymentMethodData.Tamara(this.extraParams); + } + + /** + * 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 PaymentIntentConfirmParams.PaymentMethodData.Tamara#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 PaymentIntentConfirmParams.PaymentMethodData.Tamara#extraParams} for the + * field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + } + } + @Getter @EqualsAndHashCode(callSuper = false) public static class Twint { @@ -23327,6 +23406,9 @@ public enum Type implements ApiRequestParams.EnumParam { @SerializedName("swish") SWISH("swish"), + @SerializedName("tamara") + TAMARA("tamara"), + @SerializedName("twint") TWINT("twint"), @@ -49740,6 +49822,9 @@ public enum AllowedPaymentMethodType implements ApiRequestParams.EnumParam { @SerializedName("swish") SWISH("swish"), + @SerializedName("tamara") + TAMARA("tamara"), + @SerializedName("twint") TWINT("twint"), @@ -49950,6 +50035,9 @@ public enum ExcludedPaymentMethodType implements ApiRequestParams.EnumParam { @SerializedName("swish") SWISH("swish"), + @SerializedName("tamara") + TAMARA("tamara"), + @SerializedName("twint") TWINT("twint"), diff --git a/src/main/java/com/stripe/param/PaymentIntentCreateParams.java b/src/main/java/com/stripe/param/PaymentIntentCreateParams.java index 7484919b3da..d06184a565e 100644 --- a/src/main/java/com/stripe/param/PaymentIntentCreateParams.java +++ b/src/main/java/com/stripe/param/PaymentIntentCreateParams.java @@ -17223,6 +17223,13 @@ public static class PaymentMethodData { @SerializedName("swish") Swish swish; + /** + * If this is a {@code tamara} PaymentMethod, this hash contains details about the Tamara + * payment method. + */ + @SerializedName("tamara") + Tamara tamara; + /** * If this is a TWINT PaymentMethod, this hash contains details about the TWINT payment method. */ @@ -17329,6 +17336,7 @@ private PaymentMethodData( StripeBalance stripeBalance, Sunbit sunbit, Swish swish, + Tamara tamara, Twint twint, Type type, Upi upi, @@ -17398,6 +17406,7 @@ private PaymentMethodData( this.stripeBalance = stripeBalance; this.sunbit = sunbit; this.swish = swish; + this.tamara = tamara; this.twint = twint; this.type = type; this.upi = upi; @@ -17537,6 +17546,8 @@ public static class Builder { private Swish swish; + private Tamara tamara; + private Twint twint; private Type type; @@ -17615,6 +17626,7 @@ public PaymentIntentCreateParams.PaymentMethodData build() { this.stripeBalance, this.sunbit, this.swish, + this.tamara, this.twint, this.type, this.upi, @@ -18235,6 +18247,15 @@ public Builder setSwish(PaymentIntentCreateParams.PaymentMethodData.Swish swish) return this; } + /** + * If this is a {@code tamara} PaymentMethod, this hash contains details about the Tamara + * payment method. + */ + public Builder setTamara(PaymentIntentCreateParams.PaymentMethodData.Tamara tamara) { + this.tamara = tamara; + return this; + } + /** * If this is a TWINT PaymentMethod, this hash contains details about the TWINT payment * method. @@ -23061,6 +23082,64 @@ public Builder putAllExtraParam(Map map) { } } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Tamara { + /** + * 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; + + private Tamara(Map extraParams) { + this.extraParams = extraParams; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentCreateParams.PaymentMethodData.Tamara build() { + return new PaymentIntentCreateParams.PaymentMethodData.Tamara(this.extraParams); + } + + /** + * 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 PaymentIntentCreateParams.PaymentMethodData.Tamara#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 PaymentIntentCreateParams.PaymentMethodData.Tamara#extraParams} for the + * field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + } + } + @Getter @EqualsAndHashCode(callSuper = false) public static class Twint { @@ -23813,6 +23892,9 @@ public enum Type implements ApiRequestParams.EnumParam { @SerializedName("swish") SWISH("swish"), + @SerializedName("tamara") + TAMARA("tamara"), + @SerializedName("twint") TWINT("twint"), @@ -50623,6 +50705,9 @@ public enum AllowedPaymentMethodType implements ApiRequestParams.EnumParam { @SerializedName("swish") SWISH("swish"), + @SerializedName("tamara") + TAMARA("tamara"), + @SerializedName("twint") TWINT("twint"), @@ -50848,6 +50933,9 @@ public enum ExcludedPaymentMethodType implements ApiRequestParams.EnumParam { @SerializedName("swish") SWISH("swish"), + @SerializedName("tamara") + TAMARA("tamara"), + @SerializedName("twint") TWINT("twint"), diff --git a/src/main/java/com/stripe/param/PaymentIntentUpdateParams.java b/src/main/java/com/stripe/param/PaymentIntentUpdateParams.java index ac024498d6c..8b277689edf 100644 --- a/src/main/java/com/stripe/param/PaymentIntentUpdateParams.java +++ b/src/main/java/com/stripe/param/PaymentIntentUpdateParams.java @@ -18179,6 +18179,13 @@ public static class PaymentMethodData { @SerializedName("swish") Swish swish; + /** + * If this is a {@code tamara} PaymentMethod, this hash contains details about the Tamara + * payment method. + */ + @SerializedName("tamara") + Tamara tamara; + /** * If this is a TWINT PaymentMethod, this hash contains details about the TWINT payment method. */ @@ -18285,6 +18292,7 @@ private PaymentMethodData( StripeBalance stripeBalance, Sunbit sunbit, Swish swish, + Tamara tamara, Twint twint, Type type, Upi upi, @@ -18354,6 +18362,7 @@ private PaymentMethodData( this.stripeBalance = stripeBalance; this.sunbit = sunbit; this.swish = swish; + this.tamara = tamara; this.twint = twint; this.type = type; this.upi = upi; @@ -18493,6 +18502,8 @@ public static class Builder { private Swish swish; + private Tamara tamara; + private Twint twint; private Type type; @@ -18571,6 +18582,7 @@ public PaymentIntentUpdateParams.PaymentMethodData build() { this.stripeBalance, this.sunbit, this.swish, + this.tamara, this.twint, this.type, this.upi, @@ -19197,6 +19209,15 @@ public Builder setSwish(PaymentIntentUpdateParams.PaymentMethodData.Swish swish) return this; } + /** + * If this is a {@code tamara} PaymentMethod, this hash contains details about the Tamara + * payment method. + */ + public Builder setTamara(PaymentIntentUpdateParams.PaymentMethodData.Tamara tamara) { + this.tamara = tamara; + return this; + } + /** * If this is a TWINT PaymentMethod, this hash contains details about the TWINT payment * method. @@ -24209,6 +24230,64 @@ public Builder putAllExtraParam(Map map) { } } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Tamara { + /** + * 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; + + private Tamara(Map extraParams) { + this.extraParams = extraParams; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentUpdateParams.PaymentMethodData.Tamara build() { + return new PaymentIntentUpdateParams.PaymentMethodData.Tamara(this.extraParams); + } + + /** + * 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 PaymentIntentUpdateParams.PaymentMethodData.Tamara#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 PaymentIntentUpdateParams.PaymentMethodData.Tamara#extraParams} for the + * field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + } + } + @Getter @EqualsAndHashCode(callSuper = false) public static class Twint { @@ -24988,6 +25067,9 @@ public enum Type implements ApiRequestParams.EnumParam { @SerializedName("swish") SWISH("swish"), + @SerializedName("tamara") + TAMARA("tamara"), + @SerializedName("twint") TWINT("twint"), @@ -52702,6 +52784,9 @@ public enum AllowedPaymentMethodType implements ApiRequestParams.EnumParam { @SerializedName("swish") SWISH("swish"), + @SerializedName("tamara") + TAMARA("tamara"), + @SerializedName("twint") TWINT("twint"), @@ -52912,6 +52997,9 @@ public enum ExcludedPaymentMethodType implements ApiRequestParams.EnumParam { @SerializedName("swish") SWISH("swish"), + @SerializedName("tamara") + TAMARA("tamara"), + @SerializedName("twint") TWINT("twint"), diff --git a/src/main/java/com/stripe/param/PaymentMethodCreateParams.java b/src/main/java/com/stripe/param/PaymentMethodCreateParams.java index a28d29e243e..e3467600090 100644 --- a/src/main/java/com/stripe/param/PaymentMethodCreateParams.java +++ b/src/main/java/com/stripe/param/PaymentMethodCreateParams.java @@ -474,6 +474,13 @@ public class PaymentMethodCreateParams extends ApiRequestParams { @SerializedName("swish") Swish swish; + /** + * If this is a {@code tamara} PaymentMethod, this hash contains details about the Tamara payment + * method. + */ + @SerializedName("tamara") + Tamara tamara; + /** * If this is a TWINT PaymentMethod, this hash contains details about the TWINT payment method. */ @@ -583,6 +590,7 @@ private PaymentMethodCreateParams( StripeBalance stripeBalance, Sunbit sunbit, Swish swish, + Tamara tamara, Twint twint, Type type, Upi upi, @@ -656,6 +664,7 @@ private PaymentMethodCreateParams( this.stripeBalance = stripeBalance; this.sunbit = sunbit; this.swish = swish; + this.tamara = tamara; this.twint = twint; this.type = type; this.upi = upi; @@ -803,6 +812,8 @@ public static class Builder { private Swish swish; + private Tamara tamara; + private Twint twint; private Type type; @@ -885,6 +896,7 @@ public PaymentMethodCreateParams build() { this.stripeBalance, this.sunbit, this.swish, + this.tamara, this.twint, this.type, this.upi, @@ -1556,6 +1568,15 @@ public Builder setSwish(PaymentMethodCreateParams.Swish swish) { return this; } + /** + * If this is a {@code tamara} PaymentMethod, this hash contains details about the Tamara + * payment method. + */ + public Builder setTamara(PaymentMethodCreateParams.Tamara tamara) { + this.tamara = tamara; + return this; + } + /** * If this is a TWINT PaymentMethod, this hash contains details about the TWINT payment method. */ @@ -6553,6 +6574,62 @@ public Builder putAllExtraParam(Map map) { } } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Tamara { + /** + * 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; + + private Tamara(Map extraParams) { + this.extraParams = extraParams; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentMethodCreateParams.Tamara build() { + return new PaymentMethodCreateParams.Tamara(this.extraParams); + } + + /** + * 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 + * PaymentMethodCreateParams.Tamara#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 PaymentMethodCreateParams.Tamara#extraParams} for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + } + } + @Getter @EqualsAndHashCode(callSuper = false) public static class Token { @@ -7372,6 +7449,9 @@ public enum Type implements ApiRequestParams.EnumParam { @SerializedName("swish") SWISH("swish"), + @SerializedName("tamara") + TAMARA("tamara"), + @SerializedName("twint") TWINT("twint"), diff --git a/src/main/java/com/stripe/param/PaymentMethodListParams.java b/src/main/java/com/stripe/param/PaymentMethodListParams.java index 91659ea1d52..8c33a75d9cf 100644 --- a/src/main/java/com/stripe/param/PaymentMethodListParams.java +++ b/src/main/java/com/stripe/param/PaymentMethodListParams.java @@ -442,6 +442,9 @@ public enum Type implements ApiRequestParams.EnumParam { @SerializedName("swish") SWISH("swish"), + @SerializedName("tamara") + TAMARA("tamara"), + @SerializedName("twint") TWINT("twint"), diff --git a/src/main/java/com/stripe/param/SetupIntentConfirmParams.java b/src/main/java/com/stripe/param/SetupIntentConfirmParams.java index 0829d17cfdd..5f64e1b3199 100644 --- a/src/main/java/com/stripe/param/SetupIntentConfirmParams.java +++ b/src/main/java/com/stripe/param/SetupIntentConfirmParams.java @@ -1082,6 +1082,13 @@ public static class PaymentMethodData { @SerializedName("swish") Swish swish; + /** + * If this is a {@code tamara} PaymentMethod, this hash contains details about the Tamara + * payment method. + */ + @SerializedName("tamara") + Tamara tamara; + /** * If this is a TWINT PaymentMethod, this hash contains details about the TWINT payment method. */ @@ -1188,6 +1195,7 @@ private PaymentMethodData( StripeBalance stripeBalance, Sunbit sunbit, Swish swish, + Tamara tamara, Twint twint, Type type, Upi upi, @@ -1257,6 +1265,7 @@ private PaymentMethodData( this.stripeBalance = stripeBalance; this.sunbit = sunbit; this.swish = swish; + this.tamara = tamara; this.twint = twint; this.type = type; this.upi = upi; @@ -1396,6 +1405,8 @@ public static class Builder { private Swish swish; + private Tamara tamara; + private Twint twint; private Type type; @@ -1474,6 +1485,7 @@ public SetupIntentConfirmParams.PaymentMethodData build() { this.stripeBalance, this.sunbit, this.swish, + this.tamara, this.twint, this.type, this.upi, @@ -2094,6 +2106,15 @@ public Builder setSwish(SetupIntentConfirmParams.PaymentMethodData.Swish swish) return this; } + /** + * If this is a {@code tamara} PaymentMethod, this hash contains details about the Tamara + * payment method. + */ + public Builder setTamara(SetupIntentConfirmParams.PaymentMethodData.Tamara tamara) { + this.tamara = tamara; + return this; + } + /** * If this is a TWINT PaymentMethod, this hash contains details about the TWINT payment * method. @@ -6920,6 +6941,64 @@ public Builder putAllExtraParam(Map map) { } } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Tamara { + /** + * 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; + + private Tamara(Map extraParams) { + this.extraParams = extraParams; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + /** Finalize and obtain parameter instance from this builder. */ + public SetupIntentConfirmParams.PaymentMethodData.Tamara build() { + return new SetupIntentConfirmParams.PaymentMethodData.Tamara(this.extraParams); + } + + /** + * 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 SetupIntentConfirmParams.PaymentMethodData.Tamara#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 SetupIntentConfirmParams.PaymentMethodData.Tamara#extraParams} for the + * field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + } + } + @Getter @EqualsAndHashCode(callSuper = false) public static class Twint { @@ -7671,6 +7750,9 @@ public enum Type implements ApiRequestParams.EnumParam { @SerializedName("swish") SWISH("swish"), + @SerializedName("tamara") + TAMARA("tamara"), + @SerializedName("twint") TWINT("twint"), diff --git a/src/main/java/com/stripe/param/SetupIntentCreateParams.java b/src/main/java/com/stripe/param/SetupIntentCreateParams.java index 3569dd62dec..ddfb99fce6a 100644 --- a/src/main/java/com/stripe/param/SetupIntentCreateParams.java +++ b/src/main/java/com/stripe/param/SetupIntentCreateParams.java @@ -1620,6 +1620,13 @@ public static class PaymentMethodData { @SerializedName("swish") Swish swish; + /** + * If this is a {@code tamara} PaymentMethod, this hash contains details about the Tamara + * payment method. + */ + @SerializedName("tamara") + Tamara tamara; + /** * If this is a TWINT PaymentMethod, this hash contains details about the TWINT payment method. */ @@ -1726,6 +1733,7 @@ private PaymentMethodData( StripeBalance stripeBalance, Sunbit sunbit, Swish swish, + Tamara tamara, Twint twint, Type type, Upi upi, @@ -1795,6 +1803,7 @@ private PaymentMethodData( this.stripeBalance = stripeBalance; this.sunbit = sunbit; this.swish = swish; + this.tamara = tamara; this.twint = twint; this.type = type; this.upi = upi; @@ -1934,6 +1943,8 @@ public static class Builder { private Swish swish; + private Tamara tamara; + private Twint twint; private Type type; @@ -2012,6 +2023,7 @@ public SetupIntentCreateParams.PaymentMethodData build() { this.stripeBalance, this.sunbit, this.swish, + this.tamara, this.twint, this.type, this.upi, @@ -2631,6 +2643,15 @@ public Builder setSwish(SetupIntentCreateParams.PaymentMethodData.Swish swish) { return this; } + /** + * If this is a {@code tamara} PaymentMethod, this hash contains details about the Tamara + * payment method. + */ + public Builder setTamara(SetupIntentCreateParams.PaymentMethodData.Tamara tamara) { + this.tamara = tamara; + return this; + } + /** * If this is a TWINT PaymentMethod, this hash contains details about the TWINT payment * method. @@ -7454,6 +7475,64 @@ public Builder putAllExtraParam(Map map) { } } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Tamara { + /** + * 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; + + private Tamara(Map extraParams) { + this.extraParams = extraParams; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + /** Finalize and obtain parameter instance from this builder. */ + public SetupIntentCreateParams.PaymentMethodData.Tamara build() { + return new SetupIntentCreateParams.PaymentMethodData.Tamara(this.extraParams); + } + + /** + * 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 SetupIntentCreateParams.PaymentMethodData.Tamara#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 SetupIntentCreateParams.PaymentMethodData.Tamara#extraParams} for the + * field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + } + } + @Getter @EqualsAndHashCode(callSuper = false) public static class Twint { @@ -8205,6 +8284,9 @@ public enum Type implements ApiRequestParams.EnumParam { @SerializedName("swish") SWISH("swish"), + @SerializedName("tamara") + TAMARA("tamara"), + @SerializedName("twint") TWINT("twint"), @@ -14243,6 +14325,9 @@ public enum ExcludedPaymentMethodType implements ApiRequestParams.EnumParam { @SerializedName("swish") SWISH("swish"), + @SerializedName("tamara") + TAMARA("tamara"), + @SerializedName("twint") TWINT("twint"), diff --git a/src/main/java/com/stripe/param/SetupIntentUpdateParams.java b/src/main/java/com/stripe/param/SetupIntentUpdateParams.java index 019ffdfcc25..2c592bfc742 100644 --- a/src/main/java/com/stripe/param/SetupIntentUpdateParams.java +++ b/src/main/java/com/stripe/param/SetupIntentUpdateParams.java @@ -989,6 +989,13 @@ public static class PaymentMethodData { @SerializedName("swish") Swish swish; + /** + * If this is a {@code tamara} PaymentMethod, this hash contains details about the Tamara + * payment method. + */ + @SerializedName("tamara") + Tamara tamara; + /** * If this is a TWINT PaymentMethod, this hash contains details about the TWINT payment method. */ @@ -1095,6 +1102,7 @@ private PaymentMethodData( StripeBalance stripeBalance, Sunbit sunbit, Swish swish, + Tamara tamara, Twint twint, Type type, Upi upi, @@ -1164,6 +1172,7 @@ private PaymentMethodData( this.stripeBalance = stripeBalance; this.sunbit = sunbit; this.swish = swish; + this.tamara = tamara; this.twint = twint; this.type = type; this.upi = upi; @@ -1303,6 +1312,8 @@ public static class Builder { private Swish swish; + private Tamara tamara; + private Twint twint; private Type type; @@ -1381,6 +1392,7 @@ public SetupIntentUpdateParams.PaymentMethodData build() { this.stripeBalance, this.sunbit, this.swish, + this.tamara, this.twint, this.type, this.upi, @@ -2006,6 +2018,15 @@ public Builder setSwish(SetupIntentUpdateParams.PaymentMethodData.Swish swish) { return this; } + /** + * If this is a {@code tamara} PaymentMethod, this hash contains details about the Tamara + * payment method. + */ + public Builder setTamara(SetupIntentUpdateParams.PaymentMethodData.Tamara tamara) { + this.tamara = tamara; + return this; + } + /** * If this is a TWINT PaymentMethod, this hash contains details about the TWINT payment * method. @@ -7015,6 +7036,64 @@ public Builder putAllExtraParam(Map map) { } } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Tamara { + /** + * 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; + + private Tamara(Map extraParams) { + this.extraParams = extraParams; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + /** Finalize and obtain parameter instance from this builder. */ + public SetupIntentUpdateParams.PaymentMethodData.Tamara build() { + return new SetupIntentUpdateParams.PaymentMethodData.Tamara(this.extraParams); + } + + /** + * 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 SetupIntentUpdateParams.PaymentMethodData.Tamara#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 SetupIntentUpdateParams.PaymentMethodData.Tamara#extraParams} for the + * field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + } + } + @Getter @EqualsAndHashCode(callSuper = false) public static class Twint { @@ -7793,6 +7872,9 @@ public enum Type implements ApiRequestParams.EnumParam { @SerializedName("swish") SWISH("swish"), + @SerializedName("tamara") + TAMARA("tamara"), + @SerializedName("twint") TWINT("twint"), @@ -13927,6 +14009,9 @@ public enum ExcludedPaymentMethodType implements ApiRequestParams.EnumParam { @SerializedName("swish") SWISH("swish"), + @SerializedName("tamara") + TAMARA("tamara"), + @SerializedName("twint") TWINT("twint"), diff --git a/src/main/java/com/stripe/param/v2/core/AccountCreateParams.java b/src/main/java/com/stripe/param/v2/core/AccountCreateParams.java index ecc586fbcb2..bd36712f4a0 100644 --- a/src/main/java/com/stripe/param/v2/core/AccountCreateParams.java +++ b/src/main/java/com/stripe/param/v2/core/AccountCreateParams.java @@ -858,6 +858,12 @@ public static class ChargeCard { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * Required. To request a new Capability for an account, pass true. * There can be a delay before the requested Capability becomes active. @@ -865,8 +871,10 @@ public static class ChargeCard { @SerializedName("requested") Boolean requested; - private ChargeCard(Map extraParams, Boolean requested) { + private ChargeCard( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -877,6 +885,8 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ @@ -884,7 +894,7 @@ public static class Builder { .ChargeCard build() { return new AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial - .Celtic.ChargeCard(this.extraParams, this.requested); + .Celtic.ChargeCard(this.extraParams, this.protections, this.requested); } /** @@ -917,6 +927,17 @@ public Builder putAllExtraParam(Map map) { return this; } + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.Celtic + .ChargeCard.Protections + protections) { + this.protections = protections; + return this; + } + /** * Required. To request a new Capability for an account, pass true. * There can be a delay before the requested Capability becomes active. @@ -926,6 +947,164 @@ public Builder setRequested(Boolean requested) { return this; } } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial + .Celtic.ChargeCard.Protections + build() { + return new AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial + .Celtic.ChargeCard.Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.Celtic.ChargeCard.Protections#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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.Celtic.ChargeCard.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.Celtic + .ChargeCard.Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial + .Celtic.ChargeCard.Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.CardCreator.Capabilities + .Commercial.Celtic.ChargeCard.Protections.PspMigration( + this.extraParams, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.Celtic.ChargeCard.Protections.PspMigration#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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.Celtic.ChargeCard.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } } @Getter @@ -941,6 +1120,12 @@ public static class SpendCard { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * Required. To request a new Capability for an account, pass true. * There can be a delay before the requested Capability becomes active. @@ -948,8 +1133,10 @@ public static class SpendCard { @SerializedName("requested") Boolean requested; - private SpendCard(Map extraParams, Boolean requested) { + private SpendCard( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -960,6 +1147,8 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ @@ -967,7 +1156,7 @@ public static class Builder { .SpendCard build() { return new AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial - .Celtic.SpendCard(this.extraParams, this.requested); + .Celtic.SpendCard(this.extraParams, this.protections, this.requested); } /** @@ -1000,6 +1189,17 @@ public Builder putAllExtraParam(Map map) { return this; } + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.Celtic + .SpendCard.Protections + protections) { + this.protections = protections; + return this; + } + /** * Required. To request a new Capability for an account, pass true. * There can be a delay before the requested Capability becomes active. @@ -1009,73 +1209,231 @@ public Builder setRequested(Boolean requested) { return this; } } - } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class CrossRiverBank { - /** Can create commercial issuing charge cards with Cross River Bank as BIN sponsor. */ - @SerializedName("charge_card") - ChargeCard chargeCard; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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; - /** - * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - /** Can create commercial issuing prepaid cards with Cross River Bank as BIN sponsor. */ - @SerializedName("prepaid_card") - PrepaidCard prepaidCard; + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - /** Can create commercial issuing spend cards with Cross River Bank as BIN sponsor. */ - @SerializedName("spend_card") - SpendCard spendCard; + public static Builder builder() { + return new Builder(); + } - private CrossRiverBank( - ChargeCard chargeCard, - Map extraParams, - PrepaidCard prepaidCard, - SpendCard spendCard) { - this.chargeCard = chargeCard; - this.extraParams = extraParams; - this.prepaidCard = prepaidCard; - this.spendCard = spendCard; - } + public static class Builder { + private Map extraParams; - public static Builder builder() { - return new Builder(); - } + private PspMigration pspMigration; - public static class Builder { - private ChargeCard chargeCard; + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial + .Celtic.SpendCard.Protections + build() { + return new AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial + .Celtic.SpendCard.Protections(this.extraParams, this.pspMigration); + } - private Map extraParams; + /** + * 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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.Celtic.SpendCard.Protections#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; + } - private PrepaidCard prepaidCard; + /** + * 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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.Celtic.SpendCard.Protections#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - private SpendCard spendCard; + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.Celtic + .SpendCard.Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial - .CrossRiverBank - build() { - return new AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial - .CrossRiverBank( - this.chargeCard, this.extraParams, this.prepaidCard, this.spendCard); - } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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; - /** - * Can create commercial issuing charge cards with Cross River Bank as BIN sponsor. - */ - public Builder setChargeCard( - AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial - .CrossRiverBank.ChargeCard + /** Required. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial + .Celtic.SpendCard.Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.CardCreator.Capabilities + .Commercial.Celtic.SpendCard.Protections.PspMigration( + this.extraParams, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.Celtic.SpendCard.Protections.PspMigration#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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.Celtic.SpendCard.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class CrossRiverBank { + /** Can create commercial issuing charge cards with Cross River Bank as BIN sponsor. */ + @SerializedName("charge_card") + ChargeCard chargeCard; + + /** + * 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; + + /** Can create commercial issuing prepaid cards with Cross River Bank as BIN sponsor. */ + @SerializedName("prepaid_card") + PrepaidCard prepaidCard; + + /** Can create commercial issuing spend cards with Cross River Bank as BIN sponsor. */ + @SerializedName("spend_card") + SpendCard spendCard; + + private CrossRiverBank( + ChargeCard chargeCard, + Map extraParams, + PrepaidCard prepaidCard, + SpendCard spendCard) { + this.chargeCard = chargeCard; + this.extraParams = extraParams; + this.prepaidCard = prepaidCard; + this.spendCard = spendCard; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private ChargeCard chargeCard; + + private Map extraParams; + + private PrepaidCard prepaidCard; + + private SpendCard spendCard; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial + .CrossRiverBank + build() { + return new AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial + .CrossRiverBank( + this.chargeCard, this.extraParams, this.prepaidCard, this.spendCard); + } + + /** + * Can create commercial issuing charge cards with Cross River Bank as BIN sponsor. + */ + public Builder setChargeCard( + AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial + .CrossRiverBank.ChargeCard chargeCard) { this.chargeCard = chargeCard; return this; @@ -1145,6 +1503,12 @@ public static class ChargeCard { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * Required. To request a new Capability for an account, pass true. * There can be a delay before the requested Capability becomes active. @@ -1152,8 +1516,10 @@ public static class ChargeCard { @SerializedName("requested") Boolean requested; - private ChargeCard(Map extraParams, Boolean requested) { + private ChargeCard( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -1164,6 +1530,8 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ @@ -1171,7 +1539,8 @@ public static class Builder { .CrossRiverBank.ChargeCard build() { return new AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial - .CrossRiverBank.ChargeCard(this.extraParams, this.requested); + .CrossRiverBank.ChargeCard( + this.extraParams, this.protections, this.requested); } /** @@ -1204,6 +1573,17 @@ public Builder putAllExtraParam(Map map) { return this; } + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial + .CrossRiverBank.ChargeCard.Protections + protections) { + this.protections = protections; + return this; + } + /** * Required. To request a new Capability for an account, pass true. * There can be a delay before the requested Capability becomes active. @@ -1213,6 +1593,164 @@ public Builder setRequested(Boolean requested) { return this; } } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial + .CrossRiverBank.ChargeCard.Protections + build() { + return new AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial + .CrossRiverBank.ChargeCard.Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.CrossRiverBank.ChargeCard.Protections#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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.CrossRiverBank.ChargeCard.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial + .CrossRiverBank.ChargeCard.Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial + .CrossRiverBank.ChargeCard.Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.CardCreator.Capabilities + .Commercial.CrossRiverBank.ChargeCard.Protections.PspMigration( + this.extraParams, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.CrossRiverBank.ChargeCard.Protections.PspMigration#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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.CrossRiverBank.ChargeCard.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } } @Getter @@ -1228,6 +1766,12 @@ public static class PrepaidCard { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * Required. To request a new Capability for an account, pass true. * There can be a delay before the requested Capability becomes active. @@ -1235,8 +1779,10 @@ public static class PrepaidCard { @SerializedName("requested") Boolean requested; - private PrepaidCard(Map extraParams, Boolean requested) { + private PrepaidCard( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -1247,6 +1793,8 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ @@ -1254,7 +1802,8 @@ public static class Builder { .CrossRiverBank.PrepaidCard build() { return new AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial - .CrossRiverBank.PrepaidCard(this.extraParams, this.requested); + .CrossRiverBank.PrepaidCard( + this.extraParams, this.protections, this.requested); } /** @@ -1287,6 +1836,17 @@ public Builder putAllExtraParam(Map map) { return this; } + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial + .CrossRiverBank.PrepaidCard.Protections + protections) { + this.protections = protections; + return this; + } + /** * Required. To request a new Capability for an account, pass true. * There can be a delay before the requested Capability becomes active. @@ -1296,6 +1856,165 @@ public Builder setRequested(Boolean requested) { return this; } } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial + .CrossRiverBank.PrepaidCard.Protections + build() { + return new AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial + .CrossRiverBank.PrepaidCard.Protections( + this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.CrossRiverBank.PrepaidCard.Protections#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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.CrossRiverBank.PrepaidCard.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial + .CrossRiverBank.PrepaidCard.Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial + .CrossRiverBank.PrepaidCard.Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.CardCreator.Capabilities + .Commercial.CrossRiverBank.PrepaidCard.Protections.PspMigration( + this.extraParams, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.CrossRiverBank.PrepaidCard.Protections.PspMigration#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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.CrossRiverBank.PrepaidCard.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } } @Getter @@ -1311,6 +2030,12 @@ public static class SpendCard { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * Required. To request a new Capability for an account, pass true. * There can be a delay before the requested Capability becomes active. @@ -1318,8 +2043,10 @@ public static class SpendCard { @SerializedName("requested") Boolean requested; - private SpendCard(Map extraParams, Boolean requested) { + private SpendCard( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -1330,6 +2057,8 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ @@ -1337,7 +2066,7 @@ public static class Builder { .CrossRiverBank.SpendCard build() { return new AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial - .CrossRiverBank.SpendCard(this.extraParams, this.requested); + .CrossRiverBank.SpendCard(this.extraParams, this.protections, this.requested); } /** @@ -1370,6 +2099,17 @@ public Builder putAllExtraParam(Map map) { return this; } + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial + .CrossRiverBank.SpendCard.Protections + protections) { + this.protections = protections; + return this; + } + /** * Required. To request a new Capability for an account, pass true. * There can be a delay before the requested Capability becomes active. @@ -1379,6 +2119,164 @@ public Builder setRequested(Boolean requested) { return this; } } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial + .CrossRiverBank.SpendCard.Protections + build() { + return new AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial + .CrossRiverBank.SpendCard.Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.CrossRiverBank.SpendCard.Protections#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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.CrossRiverBank.SpendCard.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial + .CrossRiverBank.SpendCard.Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial + .CrossRiverBank.SpendCard.Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.CardCreator.Capabilities + .Commercial.CrossRiverBank.SpendCard.Protections.PspMigration( + this.extraParams, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.CrossRiverBank.SpendCard.Protections.PspMigration#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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.CrossRiverBank.SpendCard.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } } } @@ -1474,6 +2372,12 @@ public static class ChargeCard { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * Required. To request a new Capability for an account, pass true. * There can be a delay before the requested Capability becomes active. @@ -1481,8 +2385,10 @@ public static class ChargeCard { @SerializedName("requested") Boolean requested; - private ChargeCard(Map extraParams, Boolean requested) { + private ChargeCard( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -1493,6 +2399,8 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ @@ -1500,7 +2408,7 @@ public static class Builder { .FifthThird.ChargeCard build() { return new AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial - .FifthThird.ChargeCard(this.extraParams, this.requested); + .FifthThird.ChargeCard(this.extraParams, this.protections, this.requested); } /** @@ -1533,6 +2441,17 @@ public Builder putAllExtraParam(Map map) { return this; } + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.FifthThird + .ChargeCard.Protections + protections) { + this.protections = protections; + return this; + } + /** * Required. To request a new Capability for an account, pass true. * There can be a delay before the requested Capability becomes active. @@ -1542,6 +2461,164 @@ public Builder setRequested(Boolean requested) { return this; } } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial + .FifthThird.ChargeCard.Protections + build() { + return new AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial + .FifthThird.ChargeCard.Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.FifthThird.ChargeCard.Protections#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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.FifthThird.ChargeCard.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial + .FifthThird.ChargeCard.Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial + .FifthThird.ChargeCard.Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.CardCreator.Capabilities + .Commercial.FifthThird.ChargeCard.Protections.PspMigration( + this.extraParams, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.FifthThird.ChargeCard.Protections.PspMigration#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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.FifthThird.ChargeCard.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } } } @@ -1636,6 +2713,12 @@ public static class PrepaidCard { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * Required. To request a new Capability for an account, pass true. * There can be a delay before the requested Capability becomes active. @@ -1643,8 +2726,10 @@ public static class PrepaidCard { @SerializedName("requested") Boolean requested; - private PrepaidCard(Map extraParams, Boolean requested) { + private PrepaidCard( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -1655,6 +2740,8 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ @@ -1662,7 +2749,7 @@ public static class Builder { .PrepaidCard build() { return new AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial - .Lead.PrepaidCard(this.extraParams, this.requested); + .Lead.PrepaidCard(this.extraParams, this.protections, this.requested); } /** @@ -1695,6 +2782,17 @@ public Builder putAllExtraParam(Map map) { return this; } + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.Lead + .PrepaidCard.Protections + protections) { + this.protections = protections; + return this; + } + /** * Required. To request a new Capability for an account, pass true. * There can be a delay before the requested Capability becomes active. @@ -1704,88 +2802,246 @@ public Builder setRequested(Boolean requested) { return this; } } - } - } - - @Getter - @EqualsAndHashCode(callSuper = false) - public static class Stripe { - /** Can create commercial issuing charge cards with Stripe as BIN sponsor. */ - @SerializedName("charge_card") - ChargeCard chargeCard; - /** - * 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; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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; - /** Can create commercial issuing prepaid cards with Stripe as BIN sponsor. */ - @SerializedName("prepaid_card") - PrepaidCard prepaidCard; + /** Required. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - private Stripe( - ChargeCard chargeCard, Map extraParams, PrepaidCard prepaidCard) { - this.chargeCard = chargeCard; - this.extraParams = extraParams; - this.prepaidCard = prepaidCard; - } + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - public static Builder builder() { - return new Builder(); - } + public static Builder builder() { + return new Builder(); + } - public static class Builder { - private ChargeCard chargeCard; + public static class Builder { + private Map extraParams; - private Map extraParams; + private PspMigration pspMigration; - private PrepaidCard prepaidCard; + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.Lead + .PrepaidCard.Protections + build() { + return new AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial + .Lead.PrepaidCard.Protections(this.extraParams, this.pspMigration); + } - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.Stripe - build() { - return new AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial - .Stripe(this.chargeCard, this.extraParams, this.prepaidCard); - } + /** + * 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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.Lead.PrepaidCard.Protections#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; + } - /** Can create commercial issuing charge cards with Stripe as BIN sponsor. */ - public Builder setChargeCard( - AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.Stripe - .ChargeCard - chargeCard) { - this.chargeCard = chargeCard; - 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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.Lead.PrepaidCard.Protections#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 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 - * AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.Stripe#extraParams} - * for the field documentation. - */ - public Builder putExtraParam(String key, Object value) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.Lead + .PrepaidCard.Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } } - 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 - * AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.Stripe#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial + .Lead.PrepaidCard.Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.CardCreator.Capabilities + .Commercial.Lead.PrepaidCard.Protections.PspMigration( + this.extraParams, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.Lead.PrepaidCard.Protections.PspMigration#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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.Lead.PrepaidCard.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Stripe { + /** Can create commercial issuing charge cards with Stripe as BIN sponsor. */ + @SerializedName("charge_card") + ChargeCard chargeCard; + + /** + * 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; + + /** Can create commercial issuing prepaid cards with Stripe as BIN sponsor. */ + @SerializedName("prepaid_card") + PrepaidCard prepaidCard; + + private Stripe( + ChargeCard chargeCard, Map extraParams, PrepaidCard prepaidCard) { + this.chargeCard = chargeCard; + this.extraParams = extraParams; + this.prepaidCard = prepaidCard; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private ChargeCard chargeCard; + + private Map extraParams; + + private PrepaidCard prepaidCard; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.Stripe + build() { + return new AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial + .Stripe(this.chargeCard, this.extraParams, this.prepaidCard); + } + + /** Can create commercial issuing charge cards with Stripe as BIN sponsor. */ + public Builder setChargeCard( + AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.Stripe + .ChargeCard + chargeCard) { + this.chargeCard = chargeCard; + 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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.Stripe#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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.Stripe#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { this.extraParams = new HashMap<>(); } this.extraParams.putAll(map); @@ -1815,6 +3071,12 @@ public static class ChargeCard { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * Required. To request a new Capability for an account, pass true. * There can be a delay before the requested Capability becomes active. @@ -1822,8 +3084,10 @@ public static class ChargeCard { @SerializedName("requested") Boolean requested; - private ChargeCard(Map extraParams, Boolean requested) { + private ChargeCard( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -1834,6 +3098,8 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ @@ -1841,7 +3107,7 @@ public static class Builder { .ChargeCard build() { return new AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial - .Stripe.ChargeCard(this.extraParams, this.requested); + .Stripe.ChargeCard(this.extraParams, this.protections, this.requested); } /** @@ -1874,6 +3140,17 @@ public Builder putAllExtraParam(Map map) { return this; } + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.Stripe + .ChargeCard.Protections + protections) { + this.protections = protections; + return this; + } + /** * Required. To request a new Capability for an account, pass true. * There can be a delay before the requested Capability becomes active. @@ -1883,283 +3160,169 @@ public Builder setRequested(Boolean requested) { return this; } } - } - - @Getter - @EqualsAndHashCode(callSuper = false) - public static class PrepaidCard { - /** - * 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. To request a new Capability for an account, pass true. - * There can be a delay before the requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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; - private PrepaidCard(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + /** Required. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - public static Builder builder() { - return new Builder(); - } + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - public static class Builder { - private Map extraParams; + public static Builder builder() { + return new Builder(); + } - private Boolean requested; + public static class Builder { + private Map extraParams; - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.Stripe - .PrepaidCard - build() { - return new AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial - .Stripe.PrepaidCard(this.extraParams, this.requested); - } + private PspMigration pspMigration; - /** - * 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 - * AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.Stripe.PrepaidCard#extraParams} - * for the field documentation. - */ - public Builder putExtraParam(String key, Object value) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial + .Stripe.ChargeCard.Protections + build() { + return new AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial + .Stripe.ChargeCard.Protections(this.extraParams, this.pspMigration); } - 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 - * AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.Stripe.PrepaidCard#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** + * 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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.Stripe.ChargeCard.Protections#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; } - this.extraParams.putAll(map); - return this; - } - /** - * Required. To request a new Capability for an account, pass true. - * There can be a delay before the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; - } - } - } - } - } - - @Getter - @EqualsAndHashCode(callSuper = false) - public static class Consumer { - /** Can create consumer issuing cards with Celtic as BIN sponsor. */ - @SerializedName("celtic") - Celtic celtic; - - /** Can create consumer issuing cards with Cross River Bank as BIN sponsor. */ - @SerializedName("cross_river_bank") - CrossRiverBank crossRiverBank; - - /** - * 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; - - /** Can create consumer issuing cards with Lead as BIN sponsor. */ - @SerializedName("lead") - Lead lead; - - private Consumer( - Celtic celtic, - CrossRiverBank crossRiverBank, - Map extraParams, - Lead lead) { - this.celtic = celtic; - this.crossRiverBank = crossRiverBank; - this.extraParams = extraParams; - this.lead = lead; - } - - public static Builder builder() { - return new Builder(); - } - - public static class Builder { - private Celtic celtic; - - private CrossRiverBank crossRiverBank; - - private Map extraParams; - - private Lead lead; - - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer build() { - return new AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer( - this.celtic, this.crossRiverBank, this.extraParams, this.lead); - } - - /** Can create consumer issuing cards with Celtic as BIN sponsor. */ - public Builder setCeltic( - AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Celtic celtic) { - this.celtic = celtic; - return this; - } - - /** Can create consumer issuing cards with Cross River Bank as BIN sponsor. */ - public Builder setCrossRiverBank( - AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.CrossRiverBank - crossRiverBank) { - this.crossRiverBank = crossRiverBank; - 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 - * AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer#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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.Stripe.ChargeCard.Protections#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 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 - * AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.Stripe + .ChargeCard.Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } - /** Can create consumer issuing cards with Lead as BIN sponsor. */ - public Builder setLead( - AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Lead lead) { - this.lead = lead; - return this; - } - } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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; - @Getter - @EqualsAndHashCode(callSuper = false) - public static class Celtic { - /** - * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; - /** Can create consumer issuing charge cards with Celtic as BIN sponsor. */ - @SerializedName("revolving_credit_card") - RevolvingCreditCard revolvingCreditCard; + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } - private Celtic( - Map extraParams, RevolvingCreditCard revolvingCreditCard) { - this.extraParams = extraParams; - this.revolvingCreditCard = revolvingCreditCard; - } + public static Builder builder() { + return new Builder(); + } - public static Builder builder() { - return new Builder(); - } + public static class Builder { + private Map extraParams; - public static class Builder { - private Map extraParams; + private Boolean requested; - private RevolvingCreditCard revolvingCreditCard; + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial + .Stripe.ChargeCard.Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.CardCreator.Capabilities + .Commercial.Stripe.ChargeCard.Protections.PspMigration( + this.extraParams, this.requested); + } - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Celtic - build() { - return new AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer - .Celtic(this.extraParams, this.revolvingCreditCard); - } + /** + * 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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.Stripe.ChargeCard.Protections.PspMigration#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 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 - * AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Celtic#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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.Stripe.ChargeCard.Protections.PspMigration#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 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 - * AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Celtic#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** Required. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } } - this.extraParams.putAll(map); - return this; - } - - /** Can create consumer issuing charge cards with Celtic as BIN sponsor. */ - public Builder setRevolvingCreditCard( - AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Celtic - .RevolvingCreditCard - revolvingCreditCard) { - this.revolvingCreditCard = revolvingCreditCard; - return this; } } @Getter @EqualsAndHashCode(callSuper = false) - public static class RevolvingCreditCard { + public static class PrepaidCard { /** * 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 @@ -2170,6 +3333,12 @@ public static class RevolvingCreditCard { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * Required. To request a new Capability for an account, pass true. * There can be a delay before the requested Capability becomes active. @@ -2177,8 +3346,10 @@ public static class RevolvingCreditCard { @SerializedName("requested") Boolean requested; - private RevolvingCreditCard(Map extraParams, Boolean requested) { + private PrepaidCard( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -2189,21 +3360,23 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Celtic - .RevolvingCreditCard + public AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.Stripe + .PrepaidCard build() { - return new AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer - .Celtic.RevolvingCreditCard(this.extraParams, this.requested); + return new AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial + .Stripe.PrepaidCard(this.extraParams, this.protections, this.requested); } /** * 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 - * AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Celtic.RevolvingCreditCard#extraParams} + * AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.Stripe.PrepaidCard#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -2218,7 +3391,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Celtic.RevolvingCreditCard#extraParams} + * AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.Stripe.PrepaidCard#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -2229,6 +3402,17 @@ public Builder putAllExtraParam(Map map) { return this; } + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.Stripe + .PrepaidCard.Protections + protections) { + this.protections = protections; + return this; + } + /** * Required. To request a new Capability for an account, pass true. * There can be a delay before the requested Capability becomes active. @@ -2238,12 +3422,279 @@ public Builder setRequested(Boolean requested) { return this; } } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial + .Stripe.PrepaidCard.Protections + build() { + return new AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial + .Stripe.PrepaidCard.Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.Stripe.PrepaidCard.Protections#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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.Stripe.PrepaidCard.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.Stripe + .PrepaidCard.Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial + .Stripe.PrepaidCard.Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.CardCreator.Capabilities + .Commercial.Stripe.PrepaidCard.Protections.PspMigration( + this.extraParams, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.Stripe.PrepaidCard.Protections.PspMigration#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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Commercial.Stripe.PrepaidCard.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Consumer { + /** Can create consumer issuing cards with Celtic as BIN sponsor. */ + @SerializedName("celtic") + Celtic celtic; + + /** Can create consumer issuing cards with Cross River Bank as BIN sponsor. */ + @SerializedName("cross_river_bank") + CrossRiverBank crossRiverBank; + + /** + * 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; + + /** Can create consumer issuing cards with Lead as BIN sponsor. */ + @SerializedName("lead") + Lead lead; + + private Consumer( + Celtic celtic, + CrossRiverBank crossRiverBank, + Map extraParams, + Lead lead) { + this.celtic = celtic; + this.crossRiverBank = crossRiverBank; + this.extraParams = extraParams; + this.lead = lead; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Celtic celtic; + + private CrossRiverBank crossRiverBank; + + private Map extraParams; + + private Lead lead; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer build() { + return new AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer( + this.celtic, this.crossRiverBank, this.extraParams, this.lead); + } + + /** Can create consumer issuing cards with Celtic as BIN sponsor. */ + public Builder setCeltic( + AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Celtic celtic) { + this.celtic = celtic; + return this; + } + + /** Can create consumer issuing cards with Cross River Bank as BIN sponsor. */ + public Builder setCrossRiverBank( + AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.CrossRiverBank + crossRiverBank) { + this.crossRiverBank = crossRiverBank; + 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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer#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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer#extraParams} for + * the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Can create consumer issuing cards with Lead as BIN sponsor. */ + public Builder setLead( + AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Lead lead) { + this.lead = lead; + return this; } } @Getter @EqualsAndHashCode(callSuper = false) - public static class CrossRiverBank { + public static class Celtic { /** * 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} @@ -2254,13 +3705,14 @@ public static class CrossRiverBank { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** Can create consumer issuing prepaid cards with Cross River Bank as BIN sponsor. */ - @SerializedName("prepaid_card") - PrepaidCard prepaidCard; + /** Can create consumer issuing charge cards with Celtic as BIN sponsor. */ + @SerializedName("revolving_credit_card") + RevolvingCreditCard revolvingCreditCard; - private CrossRiverBank(Map extraParams, PrepaidCard prepaidCard) { + private Celtic( + Map extraParams, RevolvingCreditCard revolvingCreditCard) { this.extraParams = extraParams; - this.prepaidCard = prepaidCard; + this.revolvingCreditCard = revolvingCreditCard; } public static Builder builder() { @@ -2270,21 +3722,20 @@ public static Builder builder() { public static class Builder { private Map extraParams; - private PrepaidCard prepaidCard; + private RevolvingCreditCard revolvingCreditCard; /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer - .CrossRiverBank + public AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Celtic build() { return new AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer - .CrossRiverBank(this.extraParams, this.prepaidCard); + .Celtic(this.extraParams, this.revolvingCreditCard); } /** * 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 - * AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.CrossRiverBank#extraParams} + * AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Celtic#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -2299,7 +3750,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.CrossRiverBank#extraParams} + * AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Celtic#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -2310,19 +3761,19 @@ public Builder putAllExtraParam(Map map) { return this; } - /** Can create consumer issuing prepaid cards with Cross River Bank as BIN sponsor. */ - public Builder setPrepaidCard( - AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.CrossRiverBank - .PrepaidCard - prepaidCard) { - this.prepaidCard = prepaidCard; + /** Can create consumer issuing charge cards with Celtic as BIN sponsor. */ + public Builder setRevolvingCreditCard( + AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Celtic + .RevolvingCreditCard + revolvingCreditCard) { + this.revolvingCreditCard = revolvingCreditCard; return this; } } @Getter @EqualsAndHashCode(callSuper = false) - public static class PrepaidCard { + public static class RevolvingCreditCard { /** * 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 @@ -2333,6 +3784,12 @@ public static class PrepaidCard { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * Required. To request a new Capability for an account, pass true. * There can be a delay before the requested Capability becomes active. @@ -2340,8 +3797,10 @@ public static class PrepaidCard { @SerializedName("requested") Boolean requested; - private PrepaidCard(Map extraParams, Boolean requested) { + private RevolvingCreditCard( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -2352,21 +3811,24 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer - .CrossRiverBank.PrepaidCard + public AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Celtic + .RevolvingCreditCard build() { return new AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer - .CrossRiverBank.PrepaidCard(this.extraParams, this.requested); + .Celtic.RevolvingCreditCard( + this.extraParams, this.protections, this.requested); } /** * 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 - * AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.CrossRiverBank.PrepaidCard#extraParams} + * AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Celtic.RevolvingCreditCard#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -2381,7 +3843,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.CrossRiverBank.PrepaidCard#extraParams} + * AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Celtic.RevolvingCreditCard#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -2392,6 +3854,17 @@ public Builder putAllExtraParam(Map map) { return this; } + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Celtic + .RevolvingCreditCard.Protections + protections) { + this.protections = protections; + return this; + } + /** * Required. To request a new Capability for an account, pass true. * There can be a delay before the requested Capability becomes active. @@ -2401,16 +3874,171 @@ public Builder setRequested(Boolean requested) { return this; } } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Celtic + .RevolvingCreditCard.Protections + build() { + return new AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer + .Celtic.RevolvingCreditCard.Protections( + this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Celtic.RevolvingCreditCard.Protections#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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Celtic.RevolvingCreditCard.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Celtic + .RevolvingCreditCard.Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer + .Celtic.RevolvingCreditCard.Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer + .Celtic.RevolvingCreditCard.Protections.PspMigration( + this.extraParams, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Celtic.RevolvingCreditCard.Protections.PspMigration#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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Celtic.RevolvingCreditCard.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } } } @Getter @EqualsAndHashCode(callSuper = false) - public static class Lead { - /** Can create consumer issuing debit cards with Lead as BIN sponsor. */ - @SerializedName("debit_card") - DebitCard debitCard; - + public static class CrossRiverBank { /** * 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} @@ -2421,13 +4049,11 @@ public static class Lead { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** Can create consumer issuing prepaid cards with Lead as BIN sponsor. */ + /** Can create consumer issuing prepaid cards with Cross River Bank as BIN sponsor. */ @SerializedName("prepaid_card") PrepaidCard prepaidCard; - private Lead( - DebitCard debitCard, Map extraParams, PrepaidCard prepaidCard) { - this.debitCard = debitCard; + private CrossRiverBank(Map extraParams, PrepaidCard prepaidCard) { this.extraParams = extraParams; this.prepaidCard = prepaidCard; } @@ -2437,32 +4063,23 @@ public static Builder builder() { } public static class Builder { - private DebitCard debitCard; - private Map extraParams; private PrepaidCard prepaidCard; /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Lead + public AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer + .CrossRiverBank build() { - return new AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Lead( - this.debitCard, this.extraParams, this.prepaidCard); - } - - /** Can create consumer issuing debit cards with Lead as BIN sponsor. */ - public Builder setDebitCard( - AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Lead.DebitCard - debitCard) { - this.debitCard = debitCard; - return this; + return new AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer + .CrossRiverBank(this.extraParams, this.prepaidCard); } /** * 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 - * AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Lead#extraParams} + * AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.CrossRiverBank#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -2477,7 +4094,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Lead#extraParams} + * AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.CrossRiverBank#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -2488,9 +4105,9 @@ public Builder putAllExtraParam(Map map) { return this; } - /** Can create consumer issuing prepaid cards with Lead as BIN sponsor. */ + /** Can create consumer issuing prepaid cards with Cross River Bank as BIN sponsor. */ public Builder setPrepaidCard( - AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Lead + AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.CrossRiverBank .PrepaidCard prepaidCard) { this.prepaidCard = prepaidCard; @@ -2500,7 +4117,7 @@ public Builder setPrepaidCard( @Getter @EqualsAndHashCode(callSuper = false) - public static class DebitCard { + public static class PrepaidCard { /** * 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 @@ -2511,6 +4128,12 @@ public static class DebitCard { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * Required. To request a new Capability for an account, pass true. * There can be a delay before the requested Capability becomes active. @@ -2518,8 +4141,10 @@ public static class DebitCard { @SerializedName("requested") Boolean requested; - private DebitCard(Map extraParams, Boolean requested) { + private PrepaidCard( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -2530,21 +4155,24 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Lead - .DebitCard + public AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer + .CrossRiverBank.PrepaidCard build() { return new AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer - .Lead.DebitCard(this.extraParams, this.requested); + .CrossRiverBank.PrepaidCard( + this.extraParams, this.protections, this.requested); } /** * 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 - * AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Lead.DebitCard#extraParams} + * AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.CrossRiverBank.PrepaidCard#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -2559,7 +4187,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Lead.DebitCard#extraParams} + * AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.CrossRiverBank.PrepaidCard#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -2570,6 +4198,17 @@ public Builder putAllExtraParam(Map map) { return this; } + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer + .CrossRiverBank.PrepaidCard.Protections + protections) { + this.protections = protections; + return this; + } + /** * Required. To request a new Capability for an account, pass true. * There can be a delay before the requested Capability becomes active. @@ -2579,55 +4218,319 @@ public Builder setRequested(Boolean requested) { return this; } } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class PrepaidCard { - /** - * 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; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. To request a new Capability for an account, pass true. - * There can be a delay before the requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + /** Required. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - private PrepaidCard(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - public static Builder builder() { - return new Builder(); - } + public static Builder builder() { + return new Builder(); + } - public static class Builder { - private Map extraParams; + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer + .CrossRiverBank.PrepaidCard.Protections + build() { + return new AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer + .CrossRiverBank.PrepaidCard.Protections( + this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.CrossRiverBank.PrepaidCard.Protections#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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.CrossRiverBank.PrepaidCard.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer + .CrossRiverBank.PrepaidCard.Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer + .CrossRiverBank.PrepaidCard.Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer + .CrossRiverBank.PrepaidCard.Protections.PspMigration( + this.extraParams, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.CrossRiverBank.PrepaidCard.Protections.PspMigration#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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.CrossRiverBank.PrepaidCard.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Lead { + /** Can create consumer issuing debit cards with Lead as BIN sponsor. */ + @SerializedName("debit_card") + DebitCard debitCard; + + /** + * 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; + + /** Can create consumer issuing prepaid cards with Lead as BIN sponsor. */ + @SerializedName("prepaid_card") + PrepaidCard prepaidCard; + + private Lead( + DebitCard debitCard, Map extraParams, PrepaidCard prepaidCard) { + this.debitCard = debitCard; + this.extraParams = extraParams; + this.prepaidCard = prepaidCard; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private DebitCard debitCard; + + private Map extraParams; + + private PrepaidCard prepaidCard; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Lead + build() { + return new AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Lead( + this.debitCard, this.extraParams, this.prepaidCard); + } + + /** Can create consumer issuing debit cards with Lead as BIN sponsor. */ + public Builder setDebitCard( + AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Lead.DebitCard + debitCard) { + this.debitCard = debitCard; + 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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Lead#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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Lead#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Can create consumer issuing prepaid cards with Lead as BIN sponsor. */ + public Builder setPrepaidCard( + AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Lead + .PrepaidCard + prepaidCard) { + this.prepaidCard = prepaidCard; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class DebitCard { + /** + * 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; + + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + + /** + * Required. To request a new Capability for an account, pass true. + * There can be a delay before the requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private DebitCard( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ public AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Lead - .PrepaidCard + .DebitCard build() { return new AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer - .Lead.PrepaidCard(this.extraParams, this.requested); + .Lead.DebitCard(this.extraParams, this.protections, this.requested); } /** * 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 - * AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Lead.PrepaidCard#extraParams} + * AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Lead.DebitCard#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -2642,7 +4545,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Lead.PrepaidCard#extraParams} + * AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Lead.DebitCard#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -2653,6 +4556,17 @@ public Builder putAllExtraParam(Map map) { return this; } + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Lead + .DebitCard.Protections + protections) { + this.protections = protections; + return this; + } + /** * Required. To request a new Capability for an account, pass true. * There can be a delay before the requested Capability becomes active. @@ -2662,338 +4576,599 @@ public Builder setRequested(Boolean requested) { return this; } } - } - } - } - } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class Customer { - /** - * Automatic indirect tax settings to be used when automatic tax calculation is enabled on the - * customer's invoices, subscriptions, checkout sessions, or payment links. Surfaces if - * automatic tax calculation is possible given the current customer location information. - */ - @SerializedName("automatic_indirect_tax") - AutomaticIndirectTax automaticIndirectTax; - - /** - * Billing settings - default settings used for this customer in Billing flows such as - * Invoices and Subscriptions. - */ - @SerializedName("billing") - Billing billing; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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; - /** Capabilities that have been requested on the Customer Configuration. */ - @SerializedName("capabilities") - Capabilities capabilities; + /** Required. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - /** - * 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; + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - /** The customer's shipping information. Appears on invoices emailed to this customer. */ - @SerializedName("shipping") - Shipping shipping; + public static Builder builder() { + return new Builder(); + } - /** - * ID of the test clock to attach to the customer. Can only be set on testmode Accounts, and - * when the Customer Configuration is first set on an Account. - */ - @SerializedName("test_clock") - String testClock; + public static class Builder { + private Map extraParams; - private Customer( - AutomaticIndirectTax automaticIndirectTax, - Billing billing, - Capabilities capabilities, - Map extraParams, - Shipping shipping, - String testClock) { - this.automaticIndirectTax = automaticIndirectTax; - this.billing = billing; - this.capabilities = capabilities; - this.extraParams = extraParams; - this.shipping = shipping; - this.testClock = testClock; - } + private PspMigration pspMigration; - public static Builder builder() { - return new Builder(); - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Lead + .DebitCard.Protections + build() { + return new AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer + .Lead.DebitCard.Protections(this.extraParams, this.pspMigration); + } - public static class Builder { - private AutomaticIndirectTax automaticIndirectTax; + /** + * 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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Lead.DebitCard.Protections#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; + } - private Billing billing; + /** + * 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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Lead.DebitCard.Protections#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - private Capabilities capabilities; + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Lead + .DebitCard.Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } - private Map extraParams; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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; - private Shipping shipping; + /** Required. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; - private String testClock; + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Customer build() { - return new AccountCreateParams.Configuration.Customer( - this.automaticIndirectTax, - this.billing, - this.capabilities, - this.extraParams, - this.shipping, - this.testClock); - } + public static Builder builder() { + return new Builder(); + } - /** - * Automatic indirect tax settings to be used when automatic tax calculation is enabled on - * the customer's invoices, subscriptions, checkout sessions, or payment links. Surfaces if - * automatic tax calculation is possible given the current customer location information. - */ - public Builder setAutomaticIndirectTax( - AccountCreateParams.Configuration.Customer.AutomaticIndirectTax automaticIndirectTax) { - this.automaticIndirectTax = automaticIndirectTax; - return this; - } + public static class Builder { + private Map extraParams; - /** - * Billing settings - default settings used for this customer in Billing flows such as - * Invoices and Subscriptions. - */ - public Builder setBilling(AccountCreateParams.Configuration.Customer.Billing billing) { - this.billing = billing; - return this; - } + private Boolean requested; - /** Capabilities that have been requested on the Customer Configuration. */ - public Builder setCapabilities( - AccountCreateParams.Configuration.Customer.Capabilities capabilities) { - this.capabilities = capabilities; - return this; - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Lead + .DebitCard.Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer + .Lead.DebitCard.Protections.PspMigration( + this.extraParams, this.requested); + } - /** - * 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 AccountCreateParams.Configuration.Customer#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 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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Lead.DebitCard.Protections.PspMigration#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 AccountCreateParams.Configuration.Customer#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 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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Lead.DebitCard.Protections.PspMigration#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 customer's shipping information. Appears on invoices emailed to this customer. */ - public Builder setShipping(AccountCreateParams.Configuration.Customer.Shipping shipping) { - this.shipping = shipping; - return this; - } + /** Required. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } - /** - * ID of the test clock to attach to the customer. Can only be set on testmode Accounts, and - * when the Customer Configuration is first set on an Account. - */ - public Builder setTestClock(String testClock) { - this.testClock = testClock; - return this; - } - } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PrepaidCard { + /** + * 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; - @Getter - @EqualsAndHashCode(callSuper = false) - public static class AutomaticIndirectTax { - /** - * Describes the customer's tax exemption status, which is {@code none}, {@code exempt}, or - * {@code reverse}. When set to reverse, invoice and receipt PDFs include the following - * text: “Reverse charge”. - */ - @SerializedName("exempt") - Exempt exempt; + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + @SerializedName("protections") + Protections protections; - /** - * 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. To request a new Capability for an account, pass true. + * There can be a delay before the requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; - /** - * A recent IP address of the customer used for tax reporting and tax location inference. - */ - @SerializedName("ip_address") - String ipAddress; + private PrepaidCard( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } - /** - * The data source used to identify the customer's tax location - defaults to {@code - * identity_address}. Will only be used for automatic tax calculation on the customer's - * Invoices and Subscriptions. This behavior is now deprecated for new users. - */ - @SerializedName("location_source") - LocationSource locationSource; + public static Builder builder() { + return new Builder(); + } - private AutomaticIndirectTax( - Exempt exempt, - Map extraParams, - String ipAddress, - LocationSource locationSource) { - this.exempt = exempt; - this.extraParams = extraParams; - this.ipAddress = ipAddress; - this.locationSource = locationSource; - } + public static class Builder { + private Map extraParams; - public static Builder builder() { - return new Builder(); - } + private Protections protections; - public static class Builder { - private Exempt exempt; + private Boolean requested; - private Map extraParams; + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Lead + .PrepaidCard + build() { + return new AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer + .Lead.PrepaidCard(this.extraParams, this.protections, this.requested); + } - private String ipAddress; + /** + * 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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Lead.PrepaidCard#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; + } - private LocationSource locationSource; + /** + * 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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Lead.PrepaidCard#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Customer.AutomaticIndirectTax build() { - return new AccountCreateParams.Configuration.Customer.AutomaticIndirectTax( - this.exempt, this.extraParams, this.ipAddress, this.locationSource); - } + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Lead + .PrepaidCard.Protections + protections) { + this.protections = protections; + return this; + } - /** - * Describes the customer's tax exemption status, which is {@code none}, {@code exempt}, - * or {@code reverse}. When set to reverse, invoice and receipt PDFs include the following - * text: “Reverse charge”. - */ - public Builder setExempt( - AccountCreateParams.Configuration.Customer.AutomaticIndirectTax.Exempt exempt) { - this.exempt = exempt; - return this; - } + /** + * Required. To request a new Capability for an account, pass true. + * There can be a delay before the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + 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 - * AccountCreateParams.Configuration.Customer.AutomaticIndirectTax#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; - } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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; - /** - * 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 - * AccountCreateParams.Configuration.Customer.AutomaticIndirectTax#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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - /** - * A recent IP address of the customer used for tax reporting and tax location inference. - */ - public Builder setIpAddress(String ipAddress) { - this.ipAddress = ipAddress; - return this; - } + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - /** - * The data source used to identify the customer's tax location - defaults to {@code - * identity_address}. Will only be used for automatic tax calculation on the customer's - * Invoices and Subscriptions. This behavior is now deprecated for new users. - */ - public Builder setLocationSource( - AccountCreateParams.Configuration.Customer.AutomaticIndirectTax.LocationSource - locationSource) { - this.locationSource = locationSource; - return this; - } - } + public static Builder builder() { + return new Builder(); + } - public enum Exempt implements ApiRequestParams.EnumParam { - @SerializedName("exempt") - EXEMPT("exempt"), + public static class Builder { + private Map extraParams; - @SerializedName("none") - NONE("none"), + private PspMigration pspMigration; - @SerializedName("reverse") - REVERSE("reverse"); + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Lead + .PrepaidCard.Protections + build() { + return new AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer + .Lead.PrepaidCard.Protections(this.extraParams, this.pspMigration); + } - @Getter(onMethod_ = {@Override}) - private final String value; + /** + * 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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Lead.PrepaidCard.Protections#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; + } - Exempt(String value) { - this.value = value; - } - } + /** + * 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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Lead.PrepaidCard.Protections#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - public enum LocationSource implements ApiRequestParams.EnumParam { - @SerializedName("identity_address") - IDENTITY_ADDRESS("identity_address"), + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Lead + .PrepaidCard.Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } - @SerializedName("ip_address") - IP_ADDRESS("ip_address"), + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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; - @SerializedName("payment_method") - PAYMENT_METHOD("payment_method"), + /** Required. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; - @SerializedName("shipping_address") - SHIPPING_ADDRESS("shipping_address"); + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } - @Getter(onMethod_ = {@Override}) - private final String value; + public static Builder builder() { + return new Builder(); + } - LocationSource(String value) { - this.value = value; - } - } - } + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Lead + .PrepaidCard.Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer + .Lead.PrepaidCard.Protections.PspMigration( + this.extraParams, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Lead.PrepaidCard.Protections.PspMigration#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 + * AccountCreateParams.Configuration.CardCreator.Capabilities.Consumer.Lead.PrepaidCard.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Customer { + /** + * Automatic indirect tax settings to be used when automatic tax calculation is enabled on the + * customer's invoices, subscriptions, checkout sessions, or payment links. Surfaces if + * automatic tax calculation is possible given the current customer location information. + */ + @SerializedName("automatic_indirect_tax") + AutomaticIndirectTax automaticIndirectTax; + + /** + * Billing settings - default settings used for this customer in Billing flows such as + * Invoices and Subscriptions. + */ + @SerializedName("billing") + Billing billing; + + /** Capabilities that have been requested on the Customer Configuration. */ + @SerializedName("capabilities") + Capabilities capabilities; + + /** + * 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 customer's shipping information. Appears on invoices emailed to this customer. */ + @SerializedName("shipping") + Shipping shipping; + + /** + * ID of the test clock to attach to the customer. Can only be set on testmode Accounts, and + * when the Customer Configuration is first set on an Account. + */ + @SerializedName("test_clock") + String testClock; + + private Customer( + AutomaticIndirectTax automaticIndirectTax, + Billing billing, + Capabilities capabilities, + Map extraParams, + Shipping shipping, + String testClock) { + this.automaticIndirectTax = automaticIndirectTax; + this.billing = billing; + this.capabilities = capabilities; + this.extraParams = extraParams; + this.shipping = shipping; + this.testClock = testClock; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private AutomaticIndirectTax automaticIndirectTax; + + private Billing billing; + + private Capabilities capabilities; + + private Map extraParams; + + private Shipping shipping; + + private String testClock; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Customer build() { + return new AccountCreateParams.Configuration.Customer( + this.automaticIndirectTax, + this.billing, + this.capabilities, + this.extraParams, + this.shipping, + this.testClock); + } + + /** + * Automatic indirect tax settings to be used when automatic tax calculation is enabled on + * the customer's invoices, subscriptions, checkout sessions, or payment links. Surfaces if + * automatic tax calculation is possible given the current customer location information. + */ + public Builder setAutomaticIndirectTax( + AccountCreateParams.Configuration.Customer.AutomaticIndirectTax automaticIndirectTax) { + this.automaticIndirectTax = automaticIndirectTax; + return this; + } + + /** + * Billing settings - default settings used for this customer in Billing flows such as + * Invoices and Subscriptions. + */ + public Builder setBilling(AccountCreateParams.Configuration.Customer.Billing billing) { + this.billing = billing; + return this; + } + + /** Capabilities that have been requested on the Customer Configuration. */ + public Builder setCapabilities( + AccountCreateParams.Configuration.Customer.Capabilities capabilities) { + this.capabilities = capabilities; + 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 AccountCreateParams.Configuration.Customer#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 AccountCreateParams.Configuration.Customer#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 customer's shipping information. Appears on invoices emailed to this customer. */ + public Builder setShipping(AccountCreateParams.Configuration.Customer.Shipping shipping) { + this.shipping = shipping; + return this; + } + + /** + * ID of the test clock to attach to the customer. Can only be set on testmode Accounts, and + * when the Customer Configuration is first set on an Account. + */ + public Builder setTestClock(String testClock) { + this.testClock = testClock; + return this; + } + } @Getter @EqualsAndHashCode(callSuper = false) - public static class Billing { + public static class AutomaticIndirectTax { + /** + * Describes the customer's tax exemption status, which is {@code none}, {@code exempt}, or + * {@code reverse}. When set to reverse, invoice and receipt PDFs include the following + * text: “Reverse charge”. + */ + @SerializedName("exempt") + Exempt exempt; + /** * 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. @@ -3004,13 +5179,29 @@ public static class Billing { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** Default invoice settings for the customer account. */ - @SerializedName("invoice") - Invoice invoice; + /** + * A recent IP address of the customer used for tax reporting and tax location inference. + */ + @SerializedName("ip_address") + String ipAddress; - private Billing(Map extraParams, Invoice invoice) { + /** + * The data source used to identify the customer's tax location - defaults to {@code + * identity_address}. Will only be used for automatic tax calculation on the customer's + * Invoices and Subscriptions. This behavior is now deprecated for new users. + */ + @SerializedName("location_source") + LocationSource locationSource; + + private AutomaticIndirectTax( + Exempt exempt, + Map extraParams, + String ipAddress, + LocationSource locationSource) { + this.exempt = exempt; this.extraParams = extraParams; - this.invoice = invoice; + this.ipAddress = ipAddress; + this.locationSource = locationSource; } public static Builder builder() { @@ -3018,23 +5209,166 @@ public static Builder builder() { } public static class Builder { + private Exempt exempt; + private Map extraParams; - private Invoice invoice; + private String ipAddress; + + private LocationSource locationSource; /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Customer.Billing build() { - return new AccountCreateParams.Configuration.Customer.Billing( - this.extraParams, this.invoice); + public AccountCreateParams.Configuration.Customer.AutomaticIndirectTax build() { + return new AccountCreateParams.Configuration.Customer.AutomaticIndirectTax( + this.exempt, this.extraParams, this.ipAddress, this.locationSource); } /** - * 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 AccountCreateParams.Configuration.Customer.Billing#extraParams} for the - * field documentation. - */ - public Builder putExtraParam(String key, Object value) { + * Describes the customer's tax exemption status, which is {@code none}, {@code exempt}, + * or {@code reverse}. When set to reverse, invoice and receipt PDFs include the following + * text: “Reverse charge”. + */ + public Builder setExempt( + AccountCreateParams.Configuration.Customer.AutomaticIndirectTax.Exempt exempt) { + this.exempt = exempt; + 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 + * AccountCreateParams.Configuration.Customer.AutomaticIndirectTax#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 + * AccountCreateParams.Configuration.Customer.AutomaticIndirectTax#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 recent IP address of the customer used for tax reporting and tax location inference. + */ + public Builder setIpAddress(String ipAddress) { + this.ipAddress = ipAddress; + return this; + } + + /** + * The data source used to identify the customer's tax location - defaults to {@code + * identity_address}. Will only be used for automatic tax calculation on the customer's + * Invoices and Subscriptions. This behavior is now deprecated for new users. + */ + public Builder setLocationSource( + AccountCreateParams.Configuration.Customer.AutomaticIndirectTax.LocationSource + locationSource) { + this.locationSource = locationSource; + return this; + } + } + + public enum Exempt implements ApiRequestParams.EnumParam { + @SerializedName("exempt") + EXEMPT("exempt"), + + @SerializedName("none") + NONE("none"), + + @SerializedName("reverse") + REVERSE("reverse"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + Exempt(String value) { + this.value = value; + } + } + + public enum LocationSource implements ApiRequestParams.EnumParam { + @SerializedName("identity_address") + IDENTITY_ADDRESS("identity_address"), + + @SerializedName("ip_address") + IP_ADDRESS("ip_address"), + + @SerializedName("payment_method") + PAYMENT_METHOD("payment_method"), + + @SerializedName("shipping_address") + SHIPPING_ADDRESS("shipping_address"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + LocationSource(String value) { + this.value = value; + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Billing { + /** + * 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; + + /** Default invoice settings for the customer account. */ + @SerializedName("invoice") + Invoice invoice; + + private Billing(Map extraParams, Invoice invoice) { + this.extraParams = extraParams; + this.invoice = invoice; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Invoice invoice; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Customer.Billing build() { + return new AccountCreateParams.Configuration.Customer.Billing( + this.extraParams, this.invoice); + } + + /** + * 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 AccountCreateParams.Configuration.Customer.Billing#extraParams} for the + * field documentation. + */ + public Builder putExtraParam(String key, Object value) { if (this.extraParams == null) { this.extraParams = new HashMap<>(); } @@ -3558,6 +5892,10 @@ public static class AutomaticIndirectTax { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + /** * Required. To request a new Capability for an account, pass true. There * can be a delay before the requested Capability becomes active. @@ -3565,8 +5903,10 @@ public static class AutomaticIndirectTax { @SerializedName("requested") Boolean requested; - private AutomaticIndirectTax(Map extraParams, Boolean requested) { + private AutomaticIndirectTax( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -3577,13 +5917,15 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ public AccountCreateParams.Configuration.Customer.Capabilities.AutomaticIndirectTax build() { return new AccountCreateParams.Configuration.Customer.Capabilities - .AutomaticIndirectTax(this.extraParams, this.requested); + .AutomaticIndirectTax(this.extraParams, this.protections, this.requested); } /** @@ -3616,6 +5958,15 @@ public Builder putAllExtraParam(Map map) { return this; } + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountCreateParams.Configuration.Customer.Capabilities.AutomaticIndirectTax + .Protections + protections) { + this.protections = protections; + return this; + } + /** * Required. To request a new Capability for an account, pass true. * There can be a delay before the requested Capability becomes active. @@ -3625,63 +5976,221 @@ public Builder setRequested(Boolean requested) { return this; } } - } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class Shipping { - /** Customer shipping address. */ - @SerializedName("address") - Address address; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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; - /** - * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - /** Customer name. */ - @SerializedName("name") - String name; + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - /** Customer phone (including extension). */ - @SerializedName("phone") - String phone; + public static Builder builder() { + return new Builder(); + } - private Shipping( - Address address, Map extraParams, String name, String phone) { - this.address = address; - this.extraParams = extraParams; - this.name = name; - this.phone = phone; - } + public static class Builder { + private Map extraParams; - public static Builder builder() { - return new Builder(); - } + private PspMigration pspMigration; - public static class Builder { - private Address address; + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Customer.Capabilities.AutomaticIndirectTax + .Protections + build() { + return new AccountCreateParams.Configuration.Customer.Capabilities + .AutomaticIndirectTax.Protections(this.extraParams, this.pspMigration); + } - private Map extraParams; + /** + * 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 + * AccountCreateParams.Configuration.Customer.Capabilities.AutomaticIndirectTax.Protections#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; + } - private String name; + /** + * 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 + * AccountCreateParams.Configuration.Customer.Capabilities.AutomaticIndirectTax.Protections#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - private String phone; + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Customer.Capabilities.AutomaticIndirectTax + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Customer.Shipping build() { - return new AccountCreateParams.Configuration.Customer.Shipping( - this.address, this.extraParams, this.name, this.phone); - } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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; - /** Customer shipping address. */ - public Builder setAddress( + /** Required. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Customer.Capabilities.AutomaticIndirectTax + .Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Customer.Capabilities + .AutomaticIndirectTax.Protections.PspMigration( + this.extraParams, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Customer.Capabilities.AutomaticIndirectTax.Protections.PspMigration#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 + * AccountCreateParams.Configuration.Customer.Capabilities.AutomaticIndirectTax.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Shipping { + /** Customer shipping address. */ + @SerializedName("address") + Address address; + + /** + * 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; + + /** Customer name. */ + @SerializedName("name") + String name; + + /** Customer phone (including extension). */ + @SerializedName("phone") + String phone; + + private Shipping( + Address address, Map extraParams, String name, String phone) { + this.address = address; + this.extraParams = extraParams; + this.name = name; + this.phone = phone; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Address address; + + private Map extraParams; + + private String name; + + private String phone; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Customer.Shipping build() { + return new AccountCreateParams.Configuration.Customer.Shipping( + this.address, this.extraParams, this.name, this.phone); + } + + /** Customer shipping address. */ + public Builder setAddress( AccountCreateParams.Configuration.Customer.Shipping.Address address) { this.address = address; return this; @@ -4873,254 +7382,9177 @@ public Builder setEpsPayments( * map. See {@link AccountCreateParams.Configuration.Merchant.Capabilities#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; - } + 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 AccountCreateParams.Configuration.Merchant.Capabilities#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Allow the merchant to process FPX payments. */ + public Builder setFpxPayments( + AccountCreateParams.Configuration.Merchant.Capabilities.FpxPayments fpxPayments) { + this.fpxPayments = fpxPayments; + return this; + } + + /** Allow the merchant to process UK bank transfer payments. */ + public Builder setGbBankTransferPayments( + AccountCreateParams.Configuration.Merchant.Capabilities.GbBankTransferPayments + gbBankTransferPayments) { + this.gbBankTransferPayments = gbBankTransferPayments; + return this; + } + + /** Allow the merchant to process GrabPay payments. */ + public Builder setGrabpayPayments( + AccountCreateParams.Configuration.Merchant.Capabilities.GrabpayPayments + grabpayPayments) { + this.grabpayPayments = grabpayPayments; + return this; + } + + /** Allow the merchant to process iDEAL payments. */ + public Builder setIdealPayments( + AccountCreateParams.Configuration.Merchant.Capabilities.IdealPayments idealPayments) { + this.idealPayments = idealPayments; + return this; + } + + /** Allow the merchant to process JCB card payments. */ + public Builder setJcbPayments( + AccountCreateParams.Configuration.Merchant.Capabilities.JcbPayments jcbPayments) { + this.jcbPayments = jcbPayments; + return this; + } + + /** Allow the merchant to process Japanese bank transfer payments. */ + public Builder setJpBankTransferPayments( + AccountCreateParams.Configuration.Merchant.Capabilities.JpBankTransferPayments + jpBankTransferPayments) { + this.jpBankTransferPayments = jpBankTransferPayments; + return this; + } + + /** Allow the merchant to process Kakao Pay payments. */ + public Builder setKakaoPayPayments( + AccountCreateParams.Configuration.Merchant.Capabilities.KakaoPayPayments + kakaoPayPayments) { + this.kakaoPayPayments = kakaoPayPayments; + return this; + } + + /** Allow the merchant to process Klarna payments. */ + public Builder setKlarnaPayments( + AccountCreateParams.Configuration.Merchant.Capabilities.KlarnaPayments + klarnaPayments) { + this.klarnaPayments = klarnaPayments; + return this; + } + + /** Allow the merchant to process Konbini convenience store payments. */ + public Builder setKonbiniPayments( + AccountCreateParams.Configuration.Merchant.Capabilities.KonbiniPayments + konbiniPayments) { + this.konbiniPayments = konbiniPayments; + return this; + } + + /** Allow the merchant to process Korean card payments. */ + public Builder setKrCardPayments( + AccountCreateParams.Configuration.Merchant.Capabilities.KrCardPayments + krCardPayments) { + this.krCardPayments = krCardPayments; + return this; + } + + /** Allow the merchant to process Link payments. */ + public Builder setLinkPayments( + AccountCreateParams.Configuration.Merchant.Capabilities.LinkPayments linkPayments) { + this.linkPayments = linkPayments; + return this; + } + + /** Allow the merchant to process MobilePay payments. */ + public Builder setMobilepayPayments( + AccountCreateParams.Configuration.Merchant.Capabilities.MobilepayPayments + mobilepayPayments) { + this.mobilepayPayments = mobilepayPayments; + return this; + } + + /** Allow the merchant to process Multibanco payments. */ + public Builder setMultibancoPayments( + AccountCreateParams.Configuration.Merchant.Capabilities.MultibancoPayments + multibancoPayments) { + this.multibancoPayments = multibancoPayments; + return this; + } + + /** Allow the merchant to process Mexican bank transfer payments. */ + public Builder setMxBankTransferPayments( + AccountCreateParams.Configuration.Merchant.Capabilities.MxBankTransferPayments + mxBankTransferPayments) { + this.mxBankTransferPayments = mxBankTransferPayments; + return this; + } + + /** Allow the merchant to process Naver Pay payments. */ + public Builder setNaverPayPayments( + AccountCreateParams.Configuration.Merchant.Capabilities.NaverPayPayments + naverPayPayments) { + this.naverPayPayments = naverPayPayments; + return this; + } + + /** Allow the merchant to process OXXO payments. */ + public Builder setOxxoPayments( + AccountCreateParams.Configuration.Merchant.Capabilities.OxxoPayments oxxoPayments) { + this.oxxoPayments = oxxoPayments; + return this; + } + + /** Allow the merchant to process Przelewy24 (P24) payments. */ + public Builder setP24Payments( + AccountCreateParams.Configuration.Merchant.Capabilities.P24Payments p24Payments) { + this.p24Payments = p24Payments; + return this; + } + + /** Allow the merchant to process Pay by Bank payments. */ + public Builder setPayByBankPayments( + AccountCreateParams.Configuration.Merchant.Capabilities.PayByBankPayments + payByBankPayments) { + this.payByBankPayments = payByBankPayments; + return this; + } + + /** Allow the merchant to process PAYCO payments. */ + public Builder setPaycoPayments( + AccountCreateParams.Configuration.Merchant.Capabilities.PaycoPayments paycoPayments) { + this.paycoPayments = paycoPayments; + return this; + } + + /** Allow the merchant to process PayNow payments. */ + public Builder setPaynowPayments( + AccountCreateParams.Configuration.Merchant.Capabilities.PaynowPayments + paynowPayments) { + this.paynowPayments = paynowPayments; + return this; + } + + /** Allow the merchant to process PromptPay payments. */ + public Builder setPromptpayPayments( + AccountCreateParams.Configuration.Merchant.Capabilities.PromptpayPayments + promptpayPayments) { + this.promptpayPayments = promptpayPayments; + return this; + } + + /** Allow the merchant to process Revolut Pay payments. */ + public Builder setRevolutPayPayments( + AccountCreateParams.Configuration.Merchant.Capabilities.RevolutPayPayments + revolutPayPayments) { + this.revolutPayPayments = revolutPayPayments; + return this; + } + + /** Allow the merchant to process Samsung Pay payments. */ + public Builder setSamsungPayPayments( + AccountCreateParams.Configuration.Merchant.Capabilities.SamsungPayPayments + samsungPayPayments) { + this.samsungPayPayments = samsungPayPayments; + return this; + } + + /** Allow the merchant to process SEPA bank transfer payments. */ + public Builder setSepaBankTransferPayments( + AccountCreateParams.Configuration.Merchant.Capabilities.SepaBankTransferPayments + sepaBankTransferPayments) { + this.sepaBankTransferPayments = sepaBankTransferPayments; + return this; + } + + /** Allow the merchant to process SEPA Direct Debit payments. */ + public Builder setSepaDebitPayments( + AccountCreateParams.Configuration.Merchant.Capabilities.SepaDebitPayments + sepaDebitPayments) { + this.sepaDebitPayments = sepaDebitPayments; + return this; + } + + /** Allow the merchant to process Swish payments. */ + public Builder setSwishPayments( + AccountCreateParams.Configuration.Merchant.Capabilities.SwishPayments swishPayments) { + this.swishPayments = swishPayments; + return this; + } + + /** Allow the merchant to process TWINT payments. */ + public Builder setTwintPayments( + AccountCreateParams.Configuration.Merchant.Capabilities.TwintPayments twintPayments) { + this.twintPayments = twintPayments; + return this; + } + + /** Allow the merchant to process US bank transfer payments. */ + public Builder setUsBankTransferPayments( + AccountCreateParams.Configuration.Merchant.Capabilities.UsBankTransferPayments + usBankTransferPayments) { + this.usBankTransferPayments = usBankTransferPayments; + return this; + } + + /** Allow the merchant to process Zip payments. */ + public Builder setZipPayments( + AccountCreateParams.Configuration.Merchant.Capabilities.ZipPayments zipPayments) { + this.zipPayments = zipPayments; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class AchDebitPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * Required. To request a new Capability for an account, pass true. There + * can be a delay before the requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private AchDebitPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.AchDebitPayments + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.AchDebitPayments( + this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.AchDebitPayments#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.AchDebitPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountCreateParams.Configuration.Merchant.Capabilities.AchDebitPayments.Protections + protections) { + this.protections = protections; + return this; + } + + /** + * Required. To request a new Capability for an account, pass true. + * There can be a delay before the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.AchDebitPayments + .Protections + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.AchDebitPayments + .Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.AchDebitPayments.Protections#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.AchDebitPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Merchant.Capabilities.AchDebitPayments + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.AchDebitPayments + .Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities + .AchDebitPayments.Protections.PspMigration(this.extraParams, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.AchDebitPayments.Protections.PspMigration#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.AchDebitPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class AcssDebitPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * Required. To request a new Capability for an account, pass true. There + * can be a delay before the requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private AcssDebitPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.AcssDebitPayments + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.AcssDebitPayments( + this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.AcssDebitPayments#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.AcssDebitPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountCreateParams.Configuration.Merchant.Capabilities.AcssDebitPayments + .Protections + protections) { + this.protections = protections; + return this; + } + + /** + * Required. To request a new Capability for an account, pass true. + * There can be a delay before the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.AcssDebitPayments + .Protections + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.AcssDebitPayments + .Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.AcssDebitPayments.Protections#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.AcssDebitPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Merchant.Capabilities.AcssDebitPayments + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.AcssDebitPayments + .Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities + .AcssDebitPayments.Protections.PspMigration(this.extraParams, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.AcssDebitPayments.Protections.PspMigration#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.AcssDebitPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class AffirmPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * Required. To request a new Capability for an account, pass true. There + * can be a delay before the requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private AffirmPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.AffirmPayments build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.AffirmPayments( + this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.AffirmPayments#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.AffirmPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountCreateParams.Configuration.Merchant.Capabilities.AffirmPayments.Protections + protections) { + this.protections = protections; + return this; + } + + /** + * Required. To request a new Capability for an account, pass true. + * There can be a delay before the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.AffirmPayments + .Protections + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.AffirmPayments + .Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.AffirmPayments.Protections#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.AffirmPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Merchant.Capabilities.AffirmPayments.Protections + .PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.AffirmPayments + .Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.AffirmPayments + .Protections.PspMigration(this.extraParams, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.AffirmPayments.Protections.PspMigration#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.AffirmPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class AfterpayClearpayPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * Required. To request a new Capability for an account, pass true. There + * can be a delay before the requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private AfterpayClearpayPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.AfterpayClearpayPayments + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities + .AfterpayClearpayPayments(this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.AfterpayClearpayPayments#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.AfterpayClearpayPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountCreateParams.Configuration.Merchant.Capabilities.AfterpayClearpayPayments + .Protections + protections) { + this.protections = protections; + return this; + } + + /** + * Required. To request a new Capability for an account, pass true. + * There can be a delay before the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities + .AfterpayClearpayPayments.Protections + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities + .AfterpayClearpayPayments.Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.AfterpayClearpayPayments.Protections#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.AfterpayClearpayPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Merchant.Capabilities.AfterpayClearpayPayments + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities + .AfterpayClearpayPayments.Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities + .AfterpayClearpayPayments.Protections.PspMigration( + this.extraParams, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.AfterpayClearpayPayments.Protections.PspMigration#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.AfterpayClearpayPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class AlmaPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * Required. To request a new Capability for an account, pass true. There + * can be a delay before the requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private AlmaPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.AlmaPayments build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.AlmaPayments( + this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.AlmaPayments#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.AlmaPayments#extraParams} for + * the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountCreateParams.Configuration.Merchant.Capabilities.AlmaPayments.Protections + protections) { + this.protections = protections; + return this; + } + + /** + * Required. To request a new Capability for an account, pass true. + * There can be a delay before the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.AlmaPayments + .Protections + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.AlmaPayments + .Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.AlmaPayments.Protections#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.AlmaPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Merchant.Capabilities.AlmaPayments.Protections + .PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.AlmaPayments + .Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.AlmaPayments + .Protections.PspMigration(this.extraParams, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.AlmaPayments.Protections.PspMigration#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.AlmaPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class AmazonPayPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * Required. To request a new Capability for an account, pass true. There + * can be a delay before the requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private AmazonPayPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.AmazonPayPayments + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.AmazonPayPayments( + this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.AmazonPayPayments#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.AmazonPayPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountCreateParams.Configuration.Merchant.Capabilities.AmazonPayPayments + .Protections + protections) { + this.protections = protections; + return this; + } + + /** + * Required. To request a new Capability for an account, pass true. + * There can be a delay before the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.AmazonPayPayments + .Protections + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.AmazonPayPayments + .Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.AmazonPayPayments.Protections#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.AmazonPayPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Merchant.Capabilities.AmazonPayPayments + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.AmazonPayPayments + .Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities + .AmazonPayPayments.Protections.PspMigration(this.extraParams, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.AmazonPayPayments.Protections.PspMigration#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.AmazonPayPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class AuBecsDebitPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * Required. To request a new Capability for an account, pass true. There + * can be a delay before the requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private AuBecsDebitPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.AuBecsDebitPayments + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities + .AuBecsDebitPayments(this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.AuBecsDebitPayments#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.AuBecsDebitPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountCreateParams.Configuration.Merchant.Capabilities.AuBecsDebitPayments + .Protections + protections) { + this.protections = protections; + return this; + } + + /** + * Required. To request a new Capability for an account, pass true. + * There can be a delay before the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.AuBecsDebitPayments + .Protections + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities + .AuBecsDebitPayments.Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.AuBecsDebitPayments.Protections#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.AuBecsDebitPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Merchant.Capabilities.AuBecsDebitPayments + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.AuBecsDebitPayments + .Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities + .AuBecsDebitPayments.Protections.PspMigration( + this.extraParams, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.AuBecsDebitPayments.Protections.PspMigration#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.AuBecsDebitPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class BacsDebitPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * Required. To request a new Capability for an account, pass true. There + * can be a delay before the requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private BacsDebitPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.BacsDebitPayments + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.BacsDebitPayments( + this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.BacsDebitPayments#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.BacsDebitPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountCreateParams.Configuration.Merchant.Capabilities.BacsDebitPayments + .Protections + protections) { + this.protections = protections; + return this; + } + + /** + * Required. To request a new Capability for an account, pass true. + * There can be a delay before the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.BacsDebitPayments + .Protections + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.BacsDebitPayments + .Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.BacsDebitPayments.Protections#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.BacsDebitPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Merchant.Capabilities.BacsDebitPayments + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.BacsDebitPayments + .Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities + .BacsDebitPayments.Protections.PspMigration(this.extraParams, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.BacsDebitPayments.Protections.PspMigration#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.BacsDebitPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class BancontactPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * Required. To request a new Capability for an account, pass true. There + * can be a delay before the requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private BancontactPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.BancontactPayments + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.BancontactPayments( + this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.BancontactPayments#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.BancontactPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountCreateParams.Configuration.Merchant.Capabilities.BancontactPayments + .Protections + protections) { + this.protections = protections; + return this; + } + + /** + * Required. To request a new Capability for an account, pass true. + * There can be a delay before the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.BancontactPayments + .Protections + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities + .BancontactPayments.Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.BancontactPayments.Protections#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.BancontactPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Merchant.Capabilities.BancontactPayments + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.BancontactPayments + .Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities + .BancontactPayments.Protections.PspMigration( + this.extraParams, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.BancontactPayments.Protections.PspMigration#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.BancontactPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class BlikPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * Required. To request a new Capability for an account, pass true. There + * can be a delay before the requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private BlikPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.BlikPayments build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.BlikPayments( + this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.BlikPayments#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.BlikPayments#extraParams} for + * the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountCreateParams.Configuration.Merchant.Capabilities.BlikPayments.Protections + protections) { + this.protections = protections; + return this; + } + + /** + * Required. To request a new Capability for an account, pass true. + * There can be a delay before the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.BlikPayments + .Protections + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.BlikPayments + .Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.BlikPayments.Protections#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.BlikPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Merchant.Capabilities.BlikPayments.Protections + .PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.BlikPayments + .Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.BlikPayments + .Protections.PspMigration(this.extraParams, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.BlikPayments.Protections.PspMigration#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.BlikPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class BoletoPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * Required. To request a new Capability for an account, pass true. There + * can be a delay before the requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private BoletoPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.BoletoPayments build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.BoletoPayments( + this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.BoletoPayments#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.BoletoPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountCreateParams.Configuration.Merchant.Capabilities.BoletoPayments.Protections + protections) { + this.protections = protections; + return this; + } + + /** + * Required. To request a new Capability for an account, pass true. + * There can be a delay before the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.BoletoPayments + .Protections + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.BoletoPayments + .Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.BoletoPayments.Protections#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.BoletoPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Merchant.Capabilities.BoletoPayments.Protections + .PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.BoletoPayments + .Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.BoletoPayments + .Protections.PspMigration(this.extraParams, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.BoletoPayments.Protections.PspMigration#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.BoletoPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class CardPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * Required. To request a new Capability for an account, pass true. There + * can be a delay before the requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private CardPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.CardPayments build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.CardPayments( + this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.CardPayments#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.CardPayments#extraParams} for + * the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountCreateParams.Configuration.Merchant.Capabilities.CardPayments.Protections + protections) { + this.protections = protections; + return this; + } + + /** + * Required. To request a new Capability for an account, pass true. + * There can be a delay before the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.CardPayments + .Protections + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.CardPayments + .Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.CardPayments.Protections#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.CardPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Merchant.Capabilities.CardPayments.Protections + .PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.CardPayments + .Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.CardPayments + .Protections.PspMigration(this.extraParams, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.CardPayments.Protections.PspMigration#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.CardPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class CartesBancairesPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * Required. To request a new Capability for an account, pass true. There + * can be a delay before the requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private CartesBancairesPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.CartesBancairesPayments + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities + .CartesBancairesPayments(this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.CartesBancairesPayments#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.CartesBancairesPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountCreateParams.Configuration.Merchant.Capabilities.CartesBancairesPayments + .Protections + protections) { + this.protections = protections; + return this; + } + + /** + * Required. To request a new Capability for an account, pass true. + * There can be a delay before the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.CartesBancairesPayments + .Protections + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities + .CartesBancairesPayments.Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.CartesBancairesPayments.Protections#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.CartesBancairesPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Merchant.Capabilities.CartesBancairesPayments + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities + .CartesBancairesPayments.Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities + .CartesBancairesPayments.Protections.PspMigration( + this.extraParams, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.CartesBancairesPayments.Protections.PspMigration#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.CartesBancairesPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class CashappPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * Required. To request a new Capability for an account, pass true. There + * can be a delay before the requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private CashappPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.CashappPayments build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.CashappPayments( + this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.CashappPayments#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.CashappPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountCreateParams.Configuration.Merchant.Capabilities.CashappPayments.Protections + protections) { + this.protections = protections; + return this; + } + + /** + * Required. To request a new Capability for an account, pass true. + * There can be a delay before the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.CashappPayments + .Protections + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.CashappPayments + .Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.CashappPayments.Protections#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.CashappPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Merchant.Capabilities.CashappPayments + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.CashappPayments + .Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.CashappPayments + .Protections.PspMigration(this.extraParams, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.CashappPayments.Protections.PspMigration#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.CashappPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class EpsPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * Required. To request a new Capability for an account, pass true. There + * can be a delay before the requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private EpsPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.EpsPayments build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.EpsPayments( + this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.EpsPayments#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.EpsPayments#extraParams} for + * the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountCreateParams.Configuration.Merchant.Capabilities.EpsPayments.Protections + protections) { + this.protections = protections; + return this; + } + + /** + * Required. To request a new Capability for an account, pass true. + * There can be a delay before the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.EpsPayments.Protections + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.EpsPayments + .Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.EpsPayments.Protections#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.EpsPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Merchant.Capabilities.EpsPayments.Protections + .PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.EpsPayments + .Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.EpsPayments + .Protections.PspMigration(this.extraParams, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.EpsPayments.Protections.PspMigration#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.EpsPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class FpxPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * Required. To request a new Capability for an account, pass true. There + * can be a delay before the requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private FpxPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.FpxPayments build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.FpxPayments( + this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.FpxPayments#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.FpxPayments#extraParams} for + * the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountCreateParams.Configuration.Merchant.Capabilities.FpxPayments.Protections + protections) { + this.protections = protections; + return this; + } + + /** + * Required. To request a new Capability for an account, pass true. + * There can be a delay before the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.FpxPayments.Protections + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.FpxPayments + .Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.FpxPayments.Protections#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.FpxPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Merchant.Capabilities.FpxPayments.Protections + .PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.FpxPayments + .Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.FpxPayments + .Protections.PspMigration(this.extraParams, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.FpxPayments.Protections.PspMigration#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.FpxPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class GbBankTransferPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * Required. To request a new Capability for an account, pass true. There + * can be a delay before the requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private GbBankTransferPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.GbBankTransferPayments + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities + .GbBankTransferPayments(this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.GbBankTransferPayments#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.GbBankTransferPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountCreateParams.Configuration.Merchant.Capabilities.GbBankTransferPayments + .Protections + protections) { + this.protections = protections; + return this; + } + + /** + * Required. To request a new Capability for an account, pass true. + * There can be a delay before the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.GbBankTransferPayments + .Protections + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities + .GbBankTransferPayments.Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.GbBankTransferPayments.Protections#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.GbBankTransferPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Merchant.Capabilities.GbBankTransferPayments + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities + .GbBankTransferPayments.Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities + .GbBankTransferPayments.Protections.PspMigration( + this.extraParams, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.GbBankTransferPayments.Protections.PspMigration#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.GbBankTransferPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class GrabpayPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * Required. To request a new Capability for an account, pass true. There + * can be a delay before the requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private GrabpayPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.GrabpayPayments build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.GrabpayPayments( + this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.GrabpayPayments#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.GrabpayPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountCreateParams.Configuration.Merchant.Capabilities.GrabpayPayments.Protections + protections) { + this.protections = protections; + return this; + } + + /** + * Required. To request a new Capability for an account, pass true. + * There can be a delay before the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.GrabpayPayments + .Protections + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.GrabpayPayments + .Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.GrabpayPayments.Protections#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.GrabpayPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Merchant.Capabilities.GrabpayPayments + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.GrabpayPayments + .Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.GrabpayPayments + .Protections.PspMigration(this.extraParams, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.GrabpayPayments.Protections.PspMigration#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.GrabpayPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class IdealPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * Required. To request a new Capability for an account, pass true. There + * can be a delay before the requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private IdealPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.IdealPayments build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.IdealPayments( + this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.IdealPayments#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.IdealPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountCreateParams.Configuration.Merchant.Capabilities.IdealPayments.Protections + protections) { + this.protections = protections; + return this; + } + + /** + * Required. To request a new Capability for an account, pass true. + * There can be a delay before the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.IdealPayments + .Protections + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.IdealPayments + .Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.IdealPayments.Protections#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.IdealPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Merchant.Capabilities.IdealPayments.Protections + .PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.IdealPayments + .Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.IdealPayments + .Protections.PspMigration(this.extraParams, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.IdealPayments.Protections.PspMigration#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.IdealPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class JcbPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * Required. To request a new Capability for an account, pass true. There + * can be a delay before the requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private JcbPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.JcbPayments build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.JcbPayments( + this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.JcbPayments#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.JcbPayments#extraParams} for + * the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountCreateParams.Configuration.Merchant.Capabilities.JcbPayments.Protections + protections) { + this.protections = protections; + return this; + } + + /** + * Required. To request a new Capability for an account, pass true. + * There can be a delay before the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.JcbPayments.Protections + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.JcbPayments + .Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.JcbPayments.Protections#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.JcbPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Merchant.Capabilities.JcbPayments.Protections + .PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.JcbPayments + .Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.JcbPayments + .Protections.PspMigration(this.extraParams, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.JcbPayments.Protections.PspMigration#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.JcbPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class JpBankTransferPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * Required. To request a new Capability for an account, pass true. There + * can be a delay before the requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private JpBankTransferPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.JpBankTransferPayments + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities + .JpBankTransferPayments(this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.JpBankTransferPayments#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.JpBankTransferPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountCreateParams.Configuration.Merchant.Capabilities.JpBankTransferPayments + .Protections + protections) { + this.protections = protections; + return this; + } + + /** + * Required. To request a new Capability for an account, pass true. + * There can be a delay before the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.JpBankTransferPayments + .Protections + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities + .JpBankTransferPayments.Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.JpBankTransferPayments.Protections#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.JpBankTransferPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Merchant.Capabilities.JpBankTransferPayments + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities + .JpBankTransferPayments.Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities + .JpBankTransferPayments.Protections.PspMigration( + this.extraParams, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.JpBankTransferPayments.Protections.PspMigration#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.JpBankTransferPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class KakaoPayPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * Required. To request a new Capability for an account, pass true. There + * can be a delay before the requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private KakaoPayPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.KakaoPayPayments + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.KakaoPayPayments( + this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.KakaoPayPayments#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.KakaoPayPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountCreateParams.Configuration.Merchant.Capabilities.KakaoPayPayments.Protections + protections) { + this.protections = protections; + return this; + } + + /** + * Required. To request a new Capability for an account, pass true. + * There can be a delay before the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.KakaoPayPayments + .Protections + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.KakaoPayPayments + .Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.KakaoPayPayments.Protections#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.KakaoPayPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Merchant.Capabilities.KakaoPayPayments + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.KakaoPayPayments + .Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities + .KakaoPayPayments.Protections.PspMigration(this.extraParams, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.KakaoPayPayments.Protections.PspMigration#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.KakaoPayPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class KlarnaPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * Required. To request a new Capability for an account, pass true. There + * can be a delay before the requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private KlarnaPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.KlarnaPayments build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.KlarnaPayments( + this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.KlarnaPayments#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.KlarnaPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountCreateParams.Configuration.Merchant.Capabilities.KlarnaPayments.Protections + protections) { + this.protections = protections; + return this; + } + + /** + * Required. To request a new Capability for an account, pass true. + * There can be a delay before the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.KlarnaPayments + .Protections + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.KlarnaPayments + .Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.KlarnaPayments.Protections#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.KlarnaPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Merchant.Capabilities.KlarnaPayments.Protections + .PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.KlarnaPayments + .Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.KlarnaPayments + .Protections.PspMigration(this.extraParams, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.KlarnaPayments.Protections.PspMigration#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.KlarnaPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class KonbiniPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * Required. To request a new Capability for an account, pass true. There + * can be a delay before the requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private KonbiniPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.KonbiniPayments build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.KonbiniPayments( + this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.KonbiniPayments#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.KonbiniPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountCreateParams.Configuration.Merchant.Capabilities.KonbiniPayments.Protections + protections) { + this.protections = protections; + return this; + } + + /** + * Required. To request a new Capability for an account, pass true. + * There can be a delay before the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.KonbiniPayments + .Protections + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.KonbiniPayments + .Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.KonbiniPayments.Protections#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.KonbiniPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Merchant.Capabilities.KonbiniPayments + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.KonbiniPayments + .Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.KonbiniPayments + .Protections.PspMigration(this.extraParams, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.KonbiniPayments.Protections.PspMigration#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.KonbiniPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class KrCardPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * Required. To request a new Capability for an account, pass true. There + * can be a delay before the requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private KrCardPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.KrCardPayments build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.KrCardPayments( + this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.KrCardPayments#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.KrCardPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountCreateParams.Configuration.Merchant.Capabilities.KrCardPayments.Protections + protections) { + this.protections = protections; + return this; + } + + /** + * Required. To request a new Capability for an account, pass true. + * There can be a delay before the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.KrCardPayments + .Protections + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.KrCardPayments + .Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.KrCardPayments.Protections#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.KrCardPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Merchant.Capabilities.KrCardPayments.Protections + .PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.KrCardPayments + .Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.KrCardPayments + .Protections.PspMigration(this.extraParams, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.KrCardPayments.Protections.PspMigration#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.KrCardPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class LinkPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * Required. To request a new Capability for an account, pass true. There + * can be a delay before the requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private LinkPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.LinkPayments build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.LinkPayments( + this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.LinkPayments#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.LinkPayments#extraParams} for + * the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountCreateParams.Configuration.Merchant.Capabilities.LinkPayments.Protections + protections) { + this.protections = protections; + return this; + } + + /** + * Required. To request a new Capability for an account, pass true. + * There can be a delay before the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.LinkPayments + .Protections + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.LinkPayments + .Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.LinkPayments.Protections#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.LinkPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Merchant.Capabilities.LinkPayments.Protections + .PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.LinkPayments + .Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.LinkPayments + .Protections.PspMigration(this.extraParams, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.LinkPayments.Protections.PspMigration#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.LinkPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class MobilepayPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * Required. To request a new Capability for an account, pass true. There + * can be a delay before the requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private MobilepayPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.MobilepayPayments + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.MobilepayPayments( + this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.MobilepayPayments#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.MobilepayPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountCreateParams.Configuration.Merchant.Capabilities.MobilepayPayments + .Protections + protections) { + this.protections = protections; + return this; + } + + /** + * Required. To request a new Capability for an account, pass true. + * There can be a delay before the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.MobilepayPayments + .Protections + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.MobilepayPayments + .Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.MobilepayPayments.Protections#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.MobilepayPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Merchant.Capabilities.MobilepayPayments + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.MobilepayPayments + .Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities + .MobilepayPayments.Protections.PspMigration(this.extraParams, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.MobilepayPayments.Protections.PspMigration#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.MobilepayPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class MultibancoPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * Required. To request a new Capability for an account, pass true. There + * can be a delay before the requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private MultibancoPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.MultibancoPayments + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.MultibancoPayments( + this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.MultibancoPayments#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.MultibancoPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountCreateParams.Configuration.Merchant.Capabilities.MultibancoPayments + .Protections + protections) { + this.protections = protections; + return this; + } + + /** + * Required. To request a new Capability for an account, pass true. + * There can be a delay before the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.MultibancoPayments + .Protections + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities + .MultibancoPayments.Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.MultibancoPayments.Protections#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.MultibancoPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Merchant.Capabilities.MultibancoPayments + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.MultibancoPayments + .Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities + .MultibancoPayments.Protections.PspMigration( + this.extraParams, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.MultibancoPayments.Protections.PspMigration#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.MultibancoPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class MxBankTransferPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * Required. To request a new Capability for an account, pass true. There + * can be a delay before the requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private MxBankTransferPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.MxBankTransferPayments + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities + .MxBankTransferPayments(this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.MxBankTransferPayments#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.MxBankTransferPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountCreateParams.Configuration.Merchant.Capabilities.MxBankTransferPayments + .Protections + protections) { + this.protections = protections; + return this; + } + + /** + * Required. To request a new Capability for an account, pass true. + * There can be a delay before the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.MxBankTransferPayments + .Protections + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities + .MxBankTransferPayments.Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.MxBankTransferPayments.Protections#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.MxBankTransferPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Merchant.Capabilities.MxBankTransferPayments + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities + .MxBankTransferPayments.Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities + .MxBankTransferPayments.Protections.PspMigration( + this.extraParams, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.MxBankTransferPayments.Protections.PspMigration#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.MxBankTransferPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class NaverPayPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * Required. To request a new Capability for an account, pass true. There + * can be a delay before the requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private NaverPayPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.NaverPayPayments + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.NaverPayPayments( + this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.NaverPayPayments#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.NaverPayPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountCreateParams.Configuration.Merchant.Capabilities.NaverPayPayments.Protections + protections) { + this.protections = protections; + return this; + } + + /** + * Required. To request a new Capability for an account, pass true. + * There can be a delay before the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.NaverPayPayments + .Protections + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.NaverPayPayments + .Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.NaverPayPayments.Protections#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.NaverPayPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Merchant.Capabilities.NaverPayPayments + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.NaverPayPayments + .Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities + .NaverPayPayments.Protections.PspMigration(this.extraParams, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.NaverPayPayments.Protections.PspMigration#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.NaverPayPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class OxxoPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * Required. To request a new Capability for an account, pass true. There + * can be a delay before the requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private OxxoPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.OxxoPayments build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.OxxoPayments( + this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.OxxoPayments#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.OxxoPayments#extraParams} for + * the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountCreateParams.Configuration.Merchant.Capabilities.OxxoPayments.Protections + protections) { + this.protections = protections; + return this; + } + + /** + * Required. To request a new Capability for an account, pass true. + * There can be a delay before the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.OxxoPayments + .Protections + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.OxxoPayments + .Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.OxxoPayments.Protections#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.OxxoPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Merchant.Capabilities.OxxoPayments.Protections + .PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.OxxoPayments + .Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.OxxoPayments + .Protections.PspMigration(this.extraParams, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.OxxoPayments.Protections.PspMigration#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.OxxoPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class P24Payments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * Required. To request a new Capability for an account, pass true. There + * can be a delay before the requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private P24Payments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.P24Payments build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.P24Payments( + this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.P24Payments#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.P24Payments#extraParams} for + * the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountCreateParams.Configuration.Merchant.Capabilities.P24Payments.Protections + protections) { + this.protections = protections; + return this; + } + + /** + * Required. To request a new Capability for an account, pass true. + * There can be a delay before the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.P24Payments.Protections + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.P24Payments + .Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.P24Payments.Protections#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.P24Payments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Merchant.Capabilities.P24Payments.Protections + .PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.P24Payments + .Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.P24Payments + .Protections.PspMigration(this.extraParams, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.P24Payments.Protections.PspMigration#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.P24Payments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PayByBankPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * Required. To request a new Capability for an account, pass true. There + * can be a delay before the requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private PayByBankPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.PayByBankPayments + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.PayByBankPayments( + this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.PayByBankPayments#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.PayByBankPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountCreateParams.Configuration.Merchant.Capabilities.PayByBankPayments + .Protections + protections) { + this.protections = protections; + return this; + } + + /** + * Required. To request a new Capability for an account, pass true. + * There can be a delay before the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.PayByBankPayments + .Protections + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.PayByBankPayments + .Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.PayByBankPayments.Protections#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.PayByBankPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Merchant.Capabilities.PayByBankPayments + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.PayByBankPayments + .Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities + .PayByBankPayments.Protections.PspMigration(this.extraParams, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.PayByBankPayments.Protections.PspMigration#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.PayByBankPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PaycoPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * Required. To request a new Capability for an account, pass true. There + * can be a delay before the requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private PaycoPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.PaycoPayments build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.PaycoPayments( + this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.PaycoPayments#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.PaycoPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountCreateParams.Configuration.Merchant.Capabilities.PaycoPayments.Protections + protections) { + this.protections = protections; + return this; + } + + /** + * Required. To request a new Capability for an account, pass true. + * There can be a delay before the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.PaycoPayments + .Protections + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.PaycoPayments + .Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.PaycoPayments.Protections#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.PaycoPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Merchant.Capabilities.PaycoPayments.Protections + .PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.PaycoPayments + .Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.PaycoPayments + .Protections.PspMigration(this.extraParams, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.PaycoPayments.Protections.PspMigration#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.PaycoPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PaynowPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; /** - * 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 AccountCreateParams.Configuration.Merchant.Capabilities#extraParams} - * for the field documentation. + * Required. To request a new Capability for an account, pass true. There + * can be a delay before the requested Capability becomes active. */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); - } - this.extraParams.putAll(map); - return this; - } + @SerializedName("requested") + Boolean requested; - /** Allow the merchant to process FPX payments. */ - public Builder setFpxPayments( - AccountCreateParams.Configuration.Merchant.Capabilities.FpxPayments fpxPayments) { - this.fpxPayments = fpxPayments; - return this; + private PaynowPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; } - /** Allow the merchant to process UK bank transfer payments. */ - public Builder setGbBankTransferPayments( - AccountCreateParams.Configuration.Merchant.Capabilities.GbBankTransferPayments - gbBankTransferPayments) { - this.gbBankTransferPayments = gbBankTransferPayments; - return this; + public static Builder builder() { + return new Builder(); } - /** Allow the merchant to process GrabPay payments. */ - public Builder setGrabpayPayments( - AccountCreateParams.Configuration.Merchant.Capabilities.GrabpayPayments - grabpayPayments) { - this.grabpayPayments = grabpayPayments; - return this; - } + public static class Builder { + private Map extraParams; - /** Allow the merchant to process iDEAL payments. */ - public Builder setIdealPayments( - AccountCreateParams.Configuration.Merchant.Capabilities.IdealPayments idealPayments) { - this.idealPayments = idealPayments; - return this; - } + private Protections protections; - /** Allow the merchant to process JCB card payments. */ - public Builder setJcbPayments( - AccountCreateParams.Configuration.Merchant.Capabilities.JcbPayments jcbPayments) { - this.jcbPayments = jcbPayments; - return this; - } + private Boolean requested; - /** Allow the merchant to process Japanese bank transfer payments. */ - public Builder setJpBankTransferPayments( - AccountCreateParams.Configuration.Merchant.Capabilities.JpBankTransferPayments - jpBankTransferPayments) { - this.jpBankTransferPayments = jpBankTransferPayments; - return this; - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.PaynowPayments build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.PaynowPayments( + this.extraParams, this.protections, this.requested); + } - /** Allow the merchant to process Kakao Pay payments. */ - public Builder setKakaoPayPayments( - AccountCreateParams.Configuration.Merchant.Capabilities.KakaoPayPayments - kakaoPayPayments) { - this.kakaoPayPayments = kakaoPayPayments; - 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.PaynowPayments#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; + } - /** Allow the merchant to process Klarna payments. */ - public Builder setKlarnaPayments( - AccountCreateParams.Configuration.Merchant.Capabilities.KlarnaPayments - klarnaPayments) { - this.klarnaPayments = klarnaPayments; - 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.PaynowPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - /** Allow the merchant to process Konbini convenience store payments. */ - public Builder setKonbiniPayments( - AccountCreateParams.Configuration.Merchant.Capabilities.KonbiniPayments - konbiniPayments) { - this.konbiniPayments = konbiniPayments; - return this; - } + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountCreateParams.Configuration.Merchant.Capabilities.PaynowPayments.Protections + protections) { + this.protections = protections; + return this; + } - /** Allow the merchant to process Korean card payments. */ - public Builder setKrCardPayments( - AccountCreateParams.Configuration.Merchant.Capabilities.KrCardPayments - krCardPayments) { - this.krCardPayments = krCardPayments; - return this; + /** + * Required. To request a new Capability for an account, pass true. + * There can be a delay before the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } } - /** Allow the merchant to process Link payments. */ - public Builder setLinkPayments( - AccountCreateParams.Configuration.Merchant.Capabilities.LinkPayments linkPayments) { - this.linkPayments = linkPayments; - return this; - } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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; - /** Allow the merchant to process MobilePay payments. */ - public Builder setMobilepayPayments( - AccountCreateParams.Configuration.Merchant.Capabilities.MobilepayPayments - mobilepayPayments) { - this.mobilepayPayments = mobilepayPayments; - return this; - } + /** Required. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - /** Allow the merchant to process Multibanco payments. */ - public Builder setMultibancoPayments( - AccountCreateParams.Configuration.Merchant.Capabilities.MultibancoPayments - multibancoPayments) { - this.multibancoPayments = multibancoPayments; - return this; - } + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - /** Allow the merchant to process Mexican bank transfer payments. */ - public Builder setMxBankTransferPayments( - AccountCreateParams.Configuration.Merchant.Capabilities.MxBankTransferPayments - mxBankTransferPayments) { - this.mxBankTransferPayments = mxBankTransferPayments; - return this; - } + public static Builder builder() { + return new Builder(); + } - /** Allow the merchant to process Naver Pay payments. */ - public Builder setNaverPayPayments( - AccountCreateParams.Configuration.Merchant.Capabilities.NaverPayPayments - naverPayPayments) { - this.naverPayPayments = naverPayPayments; - return this; - } + public static class Builder { + private Map extraParams; - /** Allow the merchant to process OXXO payments. */ - public Builder setOxxoPayments( - AccountCreateParams.Configuration.Merchant.Capabilities.OxxoPayments oxxoPayments) { - this.oxxoPayments = oxxoPayments; - return this; - } + private PspMigration pspMigration; - /** Allow the merchant to process Przelewy24 (P24) payments. */ - public Builder setP24Payments( - AccountCreateParams.Configuration.Merchant.Capabilities.P24Payments p24Payments) { - this.p24Payments = p24Payments; - return this; - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.PaynowPayments + .Protections + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.PaynowPayments + .Protections(this.extraParams, this.pspMigration); + } - /** Allow the merchant to process Pay by Bank payments. */ - public Builder setPayByBankPayments( - AccountCreateParams.Configuration.Merchant.Capabilities.PayByBankPayments - payByBankPayments) { - this.payByBankPayments = payByBankPayments; - 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.PaynowPayments.Protections#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; + } - /** Allow the merchant to process PAYCO payments. */ - public Builder setPaycoPayments( - AccountCreateParams.Configuration.Merchant.Capabilities.PaycoPayments paycoPayments) { - this.paycoPayments = paycoPayments; - 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.PaynowPayments.Protections#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - /** Allow the merchant to process PayNow payments. */ - public Builder setPaynowPayments( - AccountCreateParams.Configuration.Merchant.Capabilities.PaynowPayments - paynowPayments) { - this.paynowPayments = paynowPayments; - return this; - } + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Merchant.Capabilities.PaynowPayments.Protections + .PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } - /** Allow the merchant to process PromptPay payments. */ - public Builder setPromptpayPayments( - AccountCreateParams.Configuration.Merchant.Capabilities.PromptpayPayments - promptpayPayments) { - this.promptpayPayments = promptpayPayments; - return this; - } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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; - /** Allow the merchant to process Revolut Pay payments. */ - public Builder setRevolutPayPayments( - AccountCreateParams.Configuration.Merchant.Capabilities.RevolutPayPayments - revolutPayPayments) { - this.revolutPayPayments = revolutPayPayments; - return this; - } + /** Required. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; - /** Allow the merchant to process Samsung Pay payments. */ - public Builder setSamsungPayPayments( - AccountCreateParams.Configuration.Merchant.Capabilities.SamsungPayPayments - samsungPayPayments) { - this.samsungPayPayments = samsungPayPayments; - return this; - } + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } - /** Allow the merchant to process SEPA bank transfer payments. */ - public Builder setSepaBankTransferPayments( - AccountCreateParams.Configuration.Merchant.Capabilities.SepaBankTransferPayments - sepaBankTransferPayments) { - this.sepaBankTransferPayments = sepaBankTransferPayments; - return this; - } + public static Builder builder() { + return new Builder(); + } - /** Allow the merchant to process SEPA Direct Debit payments. */ - public Builder setSepaDebitPayments( - AccountCreateParams.Configuration.Merchant.Capabilities.SepaDebitPayments - sepaDebitPayments) { - this.sepaDebitPayments = sepaDebitPayments; - return this; - } + public static class Builder { + private Map extraParams; - /** Allow the merchant to process Swish payments. */ - public Builder setSwishPayments( - AccountCreateParams.Configuration.Merchant.Capabilities.SwishPayments swishPayments) { - this.swishPayments = swishPayments; - return this; - } + private Boolean requested; - /** Allow the merchant to process TWINT payments. */ - public Builder setTwintPayments( - AccountCreateParams.Configuration.Merchant.Capabilities.TwintPayments twintPayments) { - this.twintPayments = twintPayments; - return this; - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.PaynowPayments + .Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.PaynowPayments + .Protections.PspMigration(this.extraParams, this.requested); + } - /** Allow the merchant to process US bank transfer payments. */ - public Builder setUsBankTransferPayments( - AccountCreateParams.Configuration.Merchant.Capabilities.UsBankTransferPayments - usBankTransferPayments) { - this.usBankTransferPayments = usBankTransferPayments; - 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.PaynowPayments.Protections.PspMigration#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; + } - /** Allow the merchant to process Zip payments. */ - public Builder setZipPayments( - AccountCreateParams.Configuration.Merchant.Capabilities.ZipPayments zipPayments) { - this.zipPayments = zipPayments; - 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.PaynowPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } } } @Getter @EqualsAndHashCode(callSuper = false) - public static class AchDebitPayments { + public static class PromptpayPayments { /** * 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. @@ -5131,6 +16563,10 @@ public static class AchDebitPayments { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + /** * Required. To request a new Capability for an account, pass true. There * can be a delay before the requested Capability becomes active. @@ -5138,8 +16574,10 @@ public static class AchDebitPayments { @SerializedName("requested") Boolean requested; - private AchDebitPayments(Map extraParams, Boolean requested) { + private PromptpayPayments( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -5150,20 +16588,22 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Merchant.Capabilities.AchDebitPayments + public AccountCreateParams.Configuration.Merchant.Capabilities.PromptpayPayments build() { - return new AccountCreateParams.Configuration.Merchant.Capabilities.AchDebitPayments( - this.extraParams, this.requested); + return new AccountCreateParams.Configuration.Merchant.Capabilities.PromptpayPayments( + this.extraParams, this.protections, this.requested); } /** * 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.AchDebitPayments#extraParams} + * AccountCreateParams.Configuration.Merchant.Capabilities.PromptpayPayments#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -5174,35 +16614,201 @@ public Builder putExtraParam(String key, Object 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.AchDebitPayments#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 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.PromptpayPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountCreateParams.Configuration.Merchant.Capabilities.PromptpayPayments + .Protections + protections) { + this.protections = protections; + return this; + } + + /** + * Required. To request a new Capability for an account, pass true. + * There can be a delay before the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.PromptpayPayments + .Protections + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.PromptpayPayments + .Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.PromptpayPayments.Protections#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.PromptpayPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Merchant.Capabilities.PromptpayPayments + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.PromptpayPayments + .Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities + .PromptpayPayments.Protections.PspMigration(this.extraParams, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.PromptpayPayments.Protections.PspMigration#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.PromptpayPayments.Protections.PspMigration#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. To request a new Capability for an account, pass true. - * There can be a delay before the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; + /** Required. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } } } } @Getter @EqualsAndHashCode(callSuper = false) - public static class AcssDebitPayments { + public static class RevolutPayPayments { /** * 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. @@ -5213,6 +16819,10 @@ public static class AcssDebitPayments { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + /** * Required. To request a new Capability for an account, pass true. There * can be a delay before the requested Capability becomes active. @@ -5220,8 +16830,10 @@ public static class AcssDebitPayments { @SerializedName("requested") Boolean requested; - private AcssDebitPayments(Map extraParams, Boolean requested) { + private RevolutPayPayments( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -5232,20 +16844,22 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Merchant.Capabilities.AcssDebitPayments + public AccountCreateParams.Configuration.Merchant.Capabilities.RevolutPayPayments build() { - return new AccountCreateParams.Configuration.Merchant.Capabilities.AcssDebitPayments( - this.extraParams, this.requested); + return new AccountCreateParams.Configuration.Merchant.Capabilities.RevolutPayPayments( + this.extraParams, this.protections, this.requested); } /** * 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.AcssDebitPayments#extraParams} + * AccountCreateParams.Configuration.Merchant.Capabilities.RevolutPayPayments#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -5260,7 +16874,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.AcssDebitPayments#extraParams} + * AccountCreateParams.Configuration.Merchant.Capabilities.RevolutPayPayments#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -5271,6 +16885,15 @@ public Builder putAllExtraParam(Map map) { return this; } + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountCreateParams.Configuration.Merchant.Capabilities.RevolutPayPayments + .Protections + protections) { + this.protections = protections; + return this; + } + /** * Required. To request a new Capability for an account, pass true. * There can be a delay before the requested Capability becomes active. @@ -5280,174 +16903,169 @@ public Builder setRequested(Boolean requested) { return this; } } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class AffirmPayments { - /** - * 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; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. To request a new Capability for an account, pass true. There - * can be a delay before the requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + /** Required. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - private AffirmPayments(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - public static Builder builder() { - return new Builder(); - } + public static Builder builder() { + return new Builder(); + } - public static class Builder { - private Map extraParams; + public static class Builder { + private Map extraParams; - private Boolean requested; + private PspMigration pspMigration; - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Merchant.Capabilities.AffirmPayments build() { - return new AccountCreateParams.Configuration.Merchant.Capabilities.AffirmPayments( - this.extraParams, this.requested); - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.RevolutPayPayments + .Protections + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities + .RevolutPayPayments.Protections(this.extraParams, this.pspMigration); + } - /** - * 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.AffirmPayments#extraParams} - * for the field documentation. - */ - public Builder putExtraParam(String key, Object value) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.RevolutPayPayments.Protections#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; } - 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.AffirmPayments#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.RevolutPayPayments.Protections#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; } - this.extraParams.putAll(map); - return this; - } - /** - * Required. To request a new Capability for an account, pass true. - * There can be a delay before the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Merchant.Capabilities.RevolutPayPayments + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } } - } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class AfterpayClearpayPayments { - /** - * 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; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a new Capability for an account, pass true. There - * can be a delay before the requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + /** Required. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; - private AfterpayClearpayPayments(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } - public static Builder builder() { - return new Builder(); - } + public static Builder builder() { + return new Builder(); + } - public static class Builder { - private Map extraParams; + public static class Builder { + private Map extraParams; - private Boolean requested; + private Boolean requested; - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Merchant.Capabilities.AfterpayClearpayPayments - build() { - return new AccountCreateParams.Configuration.Merchant.Capabilities - .AfterpayClearpayPayments(this.extraParams, this.requested); - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.RevolutPayPayments + .Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities + .RevolutPayPayments.Protections.PspMigration( + this.extraParams, this.requested); + } - /** - * 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.AfterpayClearpayPayments#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 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.RevolutPayPayments.Protections.PspMigration#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 - * AccountCreateParams.Configuration.Merchant.Capabilities.AfterpayClearpayPayments#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 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.RevolutPayPayments.Protections.PspMigration#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. To request a new Capability for an account, pass true. - * There can be a delay before the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; + /** Required. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } } } } @Getter @EqualsAndHashCode(callSuper = false) - public static class AlmaPayments { + public static class SamsungPayPayments { /** * 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. @@ -5458,6 +17076,10 @@ public static class AlmaPayments { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + /** * Required. To request a new Capability for an account, pass true. There * can be a delay before the requested Capability becomes active. @@ -5465,8 +17087,10 @@ public static class AlmaPayments { @SerializedName("requested") Boolean requested; - private AlmaPayments(Map extraParams, Boolean requested) { + private SamsungPayPayments( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -5477,20 +17101,23 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Merchant.Capabilities.AlmaPayments build() { - return new AccountCreateParams.Configuration.Merchant.Capabilities.AlmaPayments( - this.extraParams, this.requested); + public AccountCreateParams.Configuration.Merchant.Capabilities.SamsungPayPayments + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.SamsungPayPayments( + this.extraParams, this.protections, this.requested); } /** * 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.AlmaPayments#extraParams} for - * the field documentation. + * AccountCreateParams.Configuration.Merchant.Capabilities.SamsungPayPayments#extraParams} + * for the field documentation. */ public Builder putExtraParam(String key, Object value) { if (this.extraParams == null) { @@ -5504,8 +17131,8 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.AlmaPayments#extraParams} for - * the field documentation. + * AccountCreateParams.Configuration.Merchant.Capabilities.SamsungPayPayments#extraParams} + * for the field documentation. */ public Builder putAllExtraParam(Map map) { if (this.extraParams == null) { @@ -5515,6 +17142,15 @@ public Builder putAllExtraParam(Map map) { return this; } + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountCreateParams.Configuration.Merchant.Capabilities.SamsungPayPayments + .Protections + protections) { + this.protections = protections; + return this; + } + /** * Required. To request a new Capability for an account, pass true. * There can be a delay before the requested Capability becomes active. @@ -5524,175 +17160,169 @@ public Builder setRequested(Boolean requested) { return this; } } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class AmazonPayPayments { - /** - * 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; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. To request a new Capability for an account, pass true. There - * can be a delay before the requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + /** Required. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - private AmazonPayPayments(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - public static Builder builder() { - return new Builder(); - } + public static Builder builder() { + return new Builder(); + } - public static class Builder { - private Map extraParams; + public static class Builder { + private Map extraParams; - private Boolean requested; + private PspMigration pspMigration; - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Merchant.Capabilities.AmazonPayPayments - build() { - return new AccountCreateParams.Configuration.Merchant.Capabilities.AmazonPayPayments( - this.extraParams, this.requested); - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.SamsungPayPayments + .Protections + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities + .SamsungPayPayments.Protections(this.extraParams, this.pspMigration); + } - /** - * 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.AmazonPayPayments#extraParams} - * for the field documentation. - */ - public Builder putExtraParam(String key, Object value) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.SamsungPayPayments.Protections#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; } - 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.AmazonPayPayments#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.SamsungPayPayments.Protections#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; } - this.extraParams.putAll(map); - return this; - } - /** - * Required. To request a new Capability for an account, pass true. - * There can be a delay before the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Merchant.Capabilities.SamsungPayPayments + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } } - } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class AuBecsDebitPayments { - /** - * 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; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a new Capability for an account, pass true. There - * can be a delay before the requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + /** Required. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; - private AuBecsDebitPayments(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } - public static Builder builder() { - return new Builder(); - } + public static Builder builder() { + return new Builder(); + } - public static class Builder { - private Map extraParams; + public static class Builder { + private Map extraParams; - private Boolean requested; + private Boolean requested; - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Merchant.Capabilities.AuBecsDebitPayments - build() { - return new AccountCreateParams.Configuration.Merchant.Capabilities - .AuBecsDebitPayments(this.extraParams, this.requested); - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.SamsungPayPayments + .Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities + .SamsungPayPayments.Protections.PspMigration( + this.extraParams, this.requested); + } - /** - * 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.AuBecsDebitPayments#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 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.SamsungPayPayments.Protections.PspMigration#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 - * AccountCreateParams.Configuration.Merchant.Capabilities.AuBecsDebitPayments#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 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.SamsungPayPayments.Protections.PspMigration#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. To request a new Capability for an account, pass true. - * There can be a delay before the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; + /** Required. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } } } } @Getter @EqualsAndHashCode(callSuper = false) - public static class BacsDebitPayments { + public static class SepaBankTransferPayments { /** * 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. @@ -5703,6 +17333,10 @@ public static class BacsDebitPayments { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + /** * Required. To request a new Capability for an account, pass true. There * can be a delay before the requested Capability becomes active. @@ -5710,8 +17344,10 @@ public static class BacsDebitPayments { @SerializedName("requested") Boolean requested; - private BacsDebitPayments(Map extraParams, Boolean requested) { + private SepaBankTransferPayments( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -5722,20 +17358,22 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Merchant.Capabilities.BacsDebitPayments + public AccountCreateParams.Configuration.Merchant.Capabilities.SepaBankTransferPayments build() { - return new AccountCreateParams.Configuration.Merchant.Capabilities.BacsDebitPayments( - this.extraParams, this.requested); + return new AccountCreateParams.Configuration.Merchant.Capabilities + .SepaBankTransferPayments(this.extraParams, this.protections, this.requested); } /** * 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.BacsDebitPayments#extraParams} + * AccountCreateParams.Configuration.Merchant.Capabilities.SepaBankTransferPayments#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -5750,7 +17388,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.BacsDebitPayments#extraParams} + * AccountCreateParams.Configuration.Merchant.Capabilities.SepaBankTransferPayments#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -5761,6 +17399,15 @@ public Builder putAllExtraParam(Map map) { return this; } + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountCreateParams.Configuration.Merchant.Capabilities.SepaBankTransferPayments + .Protections + protections) { + this.protections = protections; + return this; + } + /** * Required. To request a new Capability for an account, pass true. * There can be a delay before the requested Capability becomes active. @@ -5770,174 +17417,169 @@ public Builder setRequested(Boolean requested) { return this; } } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class BancontactPayments { - /** - * 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; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. To request a new Capability for an account, pass true. There - * can be a delay before the requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + /** Required. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - private BancontactPayments(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - public static Builder builder() { - return new Builder(); - } + public static Builder builder() { + return new Builder(); + } - public static class Builder { - private Map extraParams; + public static class Builder { + private Map extraParams; - private Boolean requested; + private PspMigration pspMigration; - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Merchant.Capabilities.BancontactPayments - build() { - return new AccountCreateParams.Configuration.Merchant.Capabilities.BancontactPayments( - this.extraParams, this.requested); - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities + .SepaBankTransferPayments.Protections + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities + .SepaBankTransferPayments.Protections(this.extraParams, this.pspMigration); + } - /** - * 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.BancontactPayments#extraParams} - * for the field documentation. - */ - public Builder putExtraParam(String key, Object value) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.SepaBankTransferPayments.Protections#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; } - 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.BancontactPayments#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.SepaBankTransferPayments.Protections#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; } - this.extraParams.putAll(map); - return this; - } - /** - * Required. To request a new Capability for an account, pass true. - * There can be a delay before the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Merchant.Capabilities.SepaBankTransferPayments + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } } - } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class BlikPayments { - /** - * 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; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a new Capability for an account, pass true. There - * can be a delay before the requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + /** Required. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; - private BlikPayments(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } - public static Builder builder() { - return new Builder(); - } + public static Builder builder() { + return new Builder(); + } - public static class Builder { - private Map extraParams; + public static class Builder { + private Map extraParams; - private Boolean requested; + private Boolean requested; - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Merchant.Capabilities.BlikPayments build() { - return new AccountCreateParams.Configuration.Merchant.Capabilities.BlikPayments( - this.extraParams, this.requested); - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities + .SepaBankTransferPayments.Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities + .SepaBankTransferPayments.Protections.PspMigration( + this.extraParams, this.requested); + } - /** - * 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.BlikPayments#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 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.SepaBankTransferPayments.Protections.PspMigration#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 - * AccountCreateParams.Configuration.Merchant.Capabilities.BlikPayments#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 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.SepaBankTransferPayments.Protections.PspMigration#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. To request a new Capability for an account, pass true. - * There can be a delay before the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; + /** Required. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } } } } @Getter @EqualsAndHashCode(callSuper = false) - public static class BoletoPayments { + public static class SepaDebitPayments { /** * 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. @@ -5948,6 +17590,10 @@ public static class BoletoPayments { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + /** * Required. To request a new Capability for an account, pass true. There * can be a delay before the requested Capability becomes active. @@ -5955,8 +17601,10 @@ public static class BoletoPayments { @SerializedName("requested") Boolean requested; - private BoletoPayments(Map extraParams, Boolean requested) { + private SepaDebitPayments( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -5967,19 +17615,22 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Merchant.Capabilities.BoletoPayments build() { - return new AccountCreateParams.Configuration.Merchant.Capabilities.BoletoPayments( - this.extraParams, this.requested); + public AccountCreateParams.Configuration.Merchant.Capabilities.SepaDebitPayments + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.SepaDebitPayments( + this.extraParams, this.protections, this.requested); } /** * 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.BoletoPayments#extraParams} + * AccountCreateParams.Configuration.Merchant.Capabilities.SepaDebitPayments#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -5994,7 +17645,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.BoletoPayments#extraParams} + * AccountCreateParams.Configuration.Merchant.Capabilities.SepaDebitPayments#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -6005,6 +17656,15 @@ public Builder putAllExtraParam(Map map) { return this; } + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountCreateParams.Configuration.Merchant.Capabilities.SepaDebitPayments + .Protections + protections) { + this.protections = protections; + return this; + } + /** * Required. To request a new Capability for an account, pass true. * There can be a delay before the requested Capability becomes active. @@ -6014,174 +17674,168 @@ public Builder setRequested(Boolean requested) { return this; } } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class CardPayments { - /** - * 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; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. To request a new Capability for an account, pass true. There - * can be a delay before the requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + /** Required. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - private CardPayments(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - public static Builder builder() { - return new Builder(); - } + public static Builder builder() { + return new Builder(); + } - public static class Builder { - private Map extraParams; + public static class Builder { + private Map extraParams; - private Boolean requested; + private PspMigration pspMigration; - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Merchant.Capabilities.CardPayments build() { - return new AccountCreateParams.Configuration.Merchant.Capabilities.CardPayments( - this.extraParams, this.requested); - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.SepaDebitPayments + .Protections + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.SepaDebitPayments + .Protections(this.extraParams, this.pspMigration); + } - /** - * 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.CardPayments#extraParams} for - * the field documentation. - */ - public Builder putExtraParam(String key, Object value) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.SepaDebitPayments.Protections#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; } - 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.CardPayments#extraParams} for - * the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.SepaDebitPayments.Protections#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; } - this.extraParams.putAll(map); - return this; - } - /** - * Required. To request a new Capability for an account, pass true. - * There can be a delay before the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Merchant.Capabilities.SepaDebitPayments + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } } - } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class CartesBancairesPayments { - /** - * 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; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a new Capability for an account, pass true. There - * can be a delay before the requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + /** Required. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; - private CartesBancairesPayments(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } - public static Builder builder() { - return new Builder(); - } + public static Builder builder() { + return new Builder(); + } - public static class Builder { - private Map extraParams; + public static class Builder { + private Map extraParams; - private Boolean requested; + private Boolean requested; - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Merchant.Capabilities.CartesBancairesPayments - build() { - return new AccountCreateParams.Configuration.Merchant.Capabilities - .CartesBancairesPayments(this.extraParams, this.requested); - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.SepaDebitPayments + .Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities + .SepaDebitPayments.Protections.PspMigration(this.extraParams, this.requested); + } - /** - * 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.CartesBancairesPayments#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 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.SepaDebitPayments.Protections.PspMigration#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.SepaDebitPayments.Protections.PspMigration#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 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.CartesBancairesPayments#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** Required. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } } - this.extraParams.putAll(map); - return this; - } - - /** - * Required. To request a new Capability for an account, pass true. - * There can be a delay before the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; } } } @Getter @EqualsAndHashCode(callSuper = false) - public static class CashappPayments { + public static class SwishPayments { /** * 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. @@ -6192,6 +17846,10 @@ public static class CashappPayments { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + /** * Required. To request a new Capability for an account, pass true. There * can be a delay before the requested Capability becomes active. @@ -6199,8 +17857,10 @@ public static class CashappPayments { @SerializedName("requested") Boolean requested; - private CashappPayments(Map extraParams, Boolean requested) { + private SwishPayments( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -6211,19 +17871,21 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Merchant.Capabilities.CashappPayments build() { - return new AccountCreateParams.Configuration.Merchant.Capabilities.CashappPayments( - this.extraParams, this.requested); + public AccountCreateParams.Configuration.Merchant.Capabilities.SwishPayments build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.SwishPayments( + this.extraParams, this.protections, this.requested); } /** * 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.CashappPayments#extraParams} + * AccountCreateParams.Configuration.Merchant.Capabilities.SwishPayments#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -6238,7 +17900,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.CashappPayments#extraParams} + * AccountCreateParams.Configuration.Merchant.Capabilities.SwishPayments#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -6249,6 +17911,14 @@ public Builder putAllExtraParam(Map map) { return this; } + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountCreateParams.Configuration.Merchant.Capabilities.SwishPayments.Protections + protections) { + this.protections = protections; + return this; + } + /** * Required. To request a new Capability for an account, pass true. * There can be a delay before the requested Capability becomes active. @@ -6258,173 +17928,168 @@ public Builder setRequested(Boolean requested) { return this; } } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class EpsPayments { - /** - * 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; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. To request a new Capability for an account, pass true. There - * can be a delay before the requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + /** Required. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - private EpsPayments(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - public static Builder builder() { - return new Builder(); - } + public static Builder builder() { + return new Builder(); + } - public static class Builder { - private Map extraParams; + public static class Builder { + private Map extraParams; - private Boolean requested; + private PspMigration pspMigration; - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Merchant.Capabilities.EpsPayments build() { - return new AccountCreateParams.Configuration.Merchant.Capabilities.EpsPayments( - this.extraParams, this.requested); - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.SwishPayments + .Protections + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.SwishPayments + .Protections(this.extraParams, this.pspMigration); + } - /** - * 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.EpsPayments#extraParams} for - * the field documentation. - */ - public Builder putExtraParam(String key, Object value) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.SwishPayments.Protections#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; } - 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.EpsPayments#extraParams} for - * the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.SwishPayments.Protections#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; } - this.extraParams.putAll(map); - return this; - } - /** - * Required. To request a new Capability for an account, pass true. - * There can be a delay before the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Merchant.Capabilities.SwishPayments.Protections + .PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } } - } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class FpxPayments { - /** - * 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; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a new Capability for an account, pass true. There - * can be a delay before the requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + /** Required. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; - private FpxPayments(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } - public static Builder builder() { - return new Builder(); - } + public static Builder builder() { + return new Builder(); + } - public static class Builder { - private Map extraParams; + public static class Builder { + private Map extraParams; - private Boolean requested; + private Boolean requested; - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Merchant.Capabilities.FpxPayments build() { - return new AccountCreateParams.Configuration.Merchant.Capabilities.FpxPayments( - this.extraParams, this.requested); - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.SwishPayments + .Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.SwishPayments + .Protections.PspMigration(this.extraParams, this.requested); + } - /** - * 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.FpxPayments#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 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.SwishPayments.Protections.PspMigration#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.SwishPayments.Protections.PspMigration#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 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.FpxPayments#extraParams} for - * the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** Required. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } } - this.extraParams.putAll(map); - return this; - } - - /** - * Required. To request a new Capability for an account, pass true. - * There can be a delay before the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; } } } @Getter @EqualsAndHashCode(callSuper = false) - public static class GbBankTransferPayments { + public static class TwintPayments { /** * 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. @@ -6435,6 +18100,10 @@ public static class GbBankTransferPayments { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + /** * Required. To request a new Capability for an account, pass true. There * can be a delay before the requested Capability becomes active. @@ -6442,8 +18111,10 @@ public static class GbBankTransferPayments { @SerializedName("requested") Boolean requested; - private GbBankTransferPayments(Map extraParams, Boolean requested) { + private TwintPayments( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -6454,20 +18125,21 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Merchant.Capabilities.GbBankTransferPayments - build() { - return new AccountCreateParams.Configuration.Merchant.Capabilities - .GbBankTransferPayments(this.extraParams, this.requested); + public AccountCreateParams.Configuration.Merchant.Capabilities.TwintPayments build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.TwintPayments( + this.extraParams, this.protections, this.requested); } /** * 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.GbBankTransferPayments#extraParams} + * AccountCreateParams.Configuration.Merchant.Capabilities.TwintPayments#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -6482,7 +18154,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.GbBankTransferPayments#extraParams} + * AccountCreateParams.Configuration.Merchant.Capabilities.TwintPayments#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -6493,6 +18165,14 @@ public Builder putAllExtraParam(Map map) { return this; } + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountCreateParams.Configuration.Merchant.Capabilities.TwintPayments.Protections + protections) { + this.protections = protections; + return this; + } + /** * Required. To request a new Capability for an account, pass true. * There can be a delay before the requested Capability becomes active. @@ -6502,173 +18182,168 @@ public Builder setRequested(Boolean requested) { return this; } } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class GrabpayPayments { - /** - * 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; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. To request a new Capability for an account, pass true. There - * can be a delay before the requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + /** Required. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - private GrabpayPayments(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - public static Builder builder() { - return new Builder(); - } + public static Builder builder() { + return new Builder(); + } - public static class Builder { - private Map extraParams; + public static class Builder { + private Map extraParams; - private Boolean requested; + private PspMigration pspMigration; - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Merchant.Capabilities.GrabpayPayments build() { - return new AccountCreateParams.Configuration.Merchant.Capabilities.GrabpayPayments( - this.extraParams, this.requested); - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.TwintPayments + .Protections + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.TwintPayments + .Protections(this.extraParams, this.pspMigration); + } - /** - * 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.GrabpayPayments#extraParams} - * for the field documentation. - */ - public Builder putExtraParam(String key, Object value) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.TwintPayments.Protections#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; } - 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.GrabpayPayments#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.TwintPayments.Protections#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; } - this.extraParams.putAll(map); - return this; - } - /** - * Required. To request a new Capability for an account, pass true. - * There can be a delay before the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Merchant.Capabilities.TwintPayments.Protections + .PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } } - } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class IdealPayments { - /** - * 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; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a new Capability for an account, pass true. There - * can be a delay before the requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + /** Required. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; - private IdealPayments(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } - public static Builder builder() { - return new Builder(); - } + public static Builder builder() { + return new Builder(); + } - public static class Builder { - private Map extraParams; + public static class Builder { + private Map extraParams; - private Boolean requested; + private Boolean requested; - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Merchant.Capabilities.IdealPayments build() { - return new AccountCreateParams.Configuration.Merchant.Capabilities.IdealPayments( - this.extraParams, this.requested); - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.TwintPayments + .Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.TwintPayments + .Protections.PspMigration(this.extraParams, this.requested); + } - /** - * 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.IdealPayments#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 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.TwintPayments.Protections.PspMigration#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.TwintPayments.Protections.PspMigration#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 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.IdealPayments#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** Required. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } } - this.extraParams.putAll(map); - return this; - } - - /** - * Required. To request a new Capability for an account, pass true. - * There can be a delay before the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; } } } @Getter @EqualsAndHashCode(callSuper = false) - public static class JcbPayments { + public static class UsBankTransferPayments { /** * 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. @@ -6679,6 +18354,10 @@ public static class JcbPayments { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + /** * Required. To request a new Capability for an account, pass true. There * can be a delay before the requested Capability becomes active. @@ -6686,8 +18365,10 @@ public static class JcbPayments { @SerializedName("requested") Boolean requested; - private JcbPayments(Map extraParams, Boolean requested) { + private UsBankTransferPayments( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -6698,20 +18379,23 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Merchant.Capabilities.JcbPayments build() { - return new AccountCreateParams.Configuration.Merchant.Capabilities.JcbPayments( - this.extraParams, this.requested); + public AccountCreateParams.Configuration.Merchant.Capabilities.UsBankTransferPayments + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities + .UsBankTransferPayments(this.extraParams, this.protections, this.requested); } /** * 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.JcbPayments#extraParams} for - * the field documentation. + * AccountCreateParams.Configuration.Merchant.Capabilities.UsBankTransferPayments#extraParams} + * for the field documentation. */ public Builder putExtraParam(String key, Object value) { if (this.extraParams == null) { @@ -6725,8 +18409,8 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.JcbPayments#extraParams} for - * the field documentation. + * AccountCreateParams.Configuration.Merchant.Capabilities.UsBankTransferPayments#extraParams} + * for the field documentation. */ public Builder putAllExtraParam(Map map) { if (this.extraParams == null) { @@ -6736,6 +18420,15 @@ public Builder putAllExtraParam(Map map) { return this; } + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountCreateParams.Configuration.Merchant.Capabilities.UsBankTransferPayments + .Protections + protections) { + this.protections = protections; + return this; + } + /** * Required. To request a new Capability for an account, pass true. * There can be a delay before the requested Capability becomes active. @@ -6745,175 +18438,169 @@ public Builder setRequested(Boolean requested) { return this; } } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class JpBankTransferPayments { - /** - * 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; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. To request a new Capability for an account, pass true. There - * can be a delay before the requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + /** Required. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - private JpBankTransferPayments(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - public static Builder builder() { - return new Builder(); - } + public static Builder builder() { + return new Builder(); + } - public static class Builder { - private Map extraParams; + public static class Builder { + private Map extraParams; - private Boolean requested; + private PspMigration pspMigration; - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Merchant.Capabilities.JpBankTransferPayments - build() { - return new AccountCreateParams.Configuration.Merchant.Capabilities - .JpBankTransferPayments(this.extraParams, this.requested); - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.UsBankTransferPayments + .Protections + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities + .UsBankTransferPayments.Protections(this.extraParams, this.pspMigration); + } - /** - * 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.JpBankTransferPayments#extraParams} - * for the field documentation. - */ - public Builder putExtraParam(String key, Object value) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.UsBankTransferPayments.Protections#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; } - 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.JpBankTransferPayments#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.UsBankTransferPayments.Protections#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; } - this.extraParams.putAll(map); - return this; - } - /** - * Required. To request a new Capability for an account, pass true. - * There can be a delay before the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Merchant.Capabilities.UsBankTransferPayments + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } } - } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class KakaoPayPayments { - /** - * 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; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a new Capability for an account, pass true. There - * can be a delay before the requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + /** Required. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; - private KakaoPayPayments(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } - public static Builder builder() { - return new Builder(); - } + public static Builder builder() { + return new Builder(); + } - public static class Builder { - private Map extraParams; + public static class Builder { + private Map extraParams; - private Boolean requested; + private Boolean requested; - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Merchant.Capabilities.KakaoPayPayments - build() { - return new AccountCreateParams.Configuration.Merchant.Capabilities.KakaoPayPayments( - this.extraParams, this.requested); - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities + .UsBankTransferPayments.Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities + .UsBankTransferPayments.Protections.PspMigration( + this.extraParams, this.requested); + } - /** - * 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.KakaoPayPayments#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 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.UsBankTransferPayments.Protections.PspMigration#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.UsBankTransferPayments.Protections.PspMigration#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 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.KakaoPayPayments#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** Required. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } } - this.extraParams.putAll(map); - return this; - } - - /** - * Required. To request a new Capability for an account, pass true. - * There can be a delay before the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; } } } @Getter @EqualsAndHashCode(callSuper = false) - public static class KlarnaPayments { + public static class ZipPayments { /** * 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. @@ -6924,6 +18611,10 @@ public static class KlarnaPayments { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + /** * Required. To request a new Capability for an account, pass true. There * can be a delay before the requested Capability becomes active. @@ -6931,8 +18622,10 @@ public static class KlarnaPayments { @SerializedName("requested") Boolean requested; - private KlarnaPayments(Map extraParams, Boolean requested) { + private ZipPayments( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -6943,20 +18636,22 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Merchant.Capabilities.KlarnaPayments build() { - return new AccountCreateParams.Configuration.Merchant.Capabilities.KlarnaPayments( - this.extraParams, this.requested); + public AccountCreateParams.Configuration.Merchant.Capabilities.ZipPayments build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.ZipPayments( + this.extraParams, this.protections, this.requested); } /** * 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.KlarnaPayments#extraParams} - * for the field documentation. + * AccountCreateParams.Configuration.Merchant.Capabilities.ZipPayments#extraParams} for + * the field documentation. */ public Builder putExtraParam(String key, Object value) { if (this.extraParams == null) { @@ -6970,8 +18665,8 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.KlarnaPayments#extraParams} - * for the field documentation. + * AccountCreateParams.Configuration.Merchant.Capabilities.ZipPayments#extraParams} for + * the field documentation. */ public Builder putAllExtraParam(Map map) { if (this.extraParams == null) { @@ -6981,6 +18676,14 @@ public Builder putAllExtraParam(Map map) { return this; } + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountCreateParams.Configuration.Merchant.Capabilities.ZipPayments.Protections + protections) { + this.protections = protections; + return this; + } + /** * Required. To request a new Capability for an account, pass true. * There can be a delay before the requested Capability becomes active. @@ -6990,11 +18693,262 @@ public Builder setRequested(Boolean requested) { return this; } } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.ZipPayments.Protections + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.ZipPayments + .Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.ZipPayments.Protections#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.ZipPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Merchant.Capabilities.ZipPayments.Protections + .PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Capabilities.ZipPayments + .Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Merchant.Capabilities.ZipPayments + .Protections.PspMigration(this.extraParams, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.Capabilities.ZipPayments.Protections.PspMigration#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 + * AccountCreateParams.Configuration.Merchant.Capabilities.ZipPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class CardPayments { + /** + * Automatically declines certain charge types regardless of whether the card issuer + * accepted or declined the charge. + */ + @SerializedName("decline_on") + DeclineOn declineOn; + + /** + * 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; + + private CardPayments(DeclineOn declineOn, Map extraParams) { + this.declineOn = declineOn; + this.extraParams = extraParams; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private DeclineOn declineOn; + + private Map extraParams; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.CardPayments build() { + return new AccountCreateParams.Configuration.Merchant.CardPayments( + this.declineOn, this.extraParams); + } + + /** + * Automatically declines certain charge types regardless of whether the card issuer + * accepted or declined the charge. + */ + public Builder setDeclineOn( + AccountCreateParams.Configuration.Merchant.CardPayments.DeclineOn declineOn) { + this.declineOn = declineOn; + 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 AccountCreateParams.Configuration.Merchant.CardPayments#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 AccountCreateParams.Configuration.Merchant.CardPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } } @Getter @EqualsAndHashCode(callSuper = false) - public static class KonbiniPayments { + public static class DeclineOn { + /** + * Whether Stripe automatically declines charges with an incorrect ZIP or postal code. + * This setting only applies when a ZIP or postal code is provided and they fail bank + * verification. + */ + @SerializedName("avs_failure") + Boolean avsFailure; + + /** + * Whether Stripe automatically declines charges with an incorrect CVC. This setting only + * applies when a CVC is provided and it fails bank verification. + */ + @SerializedName("cvc_failure") + Boolean cvcFailure; + /** * 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. @@ -7005,16 +18959,11 @@ public static class KonbiniPayments { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** - * Required. To request a new Capability for an account, pass true. There - * can be a delay before the requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; - - private KonbiniPayments(Map extraParams, Boolean requested) { + private DeclineOn( + Boolean avsFailure, Boolean cvcFailure, Map extraParams) { + this.avsFailure = avsFailure; + this.cvcFailure = cvcFailure; this.extraParams = extraParams; - this.requested = requested; } public static Builder builder() { @@ -7022,103 +18971,43 @@ public static Builder builder() { } public static class Builder { - private Map extraParams; + private Boolean avsFailure; - private Boolean requested; + private Boolean cvcFailure; - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Merchant.Capabilities.KonbiniPayments build() { - return new AccountCreateParams.Configuration.Merchant.Capabilities.KonbiniPayments( - this.extraParams, this.requested); - } + private Map extraParams; - /** - * 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.KonbiniPayments#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; + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.CardPayments.DeclineOn build() { + return new AccountCreateParams.Configuration.Merchant.CardPayments.DeclineOn( + this.avsFailure, this.cvcFailure, this.extraParams); } /** - * 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.KonbiniPayments#extraParams} - * for the field documentation. + * Whether Stripe automatically declines charges with an incorrect ZIP or postal code. + * This setting only applies when a ZIP or postal code is provided and they fail bank + * verification. */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); - } - this.extraParams.putAll(map); + public Builder setAvsFailure(Boolean avsFailure) { + this.avsFailure = avsFailure; return this; } /** - * Required. To request a new Capability for an account, pass true. - * There can be a delay before the requested Capability becomes active. + * Whether Stripe automatically declines charges with an incorrect CVC. This setting + * only applies when a CVC is provided and it fails bank verification. */ - public Builder setRequested(Boolean requested) { - this.requested = requested; + public Builder setCvcFailure(Boolean cvcFailure) { + this.cvcFailure = cvcFailure; return this; } - } - } - - @Getter - @EqualsAndHashCode(callSuper = false) - public static class KrCardPayments { - /** - * 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. To request a new Capability for an account, pass true. There - * can be a delay before the requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; - - private KrCardPayments(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } - - public static Builder builder() { - return new Builder(); - } - - public static class Builder { - private Map extraParams; - - private Boolean requested; - - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Merchant.Capabilities.KrCardPayments build() { - return new AccountCreateParams.Configuration.Merchant.Capabilities.KrCardPayments( - this.extraParams, this.requested); - } /** * 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.KrCardPayments#extraParams} - * for the field documentation. + * AccountCreateParams.Configuration.Merchant.CardPayments.DeclineOn#extraParams} for + * the field documentation. */ public Builder putExtraParam(String key, Object value) { if (this.extraParams == null) { @@ -7132,8 +19021,8 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.KrCardPayments#extraParams} - * for the field documentation. + * AccountCreateParams.Configuration.Merchant.CardPayments.DeclineOn#extraParams} for + * the field documentation. */ public Builder putAllExtraParam(Map map) { if (this.extraParams == null) { @@ -7142,102 +19031,90 @@ public Builder putAllExtraParam(Map map) { this.extraParams.putAll(map); return this; } - - /** - * Required. To request a new Capability for an account, pass true. - * There can be a delay before the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; - } } } + } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class LinkPayments { - /** - * 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. To request a new Capability for an account, pass true. There - * can be a delay before the requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class KonbiniPayments { + /** + * 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; - private LinkPayments(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + /** Support for Konbini payments. */ + @SerializedName("support") + Support support; - public static Builder builder() { - return new Builder(); - } + private KonbiniPayments(Map extraParams, Support support) { + this.extraParams = extraParams; + this.support = support; + } - public static class Builder { - private Map extraParams; + public static Builder builder() { + return new Builder(); + } - private Boolean requested; + public static class Builder { + private Map extraParams; - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Merchant.Capabilities.LinkPayments build() { - return new AccountCreateParams.Configuration.Merchant.Capabilities.LinkPayments( - this.extraParams, this.requested); - } + private Support support; - /** - * 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.LinkPayments#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; - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.KonbiniPayments build() { + return new AccountCreateParams.Configuration.Merchant.KonbiniPayments( + this.extraParams, this.support); + } - /** - * 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.LinkPayments#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 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 AccountCreateParams.Configuration.Merchant.KonbiniPayments#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; + } - /** - * Required. To request a new Capability for an account, pass true. - * There can be a delay before the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - 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 AccountCreateParams.Configuration.Merchant.KonbiniPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); } + this.extraParams.putAll(map); + return this; + } + + /** Support for Konbini payments. */ + public Builder setSupport( + AccountCreateParams.Configuration.Merchant.KonbiniPayments.Support support) { + this.support = support; + return this; } } @Getter @EqualsAndHashCode(callSuper = false) - public static class MobilepayPayments { + public static class Support { + /** Support email address for Konbini payments. */ + @SerializedName("email") + String email; + /** * 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. @@ -7248,16 +19125,20 @@ public static class MobilepayPayments { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** - * Required. To request a new Capability for an account, pass true. There - * can be a delay before the requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + /** Support hours for Konbini payments. */ + @SerializedName("hours") + Hours hours; + + /** Support phone number for Konbini payments. */ + @SerializedName("phone") + String phone; - private MobilepayPayments(Map extraParams, Boolean requested) { + private Support( + String email, Map extraParams, Hours hours, String phone) { + this.email = email; this.extraParams = extraParams; - this.requested = requested; + this.hours = hours; + this.phone = phone; } public static Builder builder() { @@ -7265,23 +19146,32 @@ public static Builder builder() { } public static class Builder { + private String email; + private Map extraParams; - private Boolean requested; + private Hours hours; + + private String phone; /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Merchant.Capabilities.MobilepayPayments - build() { - return new AccountCreateParams.Configuration.Merchant.Capabilities.MobilepayPayments( - this.extraParams, this.requested); + public AccountCreateParams.Configuration.Merchant.KonbiniPayments.Support build() { + return new AccountCreateParams.Configuration.Merchant.KonbiniPayments.Support( + this.email, this.extraParams, this.hours, this.phone); + } + + /** Support email address for Konbini payments. */ + public Builder setEmail(String email) { + this.email = email; + 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.MobilepayPayments#extraParams} - * for the field documentation. + * AccountCreateParams.Configuration.Merchant.KonbiniPayments.Support#extraParams} for + * the field documentation. */ public Builder putExtraParam(String key, Object value) { if (this.extraParams == null) { @@ -7295,8 +19185,8 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.MobilepayPayments#extraParams} - * for the field documentation. + * AccountCreateParams.Configuration.Merchant.KonbiniPayments.Support#extraParams} for + * the field documentation. */ public Builder putAllExtraParam(Map map) { if (this.extraParams == null) { @@ -7306,20 +19196,235 @@ public Builder putAllExtraParam(Map map) { return this; } - /** - * Required. To request a new Capability for an account, pass true. - * There can be a delay before the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; - } + /** Support hours for Konbini payments. */ + public Builder setHours( + AccountCreateParams.Configuration.Merchant.KonbiniPayments.Support.Hours hours) { + this.hours = hours; + return this; + } + + /** Support phone number for Konbini payments. */ + public Builder setPhone(String phone) { + this.phone = phone; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Hours { + /** Support hours end time (JST time of day) for in {@code HH:MM} format. */ + @SerializedName("end_time") + String endTime; + + /** + * 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; + + /** Support hours start time (JST time of day) for in {@code HH:MM} format. */ + @SerializedName("start_time") + String startTime; + + private Hours(String endTime, Map extraParams, String startTime) { + this.endTime = endTime; + this.extraParams = extraParams; + this.startTime = startTime; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private String endTime; + + private Map extraParams; + + private String startTime; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.KonbiniPayments.Support.Hours + build() { + return new AccountCreateParams.Configuration.Merchant.KonbiniPayments.Support.Hours( + this.endTime, this.extraParams, this.startTime); + } + + /** Support hours end time (JST time of day) for in {@code HH:MM} format. */ + public Builder setEndTime(String endTime) { + this.endTime = endTime; + 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 + * AccountCreateParams.Configuration.Merchant.KonbiniPayments.Support.Hours#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 + * AccountCreateParams.Configuration.Merchant.KonbiniPayments.Support.Hours#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Support hours start time (JST time of day) for in {@code HH:MM} format. */ + public Builder setStartTime(String startTime) { + this.startTime = startTime; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class ScriptStatementDescriptor { + /** + * 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 Kana variation of statement_descriptor used for charges in Japan. Japanese statement + * descriptors have special + * requirements. + */ + @SerializedName("kana") + Kana kana; + + /** + * The Kanji variation of statement_descriptor used for charges in Japan. Japanese statement + * descriptors have special + * requirements. + */ + @SerializedName("kanji") + Kanji kanji; + + private ScriptStatementDescriptor(Map extraParams, Kana kana, Kanji kanji) { + this.extraParams = extraParams; + this.kana = kana; + this.kanji = kanji; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Kana kana; + + private Kanji kanji; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.ScriptStatementDescriptor build() { + return new AccountCreateParams.Configuration.Merchant.ScriptStatementDescriptor( + this.extraParams, this.kana, this.kanji); + } + + /** + * 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 + * AccountCreateParams.Configuration.Merchant.ScriptStatementDescriptor#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 + * AccountCreateParams.Configuration.Merchant.ScriptStatementDescriptor#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 Kana variation of statement_descriptor used for charges in Japan. Japanese + * statement descriptors have special + * requirements. + */ + public Builder setKana( + AccountCreateParams.Configuration.Merchant.ScriptStatementDescriptor.Kana kana) { + this.kana = kana; + return this; + } + + /** + * The Kanji variation of statement_descriptor used for charges in Japan. Japanese + * statement descriptors have special + * requirements. + */ + public Builder setKanji( + AccountCreateParams.Configuration.Merchant.ScriptStatementDescriptor.Kanji kanji) { + this.kanji = kanji; + return this; } } @Getter @EqualsAndHashCode(callSuper = false) - public static class MultibancoPayments { + public static class Kana { + /** + * The default text that appears on statements for non-card charges outside of Japan. For + * card charges, if you don’t set a statement_descriptor_prefix, this text is also used as + * the statement descriptor prefix. In that case, if concatenating the statement + * descriptor suffix causes the combined statement descriptor to exceed 22 characters, we + * truncate the statement_descriptor text to limit the full descriptor to 22 characters. + * For more information about statement descriptors and their requirements, see the + * Merchant Configuration settings documentation. + */ + @SerializedName("descriptor") + String descriptor; + /** * 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. @@ -7331,15 +19436,20 @@ public static class MultibancoPayments { Map extraParams; /** - * Required. To request a new Capability for an account, pass true. There - * can be a delay before the requested Capability becomes active. + * Default text that appears on statements for card charges outside of Japan, prefixing + * any dynamic statement_descriptor_suffix specified on the charge. To maximize space for + * the dynamic part of the descriptor, keep this text short. If you don’t specify this + * value, statement_descriptor is used as the prefix. For more information about statement + * descriptors and their requirements, see the Merchant Configuration settings + * documentation. */ - @SerializedName("requested") - Boolean requested; + @SerializedName("prefix") + String prefix; - private MultibancoPayments(Map extraParams, Boolean requested) { + private Kana(String descriptor, Map extraParams, String prefix) { + this.descriptor = descriptor; this.extraParams = extraParams; - this.requested = requested; + this.prefix = prefix; } public static Builder builder() { @@ -7347,22 +19457,38 @@ public static Builder builder() { } public static class Builder { + private String descriptor; + private Map extraParams; - private Boolean requested; + private String prefix; /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Merchant.Capabilities.MultibancoPayments + public AccountCreateParams.Configuration.Merchant.ScriptStatementDescriptor.Kana build() { - return new AccountCreateParams.Configuration.Merchant.Capabilities.MultibancoPayments( - this.extraParams, this.requested); + return new AccountCreateParams.Configuration.Merchant.ScriptStatementDescriptor.Kana( + this.descriptor, this.extraParams, this.prefix); + } + + /** + * The default text that appears on statements for non-card charges outside of Japan. + * For card charges, if you don’t set a statement_descriptor_prefix, this text is also + * used as the statement descriptor prefix. In that case, if concatenating the statement + * descriptor suffix causes the combined statement descriptor to exceed 22 characters, + * we truncate the statement_descriptor text to limit the full descriptor to 22 + * characters. For more information about statement descriptors and their requirements, + * see the Merchant Configuration settings documentation. + */ + public Builder setDescriptor(String descriptor) { + this.descriptor = descriptor; + 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.MultibancoPayments#extraParams} + * AccountCreateParams.Configuration.Merchant.ScriptStatementDescriptor.Kana#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -7377,7 +19503,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.MultibancoPayments#extraParams} + * AccountCreateParams.Configuration.Merchant.ScriptStatementDescriptor.Kana#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -7389,11 +19515,15 @@ public Builder putAllExtraParam(Map map) { } /** - * Required. To request a new Capability for an account, pass true. - * There can be a delay before the requested Capability becomes active. + * Default text that appears on statements for card charges outside of Japan, prefixing + * any dynamic statement_descriptor_suffix specified on the charge. To maximize space + * for the dynamic part of the descriptor, keep this text short. If you don’t specify + * this value, statement_descriptor is used as the prefix. For more information about + * statement descriptors and their requirements, see the Merchant Configuration settings + * documentation. */ - public Builder setRequested(Boolean requested) { - this.requested = requested; + public Builder setPrefix(String prefix) { + this.prefix = prefix; return this; } } @@ -7401,7 +19531,19 @@ public Builder setRequested(Boolean requested) { @Getter @EqualsAndHashCode(callSuper = false) - public static class MxBankTransferPayments { + public static class Kanji { + /** + * The default text that appears on statements for non-card charges outside of Japan. For + * card charges, if you don’t set a statement_descriptor_prefix, this text is also used as + * the statement descriptor prefix. In that case, if concatenating the statement + * descriptor suffix causes the combined statement descriptor to exceed 22 characters, we + * truncate the statement_descriptor text to limit the full descriptor to 22 characters. + * For more information about statement descriptors and their requirements, see the + * Merchant Configuration settings documentation. + */ + @SerializedName("descriptor") + String descriptor; + /** * 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. @@ -7413,15 +19555,20 @@ public static class MxBankTransferPayments { Map extraParams; /** - * Required. To request a new Capability for an account, pass true. There - * can be a delay before the requested Capability becomes active. + * Default text that appears on statements for card charges outside of Japan, prefixing + * any dynamic statement_descriptor_suffix specified on the charge. To maximize space for + * the dynamic part of the descriptor, keep this text short. If you don’t specify this + * value, statement_descriptor is used as the prefix. For more information about statement + * descriptors and their requirements, see the Merchant Configuration settings + * documentation. */ - @SerializedName("requested") - Boolean requested; + @SerializedName("prefix") + String prefix; - private MxBankTransferPayments(Map extraParams, Boolean requested) { + private Kanji(String descriptor, Map extraParams, String prefix) { + this.descriptor = descriptor; this.extraParams = extraParams; - this.requested = requested; + this.prefix = prefix; } public static Builder builder() { @@ -7429,22 +19576,38 @@ public static Builder builder() { } public static class Builder { + private String descriptor; + private Map extraParams; - private Boolean requested; + private String prefix; /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Merchant.Capabilities.MxBankTransferPayments + public AccountCreateParams.Configuration.Merchant.ScriptStatementDescriptor.Kanji build() { - return new AccountCreateParams.Configuration.Merchant.Capabilities - .MxBankTransferPayments(this.extraParams, this.requested); + return new AccountCreateParams.Configuration.Merchant.ScriptStatementDescriptor.Kanji( + this.descriptor, this.extraParams, this.prefix); + } + + /** + * The default text that appears on statements for non-card charges outside of Japan. + * For card charges, if you don’t set a statement_descriptor_prefix, this text is also + * used as the statement descriptor prefix. In that case, if concatenating the statement + * descriptor suffix causes the combined statement descriptor to exceed 22 characters, + * we truncate the statement_descriptor text to limit the full descriptor to 22 + * characters. For more information about statement descriptors and their requirements, + * see the Merchant Configuration settings documentation. + */ + public Builder setDescriptor(String descriptor) { + this.descriptor = descriptor; + 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.MxBankTransferPayments#extraParams} + * AccountCreateParams.Configuration.Merchant.ScriptStatementDescriptor.Kanji#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -7459,7 +19622,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.MxBankTransferPayments#extraParams} + * AccountCreateParams.Configuration.Merchant.ScriptStatementDescriptor.Kanji#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -7471,101 +19634,97 @@ public Builder putAllExtraParam(Map map) { } /** - * Required. To request a new Capability for an account, pass true. - * There can be a delay before the requested Capability becomes active. + * Default text that appears on statements for card charges outside of Japan, prefixing + * any dynamic statement_descriptor_suffix specified on the charge. To maximize space + * for the dynamic part of the descriptor, keep this text short. If you don’t specify + * this value, statement_descriptor is used as the prefix. For more information about + * statement descriptors and their requirements, see the Merchant Configuration settings + * documentation. */ - public Builder setRequested(Boolean requested) { - this.requested = requested; + public Builder setPrefix(String prefix) { + this.prefix = prefix; return this; } } } + } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class NaverPayPayments { - /** - * 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; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class SmartDisputes { + /** Settings for Smart Disputes auto_respond. */ + @SerializedName("auto_respond") + AutoRespond autoRespond; - /** - * Required. To request a new Capability for an account, pass true. There - * can be a delay before the requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + /** + * 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; - private NaverPayPayments(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + private SmartDisputes(AutoRespond autoRespond, Map extraParams) { + this.autoRespond = autoRespond; + this.extraParams = extraParams; + } - public static Builder builder() { - return new Builder(); - } + public static Builder builder() { + return new Builder(); + } - public static class Builder { - private Map extraParams; + public static class Builder { + private AutoRespond autoRespond; - private Boolean requested; + private Map extraParams; - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Merchant.Capabilities.NaverPayPayments - build() { - return new AccountCreateParams.Configuration.Merchant.Capabilities.NaverPayPayments( - this.extraParams, this.requested); - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.SmartDisputes build() { + return new AccountCreateParams.Configuration.Merchant.SmartDisputes( + this.autoRespond, this.extraParams); + } - /** - * 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.NaverPayPayments#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; - } + /** Settings for Smart Disputes auto_respond. */ + public Builder setAutoRespond( + AccountCreateParams.Configuration.Merchant.SmartDisputes.AutoRespond autoRespond) { + this.autoRespond = autoRespond; + 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.NaverPayPayments#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 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 AccountCreateParams.Configuration.Merchant.SmartDisputes#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; + } - /** - * Required. To request a new Capability for an account, pass true. - * There can be a delay before the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - 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 AccountCreateParams.Configuration.Merchant.SmartDisputes#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); } + this.extraParams.putAll(map); + return this; } } @Getter @EqualsAndHashCode(callSuper = false) - public static class OxxoPayments { + public static class AutoRespond { /** * 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. @@ -7576,16 +19735,13 @@ public static class OxxoPayments { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** - * Required. To request a new Capability for an account, pass true. There - * can be a delay before the requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + /** The preference for Smart Disputes auto-respond. */ + @SerializedName("preference") + Preference preference; - private OxxoPayments(Map extraParams, Boolean requested) { + private AutoRespond(Map extraParams, Preference preference) { this.extraParams = extraParams; - this.requested = requested; + this.preference = preference; } public static Builder builder() { @@ -7595,19 +19751,19 @@ public static Builder builder() { public static class Builder { private Map extraParams; - private Boolean requested; + private Preference preference; /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Merchant.Capabilities.OxxoPayments build() { - return new AccountCreateParams.Configuration.Merchant.Capabilities.OxxoPayments( - this.extraParams, this.requested); + public AccountCreateParams.Configuration.Merchant.SmartDisputes.AutoRespond build() { + return new AccountCreateParams.Configuration.Merchant.SmartDisputes.AutoRespond( + this.extraParams, this.preference); } /** * 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.OxxoPayments#extraParams} for + * AccountCreateParams.Configuration.Merchant.SmartDisputes.AutoRespond#extraParams} for * the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -7622,7 +19778,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.OxxoPayments#extraParams} for + * AccountCreateParams.Configuration.Merchant.SmartDisputes.AutoRespond#extraParams} for * the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -7633,183 +19789,285 @@ public Builder putAllExtraParam(Map map) { return this; } - /** - * Required. To request a new Capability for an account, pass true. - * There can be a delay before the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; + /** The preference for Smart Disputes auto-respond. */ + public Builder setPreference( + AccountCreateParams.Configuration.Merchant.SmartDisputes.AutoRespond.Preference + preference) { + this.preference = preference; return this; } } + + public enum Preference implements ApiRequestParams.EnumParam { + @SerializedName("inherit") + INHERIT("inherit"), + + @SerializedName("off") + OFF("off"), + + @SerializedName("on") + ON("on"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + Preference(String value) { + this.value = value; + } + } } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class StatementDescriptor { + /** + * The default text that appears on statements for non-card charges outside of Japan. For + * card charges, if you don’t set a statement_descriptor_prefix, this text is also used as + * the statement descriptor prefix. In that case, if concatenating the statement descriptor + * suffix causes the combined statement descriptor to exceed 22 characters, we truncate the + * statement_descriptor text to limit the full descriptor to 22 characters. For more + * information about statement descriptors and their requirements, see the Merchant + * Configuration settings documentation. + */ + @SerializedName("descriptor") + String descriptor; + + /** + * 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; + + /** + * Default text that appears on statements for card charges outside of Japan, prefixing any + * dynamic statement_descriptor_suffix specified on the charge. To maximize space for the + * dynamic part of the descriptor, keep this text short. If you don’t specify this value, + * statement_descriptor is used as the prefix. For more information about statement + * descriptors and their requirements, see the Merchant Configuration settings + * documentation. + */ + @SerializedName("prefix") + String prefix; + + private StatementDescriptor( + String descriptor, Map extraParams, String prefix) { + this.descriptor = descriptor; + this.extraParams = extraParams; + this.prefix = prefix; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private String descriptor; + + private Map extraParams; + + private String prefix; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.StatementDescriptor build() { + return new AccountCreateParams.Configuration.Merchant.StatementDescriptor( + this.descriptor, this.extraParams, this.prefix); + } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class P24Payments { /** - * 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. + * The default text that appears on statements for non-card charges outside of Japan. For + * card charges, if you don’t set a statement_descriptor_prefix, this text is also used as + * the statement descriptor prefix. In that case, if concatenating the statement + * descriptor suffix causes the combined statement descriptor to exceed 22 characters, we + * truncate the statement_descriptor text to limit the full descriptor to 22 characters. + * For more information about statement descriptors and their requirements, see the + * Merchant Configuration settings documentation. */ - @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) - Map extraParams; + public Builder setDescriptor(String descriptor) { + this.descriptor = descriptor; + return this; + } /** - * Required. To request a new Capability for an account, pass true. There - * can be a delay before the requested Capability becomes active. + * 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 + * AccountCreateParams.Configuration.Merchant.StatementDescriptor#extraParams} for the + * field documentation. */ - @SerializedName("requested") - Boolean requested; + 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 + * AccountCreateParams.Configuration.Merchant.StatementDescriptor#extraParams} for the + * field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** + * Default text that appears on statements for card charges outside of Japan, prefixing + * any dynamic statement_descriptor_suffix specified on the charge. To maximize space for + * the dynamic part of the descriptor, keep this text short. If you don’t specify this + * value, statement_descriptor is used as the prefix. For more information about statement + * descriptors and their requirements, see the Merchant Configuration settings + * documentation. + */ + public Builder setPrefix(String prefix) { + this.prefix = prefix; + return this; + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Support { + /** A publicly available mailing address for sending support issues to. */ + @SerializedName("address") + Address address; + + /** A publicly available email address for sending support issues to. */ + @SerializedName("email") + String email; + + /** + * 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 publicly available phone number to call with support issues. */ + @SerializedName("phone") + String phone; + + /** A publicly available website for handling support issues. */ + @SerializedName("url") + String url; + + private Support( + Address address, + String email, + Map extraParams, + String phone, + String url) { + this.address = address; + this.email = email; + this.extraParams = extraParams; + this.phone = phone; + this.url = url; + } + + public static Builder builder() { + return new Builder(); + } - private P24Payments(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + public static class Builder { + private Address address; - public static Builder builder() { - return new Builder(); - } + private String email; - public static class Builder { - private Map extraParams; + private Map extraParams; - private Boolean requested; + private String phone; - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Merchant.Capabilities.P24Payments build() { - return new AccountCreateParams.Configuration.Merchant.Capabilities.P24Payments( - this.extraParams, this.requested); - } + private String url; - /** - * 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.P24Payments#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; - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Support build() { + return new AccountCreateParams.Configuration.Merchant.Support( + this.address, this.email, this.extraParams, this.phone, this.url); + } - /** - * 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.P24Payments#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 publicly available mailing address for sending support issues to. */ + public Builder setAddress( + AccountCreateParams.Configuration.Merchant.Support.Address address) { + this.address = address; + return this; + } - /** - * Required. To request a new Capability for an account, pass true. - * There can be a delay before the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; - } + /** A publicly available email address for sending support issues to. */ + public Builder setEmail(String email) { + this.email = email; + return this; } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class PayByBankPayments { /** - * 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. + * 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 AccountCreateParams.Configuration.Merchant.Support#extraParams} for the + * field documentation. */ - @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) - Map extraParams; + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } /** - * Required. To request a new Capability for an account, pass true. There - * can be a delay before the requested Capability becomes active. + * 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 AccountCreateParams.Configuration.Merchant.Support#extraParams} for the + * field documentation. */ - @SerializedName("requested") - Boolean requested; - - private PayByBankPayments(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; } - public static Builder builder() { - return new Builder(); + /** A publicly available phone number to call with support issues. */ + public Builder setPhone(String phone) { + this.phone = phone; + return this; } - public static class Builder { - private Map extraParams; - - private Boolean requested; - - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Merchant.Capabilities.PayByBankPayments - build() { - return new AccountCreateParams.Configuration.Merchant.Capabilities.PayByBankPayments( - this.extraParams, this.requested); - } - - /** - * 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.PayByBankPayments#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 - * AccountCreateParams.Configuration.Merchant.Capabilities.PayByBankPayments#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. To request a new Capability for an account, pass true. - * There can be a delay before the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; - } + /** A publicly available website for handling support issues. */ + public Builder setUrl(String url) { + this.url = url; + return this; } } @Getter @EqualsAndHashCode(callSuper = false) - public static class PaycoPayments { + public static class Address { + /** City, district, suburb, town, or village. */ + @SerializedName("city") + String city; + + /** + * Required. Two-letter country code (ISO 3166-1 alpha-2). + */ + @SerializedName("country") + String country; + /** * 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. @@ -7820,16 +20078,43 @@ public static class PaycoPayments { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** - * Required. To request a new Capability for an account, pass true. There - * can be a delay before the requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + /** Address line 1 (e.g., street, PO Box, or company name). */ + @SerializedName("line1") + String line1; + + /** Address line 2 (e.g., apartment, suite, unit, or building). */ + @SerializedName("line2") + String line2; + + /** ZIP or postal code. */ + @SerializedName("postal_code") + String postalCode; + + /** State, county, province, or region. */ + @SerializedName("state") + String state; + + /** Town or district. */ + @SerializedName("town") + String town; - private PaycoPayments(Map extraParams, Boolean requested) { + private Address( + String city, + String country, + Map extraParams, + String line1, + String line2, + String postalCode, + String state, + String town) { + this.city = city; + this.country = country; this.extraParams = extraParams; - this.requested = requested; + this.line1 = line1; + this.line2 = line2; + this.postalCode = postalCode; + this.state = state; + this.town = town; } public static Builder builder() { @@ -7837,22 +20122,56 @@ public static Builder builder() { } public static class Builder { + private String city; + + private String country; + private Map extraParams; - private Boolean requested; + private String line1; + + private String line2; + + private String postalCode; + + private String state; + + private String town; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Merchant.Support.Address build() { + return new AccountCreateParams.Configuration.Merchant.Support.Address( + this.city, + this.country, + this.extraParams, + this.line1, + this.line2, + this.postalCode, + this.state, + this.town); + } + + /** City, district, suburb, town, or village. */ + public Builder setCity(String city) { + this.city = city; + return this; + } - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Merchant.Capabilities.PaycoPayments build() { - return new AccountCreateParams.Configuration.Merchant.Capabilities.PaycoPayments( - this.extraParams, this.requested); + /** + * Required. Two-letter country code (ISO 3166-1 alpha-2). + */ + public Builder setCountry(String country) { + this.country = country; + 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.PaycoPayments#extraParams} - * for the field documentation. + * AccountCreateParams.Configuration.Merchant.Support.Address#extraParams} for the field + * documentation. */ public Builder putExtraParam(String key, Object value) { if (this.extraParams == null) { @@ -7866,8 +20185,8 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.PaycoPayments#extraParams} - * for the field documentation. + * AccountCreateParams.Configuration.Merchant.Support.Address#extraParams} for the field + * documentation. */ public Builder putAllExtraParam(Map map) { if (this.extraParams == null) { @@ -7877,20 +20196,261 @@ public Builder putAllExtraParam(Map map) { return this; } - /** - * Required. To request a new Capability for an account, pass true. - * There can be a delay before the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; + /** Address line 1 (e.g., street, PO Box, or company name). */ + public Builder setLine1(String line1) { + this.line1 = line1; + return this; + } + + /** Address line 2 (e.g., apartment, suite, unit, or building). */ + public Builder setLine2(String line2) { + this.line2 = line2; + return this; + } + + /** ZIP or postal code. */ + public Builder setPostalCode(String postalCode) { + this.postalCode = postalCode; + return this; + } + + /** State, county, province, or region. */ + public Builder setState(String state) { + this.state = state; + return this; + } + + /** Town or district. */ + public Builder setTown(String town) { + this.town = town; return this; } } } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Recipient { + /** Capabilities to be requested on the Recipient Configuration. */ + @SerializedName("capabilities") + Capabilities capabilities; + + /** + * 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; + + private Recipient(Capabilities capabilities, Map extraParams) { + this.capabilities = capabilities; + this.extraParams = extraParams; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Capabilities capabilities; + + private Map extraParams; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Recipient build() { + return new AccountCreateParams.Configuration.Recipient( + this.capabilities, this.extraParams); + } + + /** Capabilities to be requested on the Recipient Configuration. */ + public Builder setCapabilities( + AccountCreateParams.Configuration.Recipient.Capabilities capabilities) { + this.capabilities = capabilities; + 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 AccountCreateParams.Configuration.Recipient#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 AccountCreateParams.Configuration.Recipient#extraParams} for the field + * documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Capabilities { + /** Capabilities that enable OutboundPayments to a bank account linked to this Account. */ + @SerializedName("bank_accounts") + BankAccounts bankAccounts; + + /** Capabilities that enable OutboundPayments to a card linked to this Account. */ + @SerializedName("cards") + Cards cards; + + /** Capabilities that enable OutboundPayments to a crypto wallet linked to this Account. */ + @SerializedName("crypto_wallets") + CryptoWallets cryptoWallets; + + /** + * 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; + + /** Capabilities that enable OutboundPayments via paper check. */ + @SerializedName("paper_checks") + PaperChecks paperChecks; + + /** Capabilities that enable the recipient to manage their Stripe Balance (/v1/balance). */ + @SerializedName("stripe_balance") + StripeBalance stripeBalance; + + private Capabilities( + BankAccounts bankAccounts, + Cards cards, + CryptoWallets cryptoWallets, + Map extraParams, + PaperChecks paperChecks, + StripeBalance stripeBalance) { + this.bankAccounts = bankAccounts; + this.cards = cards; + this.cryptoWallets = cryptoWallets; + this.extraParams = extraParams; + this.paperChecks = paperChecks; + this.stripeBalance = stripeBalance; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private BankAccounts bankAccounts; + + private Cards cards; + + private CryptoWallets cryptoWallets; + + private Map extraParams; + + private PaperChecks paperChecks; + + private StripeBalance stripeBalance; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Recipient.Capabilities build() { + return new AccountCreateParams.Configuration.Recipient.Capabilities( + this.bankAccounts, + this.cards, + this.cryptoWallets, + this.extraParams, + this.paperChecks, + this.stripeBalance); + } + + /** Capabilities that enable OutboundPayments to a bank account linked to this Account. */ + public Builder setBankAccounts( + AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts bankAccounts) { + this.bankAccounts = bankAccounts; + return this; + } + + /** Capabilities that enable OutboundPayments to a card linked to this Account. */ + public Builder setCards( + AccountCreateParams.Configuration.Recipient.Capabilities.Cards cards) { + this.cards = cards; + return this; + } + + /** + * Capabilities that enable OutboundPayments to a crypto wallet linked to this Account. + */ + public Builder setCryptoWallets( + AccountCreateParams.Configuration.Recipient.Capabilities.CryptoWallets + cryptoWallets) { + this.cryptoWallets = cryptoWallets; + 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 AccountCreateParams.Configuration.Recipient.Capabilities#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 AccountCreateParams.Configuration.Recipient.Capabilities#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Capabilities that enable OutboundPayments via paper check. */ + public Builder setPaperChecks( + AccountCreateParams.Configuration.Recipient.Capabilities.PaperChecks paperChecks) { + this.paperChecks = paperChecks; + return this; + } + + /** + * Capabilities that enable the recipient to manage their Stripe Balance (/v1/balance). + */ + public Builder setStripeBalance( + AccountCreateParams.Configuration.Recipient.Capabilities.StripeBalance + stripeBalance) { + this.stripeBalance = stripeBalance; + return this; + } + } @Getter @EqualsAndHashCode(callSuper = false) - public static class PaynowPayments { + public static class BankAccounts { /** * 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. @@ -7902,15 +20462,36 @@ public static class PaynowPayments { Map extraParams; /** - * Required. To request a new Capability for an account, pass true. There - * can be a delay before the requested Capability becomes active. + * Enables this Account to receive OutboundPayments to linked bank accounts over real time + * rails. */ - @SerializedName("requested") - Boolean requested; + @SerializedName("instant") + com.stripe.param.v2.core.AccountCreateParams.Configuration.Recipient.Capabilities + .BankAccounts.Instant + instant; + + /** + * Enables this Account to receive OutboundPayments to linked bank accounts over local + * networks. + */ + @SerializedName("local") + Local local; + + /** Enables this Account to receive OutboundPayments to linked bank accounts over wire. */ + @SerializedName("wire") + Wire wire; - private PaynowPayments(Map extraParams, Boolean requested) { + private BankAccounts( + Map extraParams, + com.stripe.param.v2.core.AccountCreateParams.Configuration.Recipient.Capabilities + .BankAccounts.Instant + instant, + Local local, + Wire wire) { this.extraParams = extraParams; - this.requested = requested; + this.instant = instant; + this.local = local; + this.wire = wire; } public static Builder builder() { @@ -7920,19 +20501,25 @@ public static Builder builder() { public static class Builder { private Map extraParams; - private Boolean requested; + private com.stripe.param.v2.core.AccountCreateParams.Configuration.Recipient + .Capabilities.BankAccounts.Instant + instant; + + private Local local; + + private Wire wire; /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Merchant.Capabilities.PaynowPayments build() { - return new AccountCreateParams.Configuration.Merchant.Capabilities.PaynowPayments( - this.extraParams, this.requested); + public AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts build() { + return new AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts( + this.extraParams, this.instant, this.local, this.wire); } /** * 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.PaynowPayments#extraParams} + * AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -7947,7 +20534,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.PaynowPayments#extraParams} + * AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -7958,592 +20545,815 @@ public Builder putAllExtraParam(Map map) { return this; } + /** + * Enables this Account to receive OutboundPayments to linked bank accounts over real + * time rails. + */ + public Builder setInstant( + AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts.Instant + instant) { + this.instant = instant; + return this; + } + + /** + * Enables this Account to receive OutboundPayments to linked bank accounts over local + * networks. + */ + public Builder setLocal( + AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts.Local local) { + this.local = local; + return this; + } + + /** + * Enables this Account to receive OutboundPayments to linked bank accounts over wire. + */ + public Builder setWire( + AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts.Wire wire) { + this.wire = wire; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Instant { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + /** * Required. To request a new Capability for an account, pass true. * There can be a delay before the requested Capability becomes active. */ - public Builder setRequested(Boolean requested) { + @SerializedName("requested") + Boolean requested; + + private Instant( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; this.requested = requested; - return this; } - } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class PromptpayPayments { - /** - * 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; + public static Builder builder() { + return new Builder(); + } - /** - * Required. To request a new Capability for an account, pass true. There - * can be a delay before the requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + public static class Builder { + private Map extraParams; - private PromptpayPayments(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + private Protections protections; - public static Builder builder() { - return new Builder(); - } + private Boolean requested; - public static class Builder { - private Map extraParams; + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts.Instant + build() { + return new AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts + .Instant(this.extraParams, this.protections, this.requested); + } - private Boolean requested; + /** + * 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 + * AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts.Instant#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; + } - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Merchant.Capabilities.PromptpayPayments - build() { - return new AccountCreateParams.Configuration.Merchant.Capabilities.PromptpayPayments( - this.extraParams, this.requested); + /** + * 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 + * AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts.Instant#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts.Instant + .Protections + protections) { + this.protections = protections; + return this; + } + + /** + * Required. To request a new Capability for an account, pass true. + * There can be a delay before the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.PromptpayPayments#extraParams} - * for the field documentation. - */ - public Builder putExtraParam(String key, Object value) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts.Instant + .Protections + build() { + return new AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts + .Instant.Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts.Instant.Protections#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 + * AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts.Instant.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts.Instant + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } } - 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.PromptpayPayments#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); - } - this.extraParams.putAll(map); - return this; - } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a new Capability for an account, pass true. - * There can be a delay before the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; - } - } - } + /** Required. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; - @Getter - @EqualsAndHashCode(callSuper = false) - public static class RevolutPayPayments { - /** - * 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; + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } - /** - * Required. To request a new Capability for an account, pass true. There - * can be a delay before the requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + public static Builder builder() { + return new Builder(); + } - private RevolutPayPayments(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + public static class Builder { + private Map extraParams; - public static Builder builder() { - return new Builder(); - } + private Boolean requested; - public static class Builder { - private Map extraParams; + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts + .Instant.Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts + .Instant.Protections.PspMigration(this.extraParams, this.requested); + } - private Boolean requested; + /** + * 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 + * AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts.Instant.Protections.PspMigration#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; + } - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Merchant.Capabilities.RevolutPayPayments - build() { - return new AccountCreateParams.Configuration.Merchant.Capabilities.RevolutPayPayments( - this.extraParams, this.requested); - } + /** + * 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 + * AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts.Instant.Protections.PspMigration#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 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.RevolutPayPayments#extraParams} - * for the field documentation. - */ - public Builder putExtraParam(String key, Object value) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** Required. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } } - this.extraParams.put(key, value); - return this; } + } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Local { /** - * 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.RevolutPayPayments#extraParams} - * for the field documentation. + * 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. */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); - } - this.extraParams.putAll(map); - return this; - } + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; /** * Required. To request a new Capability for an account, pass true. * There can be a delay before the requested Capability becomes active. */ - public Builder setRequested(Boolean requested) { + @SerializedName("requested") + Boolean requested; + + private Local( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; this.requested = requested; - return this; } - } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class SamsungPayPayments { - /** - * 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; + public static Builder builder() { + return new Builder(); + } - /** - * Required. To request a new Capability for an account, pass true. There - * can be a delay before the requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + public static class Builder { + private Map extraParams; - private SamsungPayPayments(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + private Protections protections; - public static Builder builder() { - return new Builder(); - } + private Boolean requested; - public static class Builder { - private Map extraParams; + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts.Local + build() { + return new AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts + .Local(this.extraParams, this.protections, this.requested); + } - private Boolean requested; + /** + * 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 + * AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts.Local#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; + } - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Merchant.Capabilities.SamsungPayPayments - build() { - return new AccountCreateParams.Configuration.Merchant.Capabilities.SamsungPayPayments( - this.extraParams, this.requested); - } + /** + * 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 + * AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts.Local#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 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.SamsungPayPayments#extraParams} - * for the field documentation. - */ - public Builder putExtraParam(String key, Object value) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts.Local + .Protections + protections) { + this.protections = protections; + return this; } - 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.SamsungPayPayments#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** + * Required. To request a new Capability for an account, pass true. + * There can be a delay before the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; } - this.extraParams.putAll(map); - return this; } - /** - * Required. To request a new Capability for an account, pass true. - * There can be a delay before the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; - } - } - } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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; - @Getter - @EqualsAndHashCode(callSuper = false) - public static class SepaBankTransferPayments { - /** - * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - /** - * Required. To request a new Capability for an account, pass true. There - * can be a delay before the requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - private SepaBankTransferPayments(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + public static Builder builder() { + return new Builder(); + } - public static Builder builder() { - return new Builder(); - } + public static class Builder { + private Map extraParams; - public static class Builder { - private Map extraParams; + private PspMigration pspMigration; - private Boolean requested; + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts.Local + .Protections + build() { + return new AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts + .Local.Protections(this.extraParams, this.pspMigration); + } - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Merchant.Capabilities.SepaBankTransferPayments - build() { - return new AccountCreateParams.Configuration.Merchant.Capabilities - .SepaBankTransferPayments(this.extraParams, this.requested); - } + /** + * 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 + * AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts.Local.Protections#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 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.SepaBankTransferPayments#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 + * AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts.Local.Protections#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 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.SepaBankTransferPayments#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts.Local + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } } - this.extraParams.putAll(map); - return this; - } - /** - * Required. To request a new Capability for an account, pass true. - * There can be a delay before the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; - } - } - } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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; - @Getter - @EqualsAndHashCode(callSuper = false) - public static class SepaDebitPayments { - /** - * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; - /** - * Required. To request a new Capability for an account, pass true. There - * can be a delay before the requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } - private SepaDebitPayments(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + public static Builder builder() { + return new Builder(); + } - public static Builder builder() { - return new Builder(); - } + public static class Builder { + private Map extraParams; - public static class Builder { - private Map extraParams; + private Boolean requested; - private Boolean requested; + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts.Local + .Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts + .Local.Protections.PspMigration(this.extraParams, this.requested); + } - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Merchant.Capabilities.SepaDebitPayments - build() { - return new AccountCreateParams.Configuration.Merchant.Capabilities.SepaDebitPayments( - this.extraParams, this.requested); - } + /** + * 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 + * AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts.Local.Protections.PspMigration#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 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.SepaDebitPayments#extraParams} - * for the field documentation. - */ - public Builder putExtraParam(String key, Object value) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** + * 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 + * AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts.Local.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } } - this.extraParams.put(key, value); - return this; } + } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Wire { /** - * 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.SepaDebitPayments#extraParams} - * for the field documentation. + * 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. */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); - } - this.extraParams.putAll(map); - return this; - } + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; /** * Required. To request a new Capability for an account, pass true. * There can be a delay before the requested Capability becomes active. */ - public Builder setRequested(Boolean requested) { + @SerializedName("requested") + Boolean requested; + + private Wire( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; this.requested = requested; - return this; } - } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class SwishPayments { - /** - * 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; + public static Builder builder() { + return new Builder(); + } - /** - * Required. To request a new Capability for an account, pass true. There - * can be a delay before the requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + public static class Builder { + private Map extraParams; - private SwishPayments(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + private Protections protections; - public static Builder builder() { - return new Builder(); - } + private Boolean requested; - public static class Builder { - private Map extraParams; + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts.Wire + build() { + return new AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts + .Wire(this.extraParams, this.protections, this.requested); + } - private Boolean requested; + /** + * 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 + * AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts.Wire#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; + } - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Merchant.Capabilities.SwishPayments build() { - return new AccountCreateParams.Configuration.Merchant.Capabilities.SwishPayments( - this.extraParams, this.requested); - } + /** + * 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 + * AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts.Wire#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 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.SwishPayments#extraParams} - * for the field documentation. - */ - public Builder putExtraParam(String key, Object value) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts.Wire + .Protections + protections) { + this.protections = protections; + return this; } - 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.SwishPayments#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** + * Required. To request a new Capability for an account, pass true. + * There can be a delay before the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; } - this.extraParams.putAll(map); - return this; } - /** - * Required. To request a new Capability for an account, pass true. - * There can be a delay before the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; - } - } - } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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; - @Getter - @EqualsAndHashCode(callSuper = false) - public static class TwintPayments { - /** - * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - /** - * Required. To request a new Capability for an account, pass true. There - * can be a delay before the requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - private TwintPayments(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + public static Builder builder() { + return new Builder(); + } - public static Builder builder() { - return new Builder(); - } + public static class Builder { + private Map extraParams; - public static class Builder { - private Map extraParams; + private PspMigration pspMigration; - private Boolean requested; + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts.Wire + .Protections + build() { + return new AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts + .Wire.Protections(this.extraParams, this.pspMigration); + } - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Merchant.Capabilities.TwintPayments build() { - return new AccountCreateParams.Configuration.Merchant.Capabilities.TwintPayments( - this.extraParams, this.requested); - } + /** + * 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 + * AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts.Wire.Protections#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 + * AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts.Wire.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts.Wire + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts.Wire + .Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts + .Wire.Protections.PspMigration(this.extraParams, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts.Wire.Protections.PspMigration#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 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.TwintPayments#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 + * AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts.Wire.Protections.PspMigration#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 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.TwintPayments#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** Required. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } } - this.extraParams.putAll(map); - return this; - } - - /** - * Required. To request a new Capability for an account, pass true. - * There can be a delay before the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; } } } @Getter @EqualsAndHashCode(callSuper = false) - public static class UsBankTransferPayments { + public static class Cards { /** * 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. @@ -8554,6 +21364,10 @@ public static class UsBankTransferPayments { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + /** * Required. To request a new Capability for an account, pass true. There * can be a delay before the requested Capability becomes active. @@ -8561,8 +21375,10 @@ public static class UsBankTransferPayments { @SerializedName("requested") Boolean requested; - private UsBankTransferPayments(Map extraParams, Boolean requested) { + private Cards( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -8573,21 +21389,22 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Merchant.Capabilities.UsBankTransferPayments - build() { - return new AccountCreateParams.Configuration.Merchant.Capabilities - .UsBankTransferPayments(this.extraParams, this.requested); + public AccountCreateParams.Configuration.Recipient.Capabilities.Cards build() { + return new AccountCreateParams.Configuration.Recipient.Capabilities.Cards( + this.extraParams, this.protections, this.requested); } /** * 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.UsBankTransferPayments#extraParams} - * for the field documentation. + * AccountCreateParams.Configuration.Recipient.Capabilities.Cards#extraParams} for the + * field documentation. */ public Builder putExtraParam(String key, Object value) { if (this.extraParams == null) { @@ -8601,8 +21418,8 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.UsBankTransferPayments#extraParams} - * for the field documentation. + * AccountCreateParams.Configuration.Recipient.Capabilities.Cards#extraParams} for the + * field documentation. */ public Builder putAllExtraParam(Map map) { if (this.extraParams == null) { @@ -8612,6 +21429,14 @@ public Builder putAllExtraParam(Map map) { return this; } + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountCreateParams.Configuration.Recipient.Capabilities.Cards.Protections + protections) { + this.protections = protections; + return this; + } + /** * Required. To request a new Capability for an account, pass true. * There can be a delay before the requested Capability becomes active. @@ -8621,187 +21446,167 @@ public Builder setRequested(Boolean requested) { return this; } } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class ZipPayments { - /** - * 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; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. To request a new Capability for an account, pass true. There - * can be a delay before the requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + /** Required. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - private ZipPayments(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - public static Builder builder() { - return new Builder(); - } + public static Builder builder() { + return new Builder(); + } - public static class Builder { - private Map extraParams; + public static class Builder { + private Map extraParams; - private Boolean requested; + private PspMigration pspMigration; - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Merchant.Capabilities.ZipPayments build() { - return new AccountCreateParams.Configuration.Merchant.Capabilities.ZipPayments( - this.extraParams, this.requested); - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Recipient.Capabilities.Cards.Protections + build() { + return new AccountCreateParams.Configuration.Recipient.Capabilities.Cards + .Protections(this.extraParams, this.pspMigration); + } - /** - * 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.ZipPayments#extraParams} for - * the field documentation. - */ - public Builder putExtraParam(String key, Object value) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** + * 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 + * AccountCreateParams.Configuration.Recipient.Capabilities.Cards.Protections#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; } - 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 - * AccountCreateParams.Configuration.Merchant.Capabilities.ZipPayments#extraParams} for - * the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** + * 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 + * AccountCreateParams.Configuration.Recipient.Capabilities.Cards.Protections#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; } - this.extraParams.putAll(map); - return this; - } - /** - * Required. To request a new Capability for an account, pass true. - * There can be a delay before the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Recipient.Capabilities.Cards.Protections + .PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } } - } - } - } - - @Getter - @EqualsAndHashCode(callSuper = false) - public static class CardPayments { - /** - * Automatically declines certain charge types regardless of whether the card issuer - * accepted or declined the charge. - */ - @SerializedName("decline_on") - DeclineOn declineOn; - /** - * 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; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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; - private CardPayments(DeclineOn declineOn, Map extraParams) { - this.declineOn = declineOn; - this.extraParams = extraParams; - } + /** Required. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; - public static Builder builder() { - return new Builder(); - } + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } - public static class Builder { - private DeclineOn declineOn; + public static Builder builder() { + return new Builder(); + } - private Map extraParams; + public static class Builder { + private Map extraParams; - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Merchant.CardPayments build() { - return new AccountCreateParams.Configuration.Merchant.CardPayments( - this.declineOn, this.extraParams); - } + private Boolean requested; - /** - * Automatically declines certain charge types regardless of whether the card issuer - * accepted or declined the charge. - */ - public Builder setDeclineOn( - AccountCreateParams.Configuration.Merchant.CardPayments.DeclineOn declineOn) { - this.declineOn = declineOn; - return this; - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Recipient.Capabilities.Cards.Protections + .PspMigration + build() { + return new AccountCreateParams.Configuration.Recipient.Capabilities.Cards + .Protections.PspMigration(this.extraParams, this.requested); + } - /** - * 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 AccountCreateParams.Configuration.Merchant.CardPayments#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 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 + * AccountCreateParams.Configuration.Recipient.Capabilities.Cards.Protections.PspMigration#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 AccountCreateParams.Configuration.Merchant.CardPayments#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** + * 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 + * AccountCreateParams.Configuration.Recipient.Capabilities.Cards.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } } - this.extraParams.putAll(map); - return this; } } @Getter @EqualsAndHashCode(callSuper = false) - public static class DeclineOn { - /** - * Whether Stripe automatically declines charges with an incorrect ZIP or postal code. - * This setting only applies when a ZIP or postal code is provided and they fail bank - * verification. - */ - @SerializedName("avs_failure") - Boolean avsFailure; - - /** - * Whether Stripe automatically declines charges with an incorrect CVC. This setting only - * applies when a CVC is provided and it fails bank verification. - */ - @SerializedName("cvc_failure") - Boolean cvcFailure; - + public static class CryptoWallets { /** * 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. @@ -8812,11 +21617,22 @@ public static class DeclineOn { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - private DeclineOn( - Boolean avsFailure, Boolean cvcFailure, Map extraParams) { - this.avsFailure = avsFailure; - this.cvcFailure = cvcFailure; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * Required. To request a new Capability for an account, pass true. There + * can be a delay before the requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private CryptoWallets( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; } public static Builder builder() { @@ -8824,43 +21640,24 @@ public static Builder builder() { } public static class Builder { - private Boolean avsFailure; - - private Boolean cvcFailure; - private Map extraParams; - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Merchant.CardPayments.DeclineOn build() { - return new AccountCreateParams.Configuration.Merchant.CardPayments.DeclineOn( - this.avsFailure, this.cvcFailure, this.extraParams); - } + private Protections protections; - /** - * Whether Stripe automatically declines charges with an incorrect ZIP or postal code. - * This setting only applies when a ZIP or postal code is provided and they fail bank - * verification. - */ - public Builder setAvsFailure(Boolean avsFailure) { - this.avsFailure = avsFailure; - return this; - } + private Boolean requested; - /** - * Whether Stripe automatically declines charges with an incorrect CVC. This setting - * only applies when a CVC is provided and it fails bank verification. - */ - public Builder setCvcFailure(Boolean cvcFailure) { - this.cvcFailure = cvcFailure; - return this; + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Recipient.Capabilities.CryptoWallets build() { + return new AccountCreateParams.Configuration.Recipient.Capabilities.CryptoWallets( + this.extraParams, this.protections, this.requested); } /** * 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 - * AccountCreateParams.Configuration.Merchant.CardPayments.DeclineOn#extraParams} for - * the field documentation. + * AccountCreateParams.Configuration.Recipient.Capabilities.CryptoWallets#extraParams} + * for the field documentation. */ public Builder putExtraParam(String key, Object value) { if (this.extraParams == null) { @@ -8874,8 +21671,8 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountCreateParams.Configuration.Merchant.CardPayments.DeclineOn#extraParams} for - * the field documentation. + * AccountCreateParams.Configuration.Recipient.Capabilities.CryptoWallets#extraParams} + * for the field documentation. */ public Builder putAllExtraParam(Map map) { if (this.extraParams == null) { @@ -8884,90 +21681,186 @@ public Builder putAllExtraParam(Map map) { this.extraParams.putAll(map); return this; } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountCreateParams.Configuration.Recipient.Capabilities.CryptoWallets.Protections + protections) { + this.protections = protections; + return this; + } + + /** + * Required. To request a new Capability for an account, pass true. + * There can be a delay before the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } } - } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class KonbiniPayments { - /** - * 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; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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; - /** Support for Konbini payments. */ - @SerializedName("support") - Support support; + /** Required. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - private KonbiniPayments(Map extraParams, Support support) { - this.extraParams = extraParams; - this.support = support; - } + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - public static Builder builder() { - return new Builder(); - } + public static Builder builder() { + return new Builder(); + } - public static class Builder { - private Map extraParams; + public static class Builder { + private Map extraParams; - private Support support; + private PspMigration pspMigration; - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Merchant.KonbiniPayments build() { - return new AccountCreateParams.Configuration.Merchant.KonbiniPayments( - this.extraParams, this.support); - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Recipient.Capabilities.CryptoWallets + .Protections + build() { + return new AccountCreateParams.Configuration.Recipient.Capabilities.CryptoWallets + .Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountCreateParams.Configuration.Recipient.Capabilities.CryptoWallets.Protections#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 + * AccountCreateParams.Configuration.Recipient.Capabilities.CryptoWallets.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Recipient.Capabilities.CryptoWallets.Protections + .PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Recipient.Capabilities.CryptoWallets + .Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Recipient.Capabilities.CryptoWallets + .Protections.PspMigration(this.extraParams, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Recipient.Capabilities.CryptoWallets.Protections.PspMigration#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 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 AccountCreateParams.Configuration.Merchant.KonbiniPayments#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 + * AccountCreateParams.Configuration.Recipient.Capabilities.CryptoWallets.Protections.PspMigration#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 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 AccountCreateParams.Configuration.Merchant.KonbiniPayments#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** Required. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } } - this.extraParams.putAll(map); - return this; - } - - /** Support for Konbini payments. */ - public Builder setSupport( - AccountCreateParams.Configuration.Merchant.KonbiniPayments.Support support) { - this.support = support; - return this; } } @Getter @EqualsAndHashCode(callSuper = false) - public static class Support { - /** Support email address for Konbini payments. */ - @SerializedName("email") - String email; - + public static class PaperChecks { /** * 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. @@ -8978,20 +21871,22 @@ public static class Support { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** Support hours for Konbini payments. */ - @SerializedName("hours") - Hours hours; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; - /** Support phone number for Konbini payments. */ - @SerializedName("phone") - String phone; + /** + * Required. To request a new Capability for an account, pass true. There + * can be a delay before the requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; - private Support( - String email, Map extraParams, Hours hours, String phone) { - this.email = email; + private PaperChecks( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; - this.hours = hours; - this.phone = phone; + this.protections = protections; + this.requested = requested; } public static Builder builder() { @@ -8999,31 +21894,23 @@ public static Builder builder() { } public static class Builder { - private String email; - private Map extraParams; - private Hours hours; + private Protections protections; - private String phone; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Merchant.KonbiniPayments.Support build() { - return new AccountCreateParams.Configuration.Merchant.KonbiniPayments.Support( - this.email, this.extraParams, this.hours, this.phone); - } - - /** Support email address for Konbini payments. */ - public Builder setEmail(String email) { - this.email = email; - return this; + public AccountCreateParams.Configuration.Recipient.Capabilities.PaperChecks build() { + return new AccountCreateParams.Configuration.Recipient.Capabilities.PaperChecks( + this.extraParams, this.protections, this.requested); } /** * 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 - * AccountCreateParams.Configuration.Merchant.KonbiniPayments.Support#extraParams} for + * AccountCreateParams.Configuration.Recipient.Capabilities.PaperChecks#extraParams} for * the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -9038,7 +21925,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountCreateParams.Configuration.Merchant.KonbiniPayments.Support#extraParams} for + * AccountCreateParams.Configuration.Recipient.Capabilities.PaperChecks#extraParams} for * the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -9049,27 +21936,27 @@ public Builder putAllExtraParam(Map map) { return this; } - /** Support hours for Konbini payments. */ - public Builder setHours( - AccountCreateParams.Configuration.Merchant.KonbiniPayments.Support.Hours hours) { - this.hours = hours; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountCreateParams.Configuration.Recipient.Capabilities.PaperChecks.Protections + protections) { + this.protections = protections; return this; } - /** Support phone number for Konbini payments. */ - public Builder setPhone(String phone) { - this.phone = phone; + /** + * Required. To request a new Capability for an account, pass true. + * There can be a delay before the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; return this; } } @Getter @EqualsAndHashCode(callSuper = false) - public static class Hours { - /** Support hours end time (JST time of day) for in {@code HH:MM} format. */ - @SerializedName("end_time") - String endTime; - + public static class Protections { /** * 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} @@ -9080,14 +21967,13 @@ public static class Hours { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** Support hours start time (JST time of day) for in {@code HH:MM} format. */ - @SerializedName("start_time") - String startTime; + /** Required. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - private Hours(String endTime, Map extraParams, String startTime) { - this.endTime = endTime; + private Protections(Map extraParams, PspMigration pspMigration) { this.extraParams = extraParams; - this.startTime = startTime; + this.pspMigration = pspMigration; } public static Builder builder() { @@ -9095,30 +21981,23 @@ public static Builder builder() { } public static class Builder { - private String endTime; - private Map extraParams; - private String startTime; + private PspMigration pspMigration; /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Merchant.KonbiniPayments.Support.Hours + public AccountCreateParams.Configuration.Recipient.Capabilities.PaperChecks + .Protections build() { - return new AccountCreateParams.Configuration.Merchant.KonbiniPayments.Support.Hours( - this.endTime, this.extraParams, this.startTime); - } - - /** Support hours end time (JST time of day) for in {@code HH:MM} format. */ - public Builder setEndTime(String endTime) { - this.endTime = endTime; - return this; + return new AccountCreateParams.Configuration.Recipient.Capabilities.PaperChecks + .Protections(this.extraParams, this.pspMigration); } /** * 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 - * AccountCreateParams.Configuration.Merchant.KonbiniPayments.Support.Hours#extraParams} + * AccountCreateParams.Configuration.Recipient.Capabilities.PaperChecks.Protections#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -9133,7 +22012,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountCreateParams.Configuration.Merchant.KonbiniPayments.Support.Hours#extraParams} + * AccountCreateParams.Configuration.Recipient.Capabilities.PaperChecks.Protections#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -9144,140 +22023,98 @@ public Builder putAllExtraParam(Map map) { return this; } - /** Support hours start time (JST time of day) for in {@code HH:MM} format. */ - public Builder setStartTime(String startTime) { - this.startTime = startTime; + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Recipient.Capabilities.PaperChecks.Protections + .PspMigration + pspMigration) { + this.pspMigration = pspMigration; return this; } } - } - } - } - - @Getter - @EqualsAndHashCode(callSuper = false) - public static class ScriptStatementDescriptor { - /** - * 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 Kana variation of statement_descriptor used for charges in Japan. Japanese statement - * descriptors have special - * requirements. - */ - @SerializedName("kana") - Kana kana; - - /** - * The Kanji variation of statement_descriptor used for charges in Japan. Japanese statement - * descriptors have special - * requirements. - */ - @SerializedName("kanji") - Kanji kanji; - private ScriptStatementDescriptor(Map extraParams, Kana kana, Kanji kanji) { - this.extraParams = extraParams; - this.kana = kana; - this.kanji = kanji; - } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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; - public static Builder builder() { - return new Builder(); - } + /** Required. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; - public static class Builder { - private Map extraParams; + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } - private Kana kana; + public static Builder builder() { + return new Builder(); + } - private Kanji kanji; + public static class Builder { + private Map extraParams; - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Merchant.ScriptStatementDescriptor build() { - return new AccountCreateParams.Configuration.Merchant.ScriptStatementDescriptor( - this.extraParams, this.kana, this.kanji); - } + private Boolean requested; - /** - * 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 - * AccountCreateParams.Configuration.Merchant.ScriptStatementDescriptor#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; - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Recipient.Capabilities.PaperChecks + .Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Recipient.Capabilities.PaperChecks + .Protections.PspMigration(this.extraParams, this.requested); + } - /** - * 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 - * AccountCreateParams.Configuration.Merchant.ScriptStatementDescriptor#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 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 + * AccountCreateParams.Configuration.Recipient.Capabilities.PaperChecks.Protections.PspMigration#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; + } - /** - * The Kana variation of statement_descriptor used for charges in Japan. Japanese - * statement descriptors have special - * requirements. - */ - public Builder setKana( - AccountCreateParams.Configuration.Merchant.ScriptStatementDescriptor.Kana kana) { - this.kana = kana; - 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 + * AccountCreateParams.Configuration.Recipient.Capabilities.PaperChecks.Protections.PspMigration#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 Kanji variation of statement_descriptor used for charges in Japan. Japanese - * statement descriptors have special - * requirements. - */ - public Builder setKanji( - AccountCreateParams.Configuration.Merchant.ScriptStatementDescriptor.Kanji kanji) { - this.kanji = kanji; - return this; + /** Required. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } } } @Getter @EqualsAndHashCode(callSuper = false) - public static class Kana { - /** - * The default text that appears on statements for non-card charges outside of Japan. For - * card charges, if you don’t set a statement_descriptor_prefix, this text is also used as - * the statement descriptor prefix. In that case, if concatenating the statement - * descriptor suffix causes the combined statement descriptor to exceed 22 characters, we - * truncate the statement_descriptor text to limit the full descriptor to 22 characters. - * For more information about statement descriptors and their requirements, see the - * Merchant Configuration settings documentation. - */ - @SerializedName("descriptor") - String descriptor; - + public static class StripeBalance { /** * 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. @@ -9289,20 +22126,14 @@ public static class Kana { Map extraParams; /** - * Default text that appears on statements for card charges outside of Japan, prefixing - * any dynamic statement_descriptor_suffix specified on the charge. To maximize space for - * the dynamic part of the descriptor, keep this text short. If you don’t specify this - * value, statement_descriptor is used as the prefix. For more information about statement - * descriptors and their requirements, see the Merchant Configuration settings - * documentation. + * Enables this Account to receive /v1/transfers into their Stripe Balance (/v1/balance). */ - @SerializedName("prefix") - String prefix; + @SerializedName("stripe_transfers") + StripeTransfers stripeTransfers; - private Kana(String descriptor, Map extraParams, String prefix) { - this.descriptor = descriptor; + private StripeBalance(Map extraParams, StripeTransfers stripeTransfers) { this.extraParams = extraParams; - this.prefix = prefix; + this.stripeTransfers = stripeTransfers; } public static Builder builder() { @@ -9310,38 +22141,21 @@ public static Builder builder() { } public static class Builder { - private String descriptor; - private Map extraParams; - private String prefix; + private StripeTransfers stripeTransfers; /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Merchant.ScriptStatementDescriptor.Kana - build() { - return new AccountCreateParams.Configuration.Merchant.ScriptStatementDescriptor.Kana( - this.descriptor, this.extraParams, this.prefix); - } - - /** - * The default text that appears on statements for non-card charges outside of Japan. - * For card charges, if you don’t set a statement_descriptor_prefix, this text is also - * used as the statement descriptor prefix. In that case, if concatenating the statement - * descriptor suffix causes the combined statement descriptor to exceed 22 characters, - * we truncate the statement_descriptor text to limit the full descriptor to 22 - * characters. For more information about statement descriptors and their requirements, - * see the Merchant Configuration settings documentation. - */ - public Builder setDescriptor(String descriptor) { - this.descriptor = descriptor; - return this; + public AccountCreateParams.Configuration.Recipient.Capabilities.StripeBalance build() { + return new AccountCreateParams.Configuration.Recipient.Capabilities.StripeBalance( + this.extraParams, this.stripeTransfers); } /** * 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 - * AccountCreateParams.Configuration.Merchant.ScriptStatementDescriptor.Kana#extraParams} + * AccountCreateParams.Configuration.Recipient.Capabilities.StripeBalance#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -9356,7 +22170,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountCreateParams.Configuration.Merchant.ScriptStatementDescriptor.Kana#extraParams} + * AccountCreateParams.Configuration.Recipient.Capabilities.StripeBalance#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -9368,438 +22182,539 @@ public Builder putAllExtraParam(Map map) { } /** - * Default text that appears on statements for card charges outside of Japan, prefixing - * any dynamic statement_descriptor_suffix specified on the charge. To maximize space - * for the dynamic part of the descriptor, keep this text short. If you don’t specify - * this value, statement_descriptor is used as the prefix. For more information about - * statement descriptors and their requirements, see the Merchant Configuration settings - * documentation. + * Enables this Account to receive /v1/transfers into their Stripe Balance + * (/v1/balance). */ - public Builder setPrefix(String prefix) { - this.prefix = prefix; + public Builder setStripeTransfers( + AccountCreateParams.Configuration.Recipient.Capabilities.StripeBalance + .StripeTransfers + stripeTransfers) { + this.stripeTransfers = stripeTransfers; return this; } } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class Kanji { - /** - * The default text that appears on statements for non-card charges outside of Japan. For - * card charges, if you don’t set a statement_descriptor_prefix, this text is also used as - * the statement descriptor prefix. In that case, if concatenating the statement - * descriptor suffix causes the combined statement descriptor to exceed 22 characters, we - * truncate the statement_descriptor text to limit the full descriptor to 22 characters. - * For more information about statement descriptors and their requirements, see the - * Merchant Configuration settings documentation. - */ - @SerializedName("descriptor") - String descriptor; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class StripeTransfers { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * Required. To request a new Capability for an account, pass true. + * There can be a delay before the requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private StripeTransfers( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Recipient.Capabilities.StripeBalance + .StripeTransfers + build() { + return new AccountCreateParams.Configuration.Recipient.Capabilities.StripeBalance + .StripeTransfers(this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Recipient.Capabilities.StripeBalance.StripeTransfers#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 + * AccountCreateParams.Configuration.Recipient.Capabilities.StripeBalance.StripeTransfers#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountCreateParams.Configuration.Recipient.Capabilities.StripeBalance + .StripeTransfers.Protections + protections) { + this.protections = protections; + return this; + } + + /** + * Required. To request a new Capability for an account, pass true. + * There can be a delay before the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Recipient.Capabilities.StripeBalance + .StripeTransfers.Protections + build() { + return new AccountCreateParams.Configuration.Recipient.Capabilities.StripeBalance + .StripeTransfers.Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountCreateParams.Configuration.Recipient.Capabilities.StripeBalance.StripeTransfers.Protections#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; + } - /** - * 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; + /** + * 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 + * AccountCreateParams.Configuration.Recipient.Capabilities.StripeBalance.StripeTransfers.Protections#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - /** - * Default text that appears on statements for card charges outside of Japan, prefixing - * any dynamic statement_descriptor_suffix specified on the charge. To maximize space for - * the dynamic part of the descriptor, keep this text short. If you don’t specify this - * value, statement_descriptor is used as the prefix. For more information about statement - * descriptors and their requirements, see the Merchant Configuration settings - * documentation. - */ - @SerializedName("prefix") - String prefix; + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Recipient.Capabilities.StripeBalance + .StripeTransfers.Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } - private Kanji(String descriptor, Map extraParams, String prefix) { - this.descriptor = descriptor; - this.extraParams = extraParams; - this.prefix = prefix; - } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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; - public static Builder builder() { - return new Builder(); - } + /** Required. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; - public static class Builder { - private String descriptor; + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } - private Map extraParams; + public static Builder builder() { + return new Builder(); + } - private String prefix; + public static class Builder { + private Map extraParams; - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Merchant.ScriptStatementDescriptor.Kanji - build() { - return new AccountCreateParams.Configuration.Merchant.ScriptStatementDescriptor.Kanji( - this.descriptor, this.extraParams, this.prefix); - } + private Boolean requested; - /** - * The default text that appears on statements for non-card charges outside of Japan. - * For card charges, if you don’t set a statement_descriptor_prefix, this text is also - * used as the statement descriptor prefix. In that case, if concatenating the statement - * descriptor suffix causes the combined statement descriptor to exceed 22 characters, - * we truncate the statement_descriptor text to limit the full descriptor to 22 - * characters. For more information about statement descriptors and their requirements, - * see the Merchant Configuration settings documentation. - */ - public Builder setDescriptor(String descriptor) { - this.descriptor = descriptor; - return this; - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Recipient.Capabilities.StripeBalance + .StripeTransfers.Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Recipient.Capabilities + .StripeBalance.StripeTransfers.Protections.PspMigration( + this.extraParams, this.requested); + } - /** - * 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 - * AccountCreateParams.Configuration.Merchant.ScriptStatementDescriptor.Kanji#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 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 + * AccountCreateParams.Configuration.Recipient.Capabilities.StripeBalance.StripeTransfers.Protections.PspMigration#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 - * AccountCreateParams.Configuration.Merchant.ScriptStatementDescriptor.Kanji#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 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 + * AccountCreateParams.Configuration.Recipient.Capabilities.StripeBalance.StripeTransfers.Protections.PspMigration#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - /** - * Default text that appears on statements for card charges outside of Japan, prefixing - * any dynamic statement_descriptor_suffix specified on the charge. To maximize space - * for the dynamic part of the descriptor, keep this text short. If you don’t specify - * this value, statement_descriptor is used as the prefix. For more information about - * statement descriptors and their requirements, see the Merchant Configuration settings - * documentation. - */ - public Builder setPrefix(String prefix) { - this.prefix = prefix; - return this; + /** Required. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } } } } } + } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class SmartDisputes { - /** Settings for Smart Disputes auto_respond. */ - @SerializedName("auto_respond") - AutoRespond autoRespond; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Storer { + /** Capabilities to request on the Storer Configuration. */ + @SerializedName("capabilities") + Capabilities capabilities; - /** - * 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; + /** + * 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; - private SmartDisputes(AutoRespond autoRespond, Map extraParams) { - this.autoRespond = autoRespond; - this.extraParams = extraParams; - } + /** List of high-risk activities the business is involved in. */ + @SerializedName("high_risk_activities") + List highRiskActivities; - public static Builder builder() { - return new Builder(); - } + /** Description of the high-risk activities the business offers. */ + @SerializedName("high_risk_activities_description") + String highRiskActivitiesDescription; - public static class Builder { - private AutoRespond autoRespond; + /** Description of the money services offered by the business. */ + @SerializedName("money_services_description") + String moneyServicesDescription; - private Map extraParams; + /** Indicates whether the business operates in any prohibited countries. */ + @SerializedName("operates_in_prohibited_countries") + Boolean operatesInProhibitedCountries; - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Merchant.SmartDisputes build() { - return new AccountCreateParams.Configuration.Merchant.SmartDisputes( - this.autoRespond, this.extraParams); - } + /** Indicates whether the business participates in any regulated activity. */ + @SerializedName("participates_in_regulated_activity") + Boolean participatesInRegulatedActivity; - /** Settings for Smart Disputes auto_respond. */ - public Builder setAutoRespond( - AccountCreateParams.Configuration.Merchant.SmartDisputes.AutoRespond autoRespond) { - this.autoRespond = autoRespond; - return this; - } + /** Primary purpose of the stored funds. */ + @SerializedName("purpose_of_funds") + PurposeOfFunds purposeOfFunds; - /** - * 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 AccountCreateParams.Configuration.Merchant.SmartDisputes#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; - } + /** Description of the purpose of the stored funds. */ + @SerializedName("purpose_of_funds_description") + String purposeOfFundsDescription; + + /** Details of the regulated activity if the business participates in one. */ + @SerializedName("regulated_activity") + RegulatedActivity regulatedActivity; + + /** The source of funds for the business, e.g. profits, income, venture capital, etc. */ + @SerializedName("source_of_funds") + SourceOfFunds sourceOfFunds; - /** - * 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 AccountCreateParams.Configuration.Merchant.SmartDisputes#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); - } - this.extraParams.putAll(map); - return this; - } - } + /** Description of the source of funds for the business' account. */ + @SerializedName("source_of_funds_description") + String sourceOfFundsDescription; - @Getter - @EqualsAndHashCode(callSuper = false) - public static class AutoRespond { - /** - * 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; + private Storer( + Capabilities capabilities, + Map extraParams, + List highRiskActivities, + String highRiskActivitiesDescription, + String moneyServicesDescription, + Boolean operatesInProhibitedCountries, + Boolean participatesInRegulatedActivity, + PurposeOfFunds purposeOfFunds, + String purposeOfFundsDescription, + RegulatedActivity regulatedActivity, + SourceOfFunds sourceOfFunds, + String sourceOfFundsDescription) { + this.capabilities = capabilities; + this.extraParams = extraParams; + this.highRiskActivities = highRiskActivities; + this.highRiskActivitiesDescription = highRiskActivitiesDescription; + this.moneyServicesDescription = moneyServicesDescription; + this.operatesInProhibitedCountries = operatesInProhibitedCountries; + this.participatesInRegulatedActivity = participatesInRegulatedActivity; + this.purposeOfFunds = purposeOfFunds; + this.purposeOfFundsDescription = purposeOfFundsDescription; + this.regulatedActivity = regulatedActivity; + this.sourceOfFunds = sourceOfFunds; + this.sourceOfFundsDescription = sourceOfFundsDescription; + } - /** The preference for Smart Disputes auto-respond. */ - @SerializedName("preference") - Preference preference; + public static Builder builder() { + return new Builder(); + } - private AutoRespond(Map extraParams, Preference preference) { - this.extraParams = extraParams; - this.preference = preference; - } + public static class Builder { + private Capabilities capabilities; - public static Builder builder() { - return new Builder(); - } + private Map extraParams; - public static class Builder { - private Map extraParams; + private List highRiskActivities; - private Preference preference; + private String highRiskActivitiesDescription; - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Merchant.SmartDisputes.AutoRespond build() { - return new AccountCreateParams.Configuration.Merchant.SmartDisputes.AutoRespond( - this.extraParams, this.preference); - } + private String moneyServicesDescription; - /** - * 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 - * AccountCreateParams.Configuration.Merchant.SmartDisputes.AutoRespond#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; - } + private Boolean operatesInProhibitedCountries; - /** - * 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 - * AccountCreateParams.Configuration.Merchant.SmartDisputes.AutoRespond#extraParams} for - * the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); - } - this.extraParams.putAll(map); - return this; - } + private Boolean participatesInRegulatedActivity; - /** The preference for Smart Disputes auto-respond. */ - public Builder setPreference( - AccountCreateParams.Configuration.Merchant.SmartDisputes.AutoRespond.Preference - preference) { - this.preference = preference; - return this; - } - } + private PurposeOfFunds purposeOfFunds; - public enum Preference implements ApiRequestParams.EnumParam { - @SerializedName("inherit") - INHERIT("inherit"), + private String purposeOfFundsDescription; - @SerializedName("off") - OFF("off"), + private RegulatedActivity regulatedActivity; - @SerializedName("on") - ON("on"); + private SourceOfFunds sourceOfFunds; - @Getter(onMethod_ = {@Override}) - private final String value; + private String sourceOfFundsDescription; - Preference(String value) { - this.value = value; - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Storer build() { + return new AccountCreateParams.Configuration.Storer( + this.capabilities, + this.extraParams, + this.highRiskActivities, + this.highRiskActivitiesDescription, + this.moneyServicesDescription, + this.operatesInProhibitedCountries, + this.participatesInRegulatedActivity, + this.purposeOfFunds, + this.purposeOfFundsDescription, + this.regulatedActivity, + this.sourceOfFunds, + this.sourceOfFundsDescription); + } + + /** Capabilities to request on the Storer Configuration. */ + public Builder setCapabilities( + AccountCreateParams.Configuration.Storer.Capabilities capabilities) { + this.capabilities = capabilities; + 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 AccountCreateParams.Configuration.Storer#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; } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class StatementDescriptor { /** - * The default text that appears on statements for non-card charges outside of Japan. For - * card charges, if you don’t set a statement_descriptor_prefix, this text is also used as - * the statement descriptor prefix. In that case, if concatenating the statement descriptor - * suffix causes the combined statement descriptor to exceed 22 characters, we truncate the - * statement_descriptor text to limit the full descriptor to 22 characters. For more - * information about statement descriptors and their requirements, see the Merchant - * Configuration settings documentation. + * 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 AccountCreateParams.Configuration.Storer#extraParams} for the field + * documentation. */ - @SerializedName("descriptor") - String descriptor; + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } /** - * 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. + * Add an element to `highRiskActivities` list. A list is initialized for the first + * `add/addAll` call, and subsequent calls adds additional elements to the original list. + * See {@link AccountCreateParams.Configuration.Storer#highRiskActivities} for the field + * documentation. */ - @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) - Map extraParams; + public Builder addHighRiskActivity( + AccountCreateParams.Configuration.Storer.HighRiskActivity element) { + if (this.highRiskActivities == null) { + this.highRiskActivities = new ArrayList<>(); + } + this.highRiskActivities.add(element); + return this; + } /** - * Default text that appears on statements for card charges outside of Japan, prefixing any - * dynamic statement_descriptor_suffix specified on the charge. To maximize space for the - * dynamic part of the descriptor, keep this text short. If you don’t specify this value, - * statement_descriptor is used as the prefix. For more information about statement - * descriptors and their requirements, see the Merchant Configuration settings + * Add all elements to `highRiskActivities` list. A list is initialized for the first + * `add/addAll` call, and subsequent calls adds additional elements to the original list. + * See {@link AccountCreateParams.Configuration.Storer#highRiskActivities} for the field * documentation. */ - @SerializedName("prefix") - String prefix; + public Builder addAllHighRiskActivity( + List elements) { + if (this.highRiskActivities == null) { + this.highRiskActivities = new ArrayList<>(); + } + this.highRiskActivities.addAll(elements); + return this; + } - private StatementDescriptor( - String descriptor, Map extraParams, String prefix) { - this.descriptor = descriptor; - this.extraParams = extraParams; - this.prefix = prefix; + /** Description of the high-risk activities the business offers. */ + public Builder setHighRiskActivitiesDescription(String highRiskActivitiesDescription) { + this.highRiskActivitiesDescription = highRiskActivitiesDescription; + return this; + } + + /** Description of the money services offered by the business. */ + public Builder setMoneyServicesDescription(String moneyServicesDescription) { + this.moneyServicesDescription = moneyServicesDescription; + return this; + } + + /** Indicates whether the business operates in any prohibited countries. */ + public Builder setOperatesInProhibitedCountries(Boolean operatesInProhibitedCountries) { + this.operatesInProhibitedCountries = operatesInProhibitedCountries; + return this; } - public static Builder builder() { - return new Builder(); + /** Indicates whether the business participates in any regulated activity. */ + public Builder setParticipatesInRegulatedActivity(Boolean participatesInRegulatedActivity) { + this.participatesInRegulatedActivity = participatesInRegulatedActivity; + return this; } - public static class Builder { - private String descriptor; - - private Map extraParams; - - private String prefix; - - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Merchant.StatementDescriptor build() { - return new AccountCreateParams.Configuration.Merchant.StatementDescriptor( - this.descriptor, this.extraParams, this.prefix); - } + /** Primary purpose of the stored funds. */ + public Builder setPurposeOfFunds( + AccountCreateParams.Configuration.Storer.PurposeOfFunds purposeOfFunds) { + this.purposeOfFunds = purposeOfFunds; + return this; + } - /** - * The default text that appears on statements for non-card charges outside of Japan. For - * card charges, if you don’t set a statement_descriptor_prefix, this text is also used as - * the statement descriptor prefix. In that case, if concatenating the statement - * descriptor suffix causes the combined statement descriptor to exceed 22 characters, we - * truncate the statement_descriptor text to limit the full descriptor to 22 characters. - * For more information about statement descriptors and their requirements, see the - * Merchant Configuration settings documentation. - */ - public Builder setDescriptor(String descriptor) { - this.descriptor = descriptor; - return this; - } + /** Description of the purpose of the stored funds. */ + public Builder setPurposeOfFundsDescription(String purposeOfFundsDescription) { + this.purposeOfFundsDescription = purposeOfFundsDescription; + 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 - * AccountCreateParams.Configuration.Merchant.StatementDescriptor#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; - } + /** Details of the regulated activity if the business participates in one. */ + public Builder setRegulatedActivity( + AccountCreateParams.Configuration.Storer.RegulatedActivity regulatedActivity) { + this.regulatedActivity = regulatedActivity; + 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 - * AccountCreateParams.Configuration.Merchant.StatementDescriptor#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 source of funds for the business, e.g. profits, income, venture capital, etc. */ + public Builder setSourceOfFunds( + AccountCreateParams.Configuration.Storer.SourceOfFunds sourceOfFunds) { + this.sourceOfFunds = sourceOfFunds; + return this; + } - /** - * Default text that appears on statements for card charges outside of Japan, prefixing - * any dynamic statement_descriptor_suffix specified on the charge. To maximize space for - * the dynamic part of the descriptor, keep this text short. If you don’t specify this - * value, statement_descriptor is used as the prefix. For more information about statement - * descriptors and their requirements, see the Merchant Configuration settings - * documentation. - */ - public Builder setPrefix(String prefix) { - this.prefix = prefix; - return this; - } + /** Description of the source of funds for the business' account. */ + public Builder setSourceOfFundsDescription(String sourceOfFundsDescription) { + this.sourceOfFundsDescription = sourceOfFundsDescription; + return this; } } @Getter @EqualsAndHashCode(callSuper = false) - public static class Support { - /** A publicly available mailing address for sending support issues to. */ - @SerializedName("address") - Address address; - - /** A publicly available email address for sending support issues to. */ - @SerializedName("email") - String email; + public static class Capabilities { + /** Can provision a consumer financial account on Stripe. */ + @SerializedName("consumer") + Consumer consumer; /** * Map of extra parameters for custom features not available in this client library. The @@ -9811,25 +22726,41 @@ public static class Support { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** A publicly available phone number to call with support issues. */ - @SerializedName("phone") - String phone; + /** Can provision a financial address to credit/debit a FinancialAccount. */ + @SerializedName("financial_addresses") + FinancialAddresses financialAddresses; - /** A publicly available website for handling support issues. */ - @SerializedName("url") - String url; + /** Can hold storage-type funds on Stripe. */ + @SerializedName("holds_currencies") + HoldsCurrencies holdsCurrencies; - private Support( - Address address, - String email, + /** Can pull funds from an external source, owned by yourself, to a FinancialAccount. */ + @SerializedName("inbound_transfers") + InboundTransfers inboundTransfers; + + /** Can send funds from a FinancialAccount to a destination owned by someone else. */ + @SerializedName("outbound_payments") + OutboundPayments outboundPayments; + + /** Can send funds from a FinancialAccount to a destination owned by yourself. */ + @SerializedName("outbound_transfers") + OutboundTransfers outboundTransfers; + + private Capabilities( + Consumer consumer, Map extraParams, - String phone, - String url) { - this.address = address; - this.email = email; + FinancialAddresses financialAddresses, + HoldsCurrencies holdsCurrencies, + InboundTransfers inboundTransfers, + OutboundPayments outboundPayments, + OutboundTransfers outboundTransfers) { + this.consumer = consumer; this.extraParams = extraParams; - this.phone = phone; - this.url = url; + this.financialAddresses = financialAddresses; + this.holdsCurrencies = holdsCurrencies; + this.inboundTransfers = inboundTransfers; + this.outboundPayments = outboundPayments; + this.outboundTransfers = outboundTransfers; } public static Builder builder() { @@ -9837,40 +22768,44 @@ public static Builder builder() { } public static class Builder { - private Address address; - - private String email; + private Consumer consumer; private Map extraParams; - private String phone; + private FinancialAddresses financialAddresses; - private String url; + private HoldsCurrencies holdsCurrencies; - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Merchant.Support build() { - return new AccountCreateParams.Configuration.Merchant.Support( - this.address, this.email, this.extraParams, this.phone, this.url); - } + private InboundTransfers inboundTransfers; - /** A publicly available mailing address for sending support issues to. */ - public Builder setAddress( - AccountCreateParams.Configuration.Merchant.Support.Address address) { - this.address = address; - return this; + private OutboundPayments outboundPayments; + + private OutboundTransfers outboundTransfers; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Storer.Capabilities build() { + return new AccountCreateParams.Configuration.Storer.Capabilities( + this.consumer, + this.extraParams, + this.financialAddresses, + this.holdsCurrencies, + this.inboundTransfers, + this.outboundPayments, + this.outboundTransfers); } - /** A publicly available email address for sending support issues to. */ - public Builder setEmail(String email) { - this.email = email; + /** Can provision a consumer financial account on Stripe. */ + public Builder setConsumer( + AccountCreateParams.Configuration.Storer.Capabilities.Consumer consumer) { + this.consumer = consumer; 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 AccountCreateParams.Configuration.Merchant.Support#extraParams} for the - * field documentation. + * map. See {@link AccountCreateParams.Configuration.Storer.Capabilities#extraParams} for + * the field documentation. */ public Builder putExtraParam(String key, Object value) { if (this.extraParams == null) { @@ -9883,8 +22818,8 @@ public Builder putExtraParam(String key, Object value) { /** * 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 AccountCreateParams.Configuration.Merchant.Support#extraParams} for the - * field documentation. + * map. See {@link AccountCreateParams.Configuration.Storer.Capabilities#extraParams} for + * the field documentation. */ public Builder putAllExtraParam(Map map) { if (this.extraParams == null) { @@ -9894,33 +22829,50 @@ public Builder putAllExtraParam(Map map) { return this; } - /** A publicly available phone number to call with support issues. */ - public Builder setPhone(String phone) { - this.phone = phone; + /** Can provision a financial address to credit/debit a FinancialAccount. */ + public Builder setFinancialAddresses( + AccountCreateParams.Configuration.Storer.Capabilities.FinancialAddresses + financialAddresses) { + this.financialAddresses = financialAddresses; return this; } - /** A publicly available website for handling support issues. */ - public Builder setUrl(String url) { - this.url = url; + /** Can hold storage-type funds on Stripe. */ + public Builder setHoldsCurrencies( + AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies + holdsCurrencies) { + this.holdsCurrencies = holdsCurrencies; + return this; + } + + /** Can pull funds from an external source, owned by yourself, to a FinancialAccount. */ + public Builder setInboundTransfers( + AccountCreateParams.Configuration.Storer.Capabilities.InboundTransfers + inboundTransfers) { + this.inboundTransfers = inboundTransfers; + return this; + } + + /** Can send funds from a FinancialAccount to a destination owned by someone else. */ + public Builder setOutboundPayments( + AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments + outboundPayments) { + this.outboundPayments = outboundPayments; + return this; + } + + /** Can send funds from a FinancialAccount to a destination owned by yourself. */ + public Builder setOutboundTransfers( + AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers + outboundTransfers) { + this.outboundTransfers = outboundTransfers; return this; } } @Getter @EqualsAndHashCode(callSuper = false) - public static class Address { - /** City, district, suburb, town, or village. */ - @SerializedName("city") - String city; - - /** - * Required. Two-letter country code (ISO 3166-1 alpha-2). - */ - @SerializedName("country") - String country; - + public static class Consumer { /** * 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. @@ -9931,43 +22883,13 @@ public static class Address { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** Address line 1 (e.g., street, PO Box, or company name). */ - @SerializedName("line1") - String line1; - - /** Address line 2 (e.g., apartment, suite, unit, or building). */ - @SerializedName("line2") - String line2; - - /** ZIP or postal code. */ - @SerializedName("postal_code") - String postalCode; - - /** State, county, province, or region. */ - @SerializedName("state") - String state; - - /** Town or district. */ - @SerializedName("town") - String town; + /** Can hold storage-type funds on Stripe in a consumer financial account. */ + @SerializedName("holds_currencies") + HoldsCurrencies holdsCurrencies; - private Address( - String city, - String country, - Map extraParams, - String line1, - String line2, - String postalCode, - String state, - String town) { - this.city = city; - this.country = country; + private Consumer(Map extraParams, HoldsCurrencies holdsCurrencies) { this.extraParams = extraParams; - this.line1 = line1; - this.line2 = line2; - this.postalCode = postalCode; - this.state = state; - this.town = town; + this.holdsCurrencies = holdsCurrencies; } public static Builder builder() { @@ -9975,56 +22897,22 @@ public static Builder builder() { } public static class Builder { - private String city; - - private String country; - private Map extraParams; - private String line1; - - private String line2; - - private String postalCode; - - private String state; - - private String town; + private HoldsCurrencies holdsCurrencies; /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Merchant.Support.Address build() { - return new AccountCreateParams.Configuration.Merchant.Support.Address( - this.city, - this.country, - this.extraParams, - this.line1, - this.line2, - this.postalCode, - this.state, - this.town); - } - - /** City, district, suburb, town, or village. */ - public Builder setCity(String city) { - this.city = city; - return this; - } - - /** - * Required. Two-letter country code (ISO 3166-1 alpha-2). - */ - public Builder setCountry(String country) { - this.country = country; - return this; + public AccountCreateParams.Configuration.Storer.Capabilities.Consumer build() { + return new AccountCreateParams.Configuration.Storer.Capabilities.Consumer( + this.extraParams, this.holdsCurrencies); } /** * 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 - * AccountCreateParams.Configuration.Merchant.Support.Address#extraParams} for the field - * documentation. + * AccountCreateParams.Configuration.Storer.Capabilities.Consumer#extraParams} for the + * field documentation. */ public Builder putExtraParam(String key, Object value) { if (this.extraParams == null) { @@ -10038,8 +22926,8 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountCreateParams.Configuration.Merchant.Support.Address#extraParams} for the field - * documentation. + * AccountCreateParams.Configuration.Storer.Capabilities.Consumer#extraParams} for the + * field documentation. */ public Builder putAllExtraParam(Map map) { if (this.extraParams == null) { @@ -10049,261 +22937,370 @@ public Builder putAllExtraParam(Map map) { return this; } - /** Address line 1 (e.g., street, PO Box, or company name). */ - public Builder setLine1(String line1) { - this.line1 = line1; + /** Can hold storage-type funds on Stripe in a consumer financial account. */ + public Builder setHoldsCurrencies( + AccountCreateParams.Configuration.Storer.Capabilities.Consumer.HoldsCurrencies + holdsCurrencies) { + this.holdsCurrencies = holdsCurrencies; return this; } + } - /** Address line 2 (e.g., apartment, suite, unit, or building). */ - public Builder setLine2(String line2) { - this.line2 = line2; - return this; - } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class HoldsCurrencies { + /** + * 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; - /** ZIP or postal code. */ - public Builder setPostalCode(String postalCode) { - this.postalCode = postalCode; - return this; + /** Can hold storage-type funds on Stripe in USD in a consumer financial account. */ + @SerializedName("usd") + Usd usd; + + private HoldsCurrencies(Map extraParams, Usd usd) { + this.extraParams = extraParams; + this.usd = usd; } - /** State, county, province, or region. */ - public Builder setState(String state) { - this.state = state; - return this; + public static Builder builder() { + return new Builder(); } - /** Town or district. */ - public Builder setTown(String town) { - this.town = town; - return this; + public static class Builder { + private Map extraParams; + + private Usd usd; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Storer.Capabilities.Consumer.HoldsCurrencies + build() { + return new AccountCreateParams.Configuration.Storer.Capabilities.Consumer + .HoldsCurrencies(this.extraParams, this.usd); + } + + /** + * 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 + * AccountCreateParams.Configuration.Storer.Capabilities.Consumer.HoldsCurrencies#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 + * AccountCreateParams.Configuration.Storer.Capabilities.Consumer.HoldsCurrencies#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Can hold storage-type funds on Stripe in USD in a consumer financial account. */ + public Builder setUsd( + AccountCreateParams.Configuration.Storer.Capabilities.Consumer.HoldsCurrencies.Usd + usd) { + this.usd = usd; + return this; + } } - } - } - } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class Recipient { - /** Capabilities to be requested on the Recipient Configuration. */ - @SerializedName("capabilities") - Capabilities capabilities; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Usd { + /** + * 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; - /** - * 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; + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + @SerializedName("protections") + Protections protections; - private Recipient(Capabilities capabilities, Map extraParams) { - this.capabilities = capabilities; - this.extraParams = extraParams; - } + /** + * Required. To request a new Capability for an account, pass true. + * There can be a delay before the requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; - public static Builder builder() { - return new Builder(); - } + private Usd( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } - public static class Builder { - private Capabilities capabilities; + public static Builder builder() { + return new Builder(); + } - private Map extraParams; + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Storer.Capabilities.Consumer + .HoldsCurrencies.Usd + build() { + return new AccountCreateParams.Configuration.Storer.Capabilities.Consumer + .HoldsCurrencies.Usd(this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Storer.Capabilities.Consumer.HoldsCurrencies.Usd#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; + } - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Recipient build() { - return new AccountCreateParams.Configuration.Recipient( - this.capabilities, this.extraParams); - } + /** + * 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 + * AccountCreateParams.Configuration.Storer.Capabilities.Consumer.HoldsCurrencies.Usd#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - /** Capabilities to be requested on the Recipient Configuration. */ - public Builder setCapabilities( - AccountCreateParams.Configuration.Recipient.Capabilities capabilities) { - this.capabilities = capabilities; - return this; - } + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountCreateParams.Configuration.Storer.Capabilities.Consumer.HoldsCurrencies + .Usd.Protections + protections) { + this.protections = protections; + 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 AccountCreateParams.Configuration.Recipient#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; - } + /** + * Required. To request a new Capability for an account, pass true. + * There can be a delay before the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + 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 AccountCreateParams.Configuration.Recipient#extraParams} for the field - * documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); - } - this.extraParams.putAll(map); - return this; - } - } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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; - @Getter - @EqualsAndHashCode(callSuper = false) - public static class Capabilities { - /** Capabilities that enable OutboundPayments to a bank account linked to this Account. */ - @SerializedName("bank_accounts") - BankAccounts bankAccounts; + /** Required. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - /** Capabilities that enable OutboundPayments to a card linked to this Account. */ - @SerializedName("cards") - Cards cards; + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - /** Capabilities that enable OutboundPayments to a crypto wallet linked to this Account. */ - @SerializedName("crypto_wallets") - CryptoWallets cryptoWallets; + public static Builder builder() { + return new Builder(); + } - /** - * 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; + public static class Builder { + private Map extraParams; - /** Capabilities that enable OutboundPayments via paper check. */ - @SerializedName("paper_checks") - PaperChecks paperChecks; + private PspMigration pspMigration; - /** Capabilities that enable the recipient to manage their Stripe Balance (/v1/balance). */ - @SerializedName("stripe_balance") - StripeBalance stripeBalance; + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Storer.Capabilities.Consumer + .HoldsCurrencies.Usd.Protections + build() { + return new AccountCreateParams.Configuration.Storer.Capabilities.Consumer + .HoldsCurrencies.Usd.Protections(this.extraParams, this.pspMigration); + } - private Capabilities( - BankAccounts bankAccounts, - Cards cards, - CryptoWallets cryptoWallets, - Map extraParams, - PaperChecks paperChecks, - StripeBalance stripeBalance) { - this.bankAccounts = bankAccounts; - this.cards = cards; - this.cryptoWallets = cryptoWallets; - this.extraParams = extraParams; - this.paperChecks = paperChecks; - this.stripeBalance = stripeBalance; - } + /** + * 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 + * AccountCreateParams.Configuration.Storer.Capabilities.Consumer.HoldsCurrencies.Usd.Protections#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; + } - public static Builder builder() { - return new Builder(); - } + /** + * 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 + * AccountCreateParams.Configuration.Storer.Capabilities.Consumer.HoldsCurrencies.Usd.Protections#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - public static class Builder { - private BankAccounts bankAccounts; + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Storer.Capabilities.Consumer.HoldsCurrencies + .Usd.Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } - private Cards cards; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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; - private CryptoWallets cryptoWallets; + /** Required. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; - private Map extraParams; + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } - private PaperChecks paperChecks; + public static Builder builder() { + return new Builder(); + } - private StripeBalance stripeBalance; + public static class Builder { + private Map extraParams; - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Recipient.Capabilities build() { - return new AccountCreateParams.Configuration.Recipient.Capabilities( - this.bankAccounts, - this.cards, - this.cryptoWallets, - this.extraParams, - this.paperChecks, - this.stripeBalance); - } + private Boolean requested; - /** Capabilities that enable OutboundPayments to a bank account linked to this Account. */ - public Builder setBankAccounts( - AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts bankAccounts) { - this.bankAccounts = bankAccounts; - return this; - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Storer.Capabilities.Consumer + .HoldsCurrencies.Usd.Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Storer.Capabilities.Consumer + .HoldsCurrencies.Usd.Protections.PspMigration( + this.extraParams, this.requested); + } - /** Capabilities that enable OutboundPayments to a card linked to this Account. */ - public Builder setCards( - AccountCreateParams.Configuration.Recipient.Capabilities.Cards cards) { - this.cards = cards; - 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 + * AccountCreateParams.Configuration.Storer.Capabilities.Consumer.HoldsCurrencies.Usd.Protections.PspMigration#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; + } - /** - * Capabilities that enable OutboundPayments to a crypto wallet linked to this Account. - */ - public Builder setCryptoWallets( - AccountCreateParams.Configuration.Recipient.Capabilities.CryptoWallets - cryptoWallets) { - this.cryptoWallets = cryptoWallets; - 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 + * AccountCreateParams.Configuration.Storer.Capabilities.Consumer.HoldsCurrencies.Usd.Protections.PspMigration#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 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 AccountCreateParams.Configuration.Recipient.Capabilities#extraParams} - * for the field documentation. - */ - public Builder putExtraParam(String key, Object value) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** Required. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } } - this.extraParams.put(key, value); - return this; } + } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class FinancialAddresses { /** - * 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 AccountCreateParams.Configuration.Recipient.Capabilities#extraParams} - * for the field documentation. + * Can provision a bank-account-like financial address (VBAN) to credit/debit a + * FinancialAccount. */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); - } - this.extraParams.putAll(map); - return this; - } - - /** Capabilities that enable OutboundPayments via paper check. */ - public Builder setPaperChecks( - AccountCreateParams.Configuration.Recipient.Capabilities.PaperChecks paperChecks) { - this.paperChecks = paperChecks; - return this; - } + @SerializedName("bank_accounts") + BankAccounts bankAccounts; - /** - * Capabilities that enable the recipient to manage their Stripe Balance (/v1/balance). - */ - public Builder setStripeBalance( - AccountCreateParams.Configuration.Recipient.Capabilities.StripeBalance - stripeBalance) { - this.stripeBalance = stripeBalance; - return this; - } - } + /** Can provision a crypto wallet like financial address to credit a FinancialAccount. */ + @SerializedName("crypto_wallets") + CryptoWallets cryptoWallets; - @Getter - @EqualsAndHashCode(callSuper = false) - public static class BankAccounts { /** * 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. @@ -10314,37 +23311,13 @@ public static class BankAccounts { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** - * Enables this Account to receive OutboundPayments to linked bank accounts over real time - * rails. - */ - @SerializedName("instant") - com.stripe.param.v2.core.AccountCreateParams.Configuration.Recipient.Capabilities - .BankAccounts.Instant - instant; - - /** - * Enables this Account to receive OutboundPayments to linked bank accounts over local - * networks. - */ - @SerializedName("local") - Local local; - - /** Enables this Account to receive OutboundPayments to linked bank accounts over wire. */ - @SerializedName("wire") - Wire wire; - - private BankAccounts( - Map extraParams, - com.stripe.param.v2.core.AccountCreateParams.Configuration.Recipient.Capabilities - .BankAccounts.Instant - instant, - Local local, - Wire wire) { + private FinancialAddresses( + BankAccounts bankAccounts, + CryptoWallets cryptoWallets, + Map extraParams) { + this.bankAccounts = bankAccounts; + this.cryptoWallets = cryptoWallets; this.extraParams = extraParams; - this.instant = instant; - this.local = local; - this.wire = wire; } public static Builder builder() { @@ -10352,168 +23325,76 @@ public static Builder builder() { } public static class Builder { - private Map extraParams; - - private com.stripe.param.v2.core.AccountCreateParams.Configuration.Recipient - .Capabilities.BankAccounts.Instant - instant; + private BankAccounts bankAccounts; - private Local local; + private CryptoWallets cryptoWallets; - private Wire wire; + private Map extraParams; /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts build() { - return new AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts( - this.extraParams, this.instant, this.local, this.wire); - } - - /** - * 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 - * AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts#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 - * AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); - } - this.extraParams.putAll(map); - return this; - } - - /** - * Enables this Account to receive OutboundPayments to linked bank accounts over real - * time rails. - */ - public Builder setInstant( - AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts.Instant - instant) { - this.instant = instant; - return this; + public AccountCreateParams.Configuration.Storer.Capabilities.FinancialAddresses + build() { + return new AccountCreateParams.Configuration.Storer.Capabilities.FinancialAddresses( + this.bankAccounts, this.cryptoWallets, this.extraParams); } /** - * Enables this Account to receive OutboundPayments to linked bank accounts over local - * networks. + * Can provision a bank-account-like financial address (VBAN) to credit/debit a + * FinancialAccount. */ - public Builder setLocal( - AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts.Local local) { - this.local = local; + public Builder setBankAccounts( + AccountCreateParams.Configuration.Storer.Capabilities.FinancialAddresses + .BankAccounts + bankAccounts) { + this.bankAccounts = bankAccounts; return this; } /** - * Enables this Account to receive OutboundPayments to linked bank accounts over wire. + * Can provision a crypto wallet like financial address to credit a FinancialAccount. */ - public Builder setWire( - AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts.Wire wire) { - this.wire = wire; + public Builder setCryptoWallets( + AccountCreateParams.Configuration.Storer.Capabilities.FinancialAddresses + .CryptoWallets + cryptoWallets) { + this.cryptoWallets = cryptoWallets; return this; } - } - - @Getter - @EqualsAndHashCode(callSuper = false) - public static class Instant { - /** - * 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. To request a new Capability for an account, pass true. - * There can be a delay before the requested Capability becomes active. + * 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 + * AccountCreateParams.Configuration.Storer.Capabilities.FinancialAddresses#extraParams} + * for the field documentation. */ - @SerializedName("requested") - Boolean requested; - - private Instant(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } - - public static Builder builder() { - return new Builder(); - } - - public static class Builder { - private Map extraParams; - - private Boolean requested; - - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts.Instant - build() { - return new AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts - .Instant(this.extraParams, this.requested); - } - - /** - * 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 - * AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts.Instant#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 - * AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts.Instant#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); - } - this.extraParams.putAll(map); - return this; + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); } - - /** - * Required. To request a new Capability for an account, pass true. - * There can be a delay before the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; + 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 + * AccountCreateParams.Configuration.Storer.Capabilities.FinancialAddresses#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); } + this.extraParams.putAll(map); + return this; } } @Getter @EqualsAndHashCode(callSuper = false) - public static class Local { + public static class BankAccounts { /** * 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} @@ -10524,6 +23405,10 @@ public static class Local { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + /** * Required. To request a new Capability for an account, pass true. * There can be a delay before the requested Capability becomes active. @@ -10531,8 +23416,10 @@ public static class Local { @SerializedName("requested") Boolean requested; - private Local(Map extraParams, Boolean requested) { + private BankAccounts( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -10543,20 +23430,23 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts.Local + public AccountCreateParams.Configuration.Storer.Capabilities.FinancialAddresses + .BankAccounts build() { - return new AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts - .Local(this.extraParams, this.requested); + return new AccountCreateParams.Configuration.Storer.Capabilities.FinancialAddresses + .BankAccounts(this.extraParams, this.protections, this.requested); } /** * 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 - * AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts.Local#extraParams} + * AccountCreateParams.Configuration.Storer.Capabilities.FinancialAddresses.BankAccounts#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -10571,7 +23461,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts.Local#extraParams} + * AccountCreateParams.Configuration.Storer.Capabilities.FinancialAddresses.BankAccounts#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -10582,6 +23472,17 @@ public Builder putAllExtraParam(Map map) { return this; } + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountCreateParams.Configuration.Storer.Capabilities.FinancialAddresses + .BankAccounts.Protections + protections) { + this.protections = protections; + return this; + } + /** * Required. To request a new Capability for an account, pass true. * There can be a delay before the requested Capability becomes active. @@ -10591,11 +23492,170 @@ public Builder setRequested(Boolean requested) { return this; } } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Storer.Capabilities.FinancialAddresses + .BankAccounts.Protections + build() { + return new AccountCreateParams.Configuration.Storer.Capabilities + .FinancialAddresses.BankAccounts.Protections( + this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountCreateParams.Configuration.Storer.Capabilities.FinancialAddresses.BankAccounts.Protections#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 + * AccountCreateParams.Configuration.Storer.Capabilities.FinancialAddresses.BankAccounts.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Storer.Capabilities.FinancialAddresses + .BankAccounts.Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Storer.Capabilities.FinancialAddresses + .BankAccounts.Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Storer.Capabilities + .FinancialAddresses.BankAccounts.Protections.PspMigration( + this.extraParams, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Storer.Capabilities.FinancialAddresses.BankAccounts.Protections.PspMigration#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 + * AccountCreateParams.Configuration.Storer.Capabilities.FinancialAddresses.BankAccounts.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } } @Getter @EqualsAndHashCode(callSuper = false) - public static class Wire { + public static class CryptoWallets { /** * 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} @@ -10606,6 +23666,10 @@ public static class Wire { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + /** * Required. To request a new Capability for an account, pass true. * There can be a delay before the requested Capability becomes active. @@ -10613,8 +23677,10 @@ public static class Wire { @SerializedName("requested") Boolean requested; - private Wire(Map extraParams, Boolean requested) { + private CryptoWallets( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -10625,20 +23691,23 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts.Wire + public AccountCreateParams.Configuration.Storer.Capabilities.FinancialAddresses + .CryptoWallets build() { - return new AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts - .Wire(this.extraParams, this.requested); + return new AccountCreateParams.Configuration.Storer.Capabilities.FinancialAddresses + .CryptoWallets(this.extraParams, this.protections, this.requested); } /** * 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 - * AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts.Wire#extraParams} + * AccountCreateParams.Configuration.Storer.Capabilities.FinancialAddresses.CryptoWallets#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -10653,7 +23722,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountCreateParams.Configuration.Recipient.Capabilities.BankAccounts.Wire#extraParams} + * AccountCreateParams.Configuration.Storer.Capabilities.FinancialAddresses.CryptoWallets#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -10664,6 +23733,17 @@ public Builder putAllExtraParam(Map map) { return this; } + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountCreateParams.Configuration.Storer.Capabilities.FinancialAddresses + .CryptoWallets.Protections + protections) { + this.protections = protections; + return this; + } + /** * Required. To request a new Capability for an account, pass true. * There can be a delay before the requested Capability becomes active. @@ -10673,255 +23753,175 @@ public Builder setRequested(Boolean requested) { return this; } } - } - } - - @Getter - @EqualsAndHashCode(callSuper = false) - public static class Cards { - /** - * 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. To request a new Capability for an account, pass true. There - * can be a delay before the requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; - - private Cards(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } - - public static Builder builder() { - return new Builder(); - } - - public static class Builder { - private Map extraParams; - - private Boolean requested; - - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Recipient.Capabilities.Cards build() { - return new AccountCreateParams.Configuration.Recipient.Capabilities.Cards( - this.extraParams, this.requested); - } - - /** - * 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 - * AccountCreateParams.Configuration.Recipient.Capabilities.Cards#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 - * AccountCreateParams.Configuration.Recipient.Capabilities.Cards#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. To request a new Capability for an account, pass true. - * There can be a delay before the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; - } - } - } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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; - @Getter - @EqualsAndHashCode(callSuper = false) - public static class CryptoWallets { - /** - * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - /** - * Required. To request a new Capability for an account, pass true. There - * can be a delay before the requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - private CryptoWallets(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + public static Builder builder() { + return new Builder(); + } - public static Builder builder() { - return new Builder(); - } + public static class Builder { + private Map extraParams; - public static class Builder { - private Map extraParams; + private PspMigration pspMigration; - private Boolean requested; + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Storer.Capabilities.FinancialAddresses + .CryptoWallets.Protections + build() { + return new AccountCreateParams.Configuration.Storer.Capabilities + .FinancialAddresses.CryptoWallets.Protections( + this.extraParams, this.pspMigration); + } - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Recipient.Capabilities.CryptoWallets build() { - return new AccountCreateParams.Configuration.Recipient.Capabilities.CryptoWallets( - this.extraParams, this.requested); - } + /** + * 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 + * AccountCreateParams.Configuration.Storer.Capabilities.FinancialAddresses.CryptoWallets.Protections#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 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 - * AccountCreateParams.Configuration.Recipient.Capabilities.CryptoWallets#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 + * AccountCreateParams.Configuration.Storer.Capabilities.FinancialAddresses.CryptoWallets.Protections#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 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 - * AccountCreateParams.Configuration.Recipient.Capabilities.CryptoWallets#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Storer.Capabilities.FinancialAddresses + .CryptoWallets.Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } } - this.extraParams.putAll(map); - return this; - } - /** - * Required. To request a new Capability for an account, pass true. - * There can be a delay before the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; - } - } - } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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; - @Getter - @EqualsAndHashCode(callSuper = false) - public static class PaperChecks { - /** - * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; - /** - * Required. To request a new Capability for an account, pass true. There - * can be a delay before the requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } - private PaperChecks(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + public static Builder builder() { + return new Builder(); + } - public static Builder builder() { - return new Builder(); - } + public static class Builder { + private Map extraParams; - public static class Builder { - private Map extraParams; + private Boolean requested; - private Boolean requested; + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Storer.Capabilities.FinancialAddresses + .CryptoWallets.Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Storer.Capabilities + .FinancialAddresses.CryptoWallets.Protections.PspMigration( + this.extraParams, this.requested); + } - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Recipient.Capabilities.PaperChecks build() { - return new AccountCreateParams.Configuration.Recipient.Capabilities.PaperChecks( - this.extraParams, this.requested); - } + /** + * 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 + * AccountCreateParams.Configuration.Storer.Capabilities.FinancialAddresses.CryptoWallets.Protections.PspMigration#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 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 - * AccountCreateParams.Configuration.Recipient.Capabilities.PaperChecks#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 + * AccountCreateParams.Configuration.Storer.Capabilities.FinancialAddresses.CryptoWallets.Protections.PspMigration#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 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 - * AccountCreateParams.Configuration.Recipient.Capabilities.PaperChecks#extraParams} for - * the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** Required. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } } - this.extraParams.putAll(map); - return this; - } - - /** - * Required. To request a new Capability for an account, pass true. - * There can be a delay before the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; } } } @Getter @EqualsAndHashCode(callSuper = false) - public static class StripeBalance { + public static class HoldsCurrencies { + /** Can hold storage-type funds on Stripe in EUR. */ + @SerializedName("eur") + Eur eur; + /** * 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. @@ -10932,15 +23932,25 @@ public static class StripeBalance { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** - * Enables this Account to receive /v1/transfers into their Stripe Balance (/v1/balance). - */ - @SerializedName("stripe_transfers") - StripeTransfers stripeTransfers; + /** Can hold storage-type funds on Stripe in GBP. */ + @SerializedName("gbp") + Gbp gbp; - private StripeBalance(Map extraParams, StripeTransfers stripeTransfers) { + /** Can hold storage-type funds on Stripe in USD. */ + @SerializedName("usd") + Usd usd; + + /** Can hold storage-type funds on Stripe in USDC. */ + @SerializedName("usdc") + Usdc usdc; + + private HoldsCurrencies( + Eur eur, Map extraParams, Gbp gbp, Usd usd, Usdc usdc) { + this.eur = eur; this.extraParams = extraParams; - this.stripeTransfers = stripeTransfers; + this.gbp = gbp; + this.usd = usd; + this.usdc = usdc; } public static Builder builder() { @@ -10948,21 +23958,34 @@ public static Builder builder() { } public static class Builder { + private Eur eur; + private Map extraParams; - private StripeTransfers stripeTransfers; + private Gbp gbp; + + private Usd usd; + + private Usdc usdc; /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Recipient.Capabilities.StripeBalance build() { - return new AccountCreateParams.Configuration.Recipient.Capabilities.StripeBalance( - this.extraParams, this.stripeTransfers); + public AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies build() { + return new AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies( + this.eur, this.extraParams, this.gbp, this.usd, this.usdc); + } + + /** Can hold storage-type funds on Stripe in EUR. */ + public Builder setEur( + AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Eur eur) { + this.eur = eur; + 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 - * AccountCreateParams.Configuration.Recipient.Capabilities.StripeBalance#extraParams} + * AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -10977,7 +24000,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountCreateParams.Configuration.Recipient.Capabilities.StripeBalance#extraParams} + * AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -10988,22 +24011,289 @@ public Builder putAllExtraParam(Map map) { return this; } + /** Can hold storage-type funds on Stripe in GBP. */ + public Builder setGbp( + AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Gbp gbp) { + this.gbp = gbp; + return this; + } + + /** Can hold storage-type funds on Stripe in USD. */ + public Builder setUsd( + AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usd usd) { + this.usd = usd; + return this; + } + + /** Can hold storage-type funds on Stripe in USDC. */ + public Builder setUsdc( + AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usdc usdc) { + this.usdc = usdc; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Eur { /** - * Enables this Account to receive /v1/transfers into their Stripe Balance - * (/v1/balance). + * 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. */ - public Builder setStripeTransfers( - AccountCreateParams.Configuration.Recipient.Capabilities.StripeBalance - .StripeTransfers - stripeTransfers) { - this.stripeTransfers = stripeTransfers; - return this; + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * Required. To request a new Capability for an account, pass true. + * There can be a delay before the requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private Eur( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Eur + build() { + return new AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies + .Eur(this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Eur#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 + * AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Eur#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Eur + .Protections + protections) { + this.protections = protections; + return this; + } + + /** + * Required. To request a new Capability for an account, pass true. + * There can be a delay before the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Eur + .Protections + build() { + return new AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies + .Eur.Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Eur.Protections#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 + * AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Eur.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Eur + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Eur + .Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies + .Eur.Protections.PspMigration(this.extraParams, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Eur.Protections.PspMigration#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 + * AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Eur.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } } } @Getter @EqualsAndHashCode(callSuper = false) - public static class StripeTransfers { + public static class Gbp { /** * 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} @@ -11014,6 +24304,10 @@ public static class StripeTransfers { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + /** * Required. To request a new Capability for an account, pass true. * There can be a delay before the requested Capability becomes active. @@ -11021,8 +24315,10 @@ public static class StripeTransfers { @SerializedName("requested") Boolean requested; - private StripeTransfers(Map extraParams, Boolean requested) { + private Gbp( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -11033,21 +24329,22 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Recipient.Capabilities.StripeBalance - .StripeTransfers + public AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Gbp build() { - return new AccountCreateParams.Configuration.Recipient.Capabilities.StripeBalance - .StripeTransfers(this.extraParams, this.requested); + return new AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies + .Gbp(this.extraParams, this.protections, this.requested); } /** * 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 - * AccountCreateParams.Configuration.Recipient.Capabilities.StripeBalance.StripeTransfers#extraParams} + * AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Gbp#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -11062,7 +24359,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountCreateParams.Configuration.Recipient.Capabilities.StripeBalance.StripeTransfers#extraParams} + * AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Gbp#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -11073,6 +24370,17 @@ public Builder putAllExtraParam(Map map) { return this; } + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Gbp + .Protections + protections) { + this.protections = protections; + return this; + } + /** * Required. To request a new Capability for an account, pass true. * There can be a delay before the requested Capability becomes active. @@ -11082,427 +24390,691 @@ public Builder setRequested(Boolean requested) { return this; } } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Gbp + .Protections + build() { + return new AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies + .Gbp.Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Gbp.Protections#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 + * AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Gbp.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Gbp + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Gbp + .Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies + .Gbp.Protections.PspMigration(this.extraParams, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Gbp.Protections.PspMigration#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 + * AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Gbp.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } } - } - } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class Storer { - /** Capabilities to request on the Storer Configuration. */ - @SerializedName("capabilities") - Capabilities capabilities; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Usd { + /** + * 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; - /** - * 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; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; - /** List of high-risk activities the business is involved in. */ - @SerializedName("high_risk_activities") - List highRiskActivities; + /** + * Required. To request a new Capability for an account, pass true. + * There can be a delay before the requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; - /** Description of the high-risk activities the business offers. */ - @SerializedName("high_risk_activities_description") - String highRiskActivitiesDescription; + private Usd( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } - /** Description of the money services offered by the business. */ - @SerializedName("money_services_description") - String moneyServicesDescription; + public static Builder builder() { + return new Builder(); + } - /** Indicates whether the business operates in any prohibited countries. */ - @SerializedName("operates_in_prohibited_countries") - Boolean operatesInProhibitedCountries; + public static class Builder { + private Map extraParams; - /** Indicates whether the business participates in any regulated activity. */ - @SerializedName("participates_in_regulated_activity") - Boolean participatesInRegulatedActivity; + private Protections protections; - /** Primary purpose of the stored funds. */ - @SerializedName("purpose_of_funds") - PurposeOfFunds purposeOfFunds; + private Boolean requested; - /** Description of the purpose of the stored funds. */ - @SerializedName("purpose_of_funds_description") - String purposeOfFundsDescription; + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usd + build() { + return new AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies + .Usd(this.extraParams, this.protections, this.requested); + } - /** Details of the regulated activity if the business participates in one. */ - @SerializedName("regulated_activity") - RegulatedActivity regulatedActivity; + /** + * 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 + * AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usd#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; + } - /** The source of funds for the business, e.g. profits, income, venture capital, etc. */ - @SerializedName("source_of_funds") - SourceOfFunds sourceOfFunds; + /** + * 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 + * AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usd#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - /** Description of the source of funds for the business' account. */ - @SerializedName("source_of_funds_description") - String sourceOfFundsDescription; + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usd + .Protections + protections) { + this.protections = protections; + return this; + } - private Storer( - Capabilities capabilities, - Map extraParams, - List highRiskActivities, - String highRiskActivitiesDescription, - String moneyServicesDescription, - Boolean operatesInProhibitedCountries, - Boolean participatesInRegulatedActivity, - PurposeOfFunds purposeOfFunds, - String purposeOfFundsDescription, - RegulatedActivity regulatedActivity, - SourceOfFunds sourceOfFunds, - String sourceOfFundsDescription) { - this.capabilities = capabilities; - this.extraParams = extraParams; - this.highRiskActivities = highRiskActivities; - this.highRiskActivitiesDescription = highRiskActivitiesDescription; - this.moneyServicesDescription = moneyServicesDescription; - this.operatesInProhibitedCountries = operatesInProhibitedCountries; - this.participatesInRegulatedActivity = participatesInRegulatedActivity; - this.purposeOfFunds = purposeOfFunds; - this.purposeOfFundsDescription = purposeOfFundsDescription; - this.regulatedActivity = regulatedActivity; - this.sourceOfFunds = sourceOfFunds; - this.sourceOfFundsDescription = sourceOfFundsDescription; - } + /** + * Required. To request a new Capability for an account, pass true. + * There can be a delay before the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } - public static Builder builder() { - return new Builder(); - } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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; - public static class Builder { - private Capabilities capabilities; + /** Required. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - private Map extraParams; + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - private List highRiskActivities; + public static Builder builder() { + return new Builder(); + } - private String highRiskActivitiesDescription; + public static class Builder { + private Map extraParams; - private String moneyServicesDescription; + private PspMigration pspMigration; - private Boolean operatesInProhibitedCountries; + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usd + .Protections + build() { + return new AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies + .Usd.Protections(this.extraParams, this.pspMigration); + } - private Boolean participatesInRegulatedActivity; + /** + * 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 + * AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usd.Protections#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; + } - private PurposeOfFunds purposeOfFunds; + /** + * 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 + * AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usd.Protections#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - private String purposeOfFundsDescription; + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usd + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } - private RegulatedActivity regulatedActivity; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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; - private SourceOfFunds sourceOfFunds; + /** Required. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; - private String sourceOfFundsDescription; + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Storer build() { - return new AccountCreateParams.Configuration.Storer( - this.capabilities, - this.extraParams, - this.highRiskActivities, - this.highRiskActivitiesDescription, - this.moneyServicesDescription, - this.operatesInProhibitedCountries, - this.participatesInRegulatedActivity, - this.purposeOfFunds, - this.purposeOfFundsDescription, - this.regulatedActivity, - this.sourceOfFunds, - this.sourceOfFundsDescription); - } + public static Builder builder() { + return new Builder(); + } - /** Capabilities to request on the Storer Configuration. */ - public Builder setCapabilities( - AccountCreateParams.Configuration.Storer.Capabilities capabilities) { - this.capabilities = capabilities; - return this; - } + public static class Builder { + private Map extraParams; - /** - * 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 AccountCreateParams.Configuration.Storer#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; - } + private Boolean requested; - /** - * 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 AccountCreateParams.Configuration.Storer#extraParams} for the field - * documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); - } - this.extraParams.putAll(map); - return this; - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usd + .Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies + .Usd.Protections.PspMigration(this.extraParams, this.requested); + } - /** - * Add an element to `highRiskActivities` list. A list is initialized for the first - * `add/addAll` call, and subsequent calls adds additional elements to the original list. - * See {@link AccountCreateParams.Configuration.Storer#highRiskActivities} for the field - * documentation. - */ - public Builder addHighRiskActivity( - AccountCreateParams.Configuration.Storer.HighRiskActivity element) { - if (this.highRiskActivities == null) { - this.highRiskActivities = new ArrayList<>(); - } - this.highRiskActivities.add(element); - 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 + * AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usd.Protections.PspMigration#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 elements to `highRiskActivities` list. A list is initialized for the first - * `add/addAll` call, and subsequent calls adds additional elements to the original list. - * See {@link AccountCreateParams.Configuration.Storer#highRiskActivities} for the field - * documentation. - */ - public Builder addAllHighRiskActivity( - List elements) { - if (this.highRiskActivities == null) { - this.highRiskActivities = new ArrayList<>(); - } - this.highRiskActivities.addAll(elements); - 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 + * AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usd.Protections.PspMigration#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - /** Description of the high-risk activities the business offers. */ - public Builder setHighRiskActivitiesDescription(String highRiskActivitiesDescription) { - this.highRiskActivitiesDescription = highRiskActivitiesDescription; - return this; - } + /** Required. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } - /** Description of the money services offered by the business. */ - public Builder setMoneyServicesDescription(String moneyServicesDescription) { - this.moneyServicesDescription = moneyServicesDescription; - return this; - } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Usdc { + /** + * 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; - /** Indicates whether the business operates in any prohibited countries. */ - public Builder setOperatesInProhibitedCountries(Boolean operatesInProhibitedCountries) { - this.operatesInProhibitedCountries = operatesInProhibitedCountries; - return this; - } + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; - /** Indicates whether the business participates in any regulated activity. */ - public Builder setParticipatesInRegulatedActivity(Boolean participatesInRegulatedActivity) { - this.participatesInRegulatedActivity = participatesInRegulatedActivity; - return this; - } + /** + * Required. To request a new Capability for an account, pass true. + * There can be a delay before the requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; - /** Primary purpose of the stored funds. */ - public Builder setPurposeOfFunds( - AccountCreateParams.Configuration.Storer.PurposeOfFunds purposeOfFunds) { - this.purposeOfFunds = purposeOfFunds; - return this; - } + private Usdc( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } - /** Description of the purpose of the stored funds. */ - public Builder setPurposeOfFundsDescription(String purposeOfFundsDescription) { - this.purposeOfFundsDescription = purposeOfFundsDescription; - return this; - } + public static Builder builder() { + return new Builder(); + } - /** Details of the regulated activity if the business participates in one. */ - public Builder setRegulatedActivity( - AccountCreateParams.Configuration.Storer.RegulatedActivity regulatedActivity) { - this.regulatedActivity = regulatedActivity; - return this; - } + public static class Builder { + private Map extraParams; - /** The source of funds for the business, e.g. profits, income, venture capital, etc. */ - public Builder setSourceOfFunds( - AccountCreateParams.Configuration.Storer.SourceOfFunds sourceOfFunds) { - this.sourceOfFunds = sourceOfFunds; - return this; - } + private Protections protections; - /** Description of the source of funds for the business' account. */ - public Builder setSourceOfFundsDescription(String sourceOfFundsDescription) { - this.sourceOfFundsDescription = sourceOfFundsDescription; - return this; - } - } + private Boolean requested; - @Getter - @EqualsAndHashCode(callSuper = false) - public static class Capabilities { - /** Can provision a consumer financial account on Stripe. */ - @SerializedName("consumer") - Consumer consumer; + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usdc + build() { + return new AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies + .Usdc(this.extraParams, this.protections, this.requested); + } - /** - * 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; + /** + * 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 + * AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usdc#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; + } - /** Can provision a financial address to credit/debit a FinancialAccount. */ - @SerializedName("financial_addresses") - FinancialAddresses financialAddresses; + /** + * 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 + * AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usdc#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - /** Can hold storage-type funds on Stripe. */ - @SerializedName("holds_currencies") - HoldsCurrencies holdsCurrencies; + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usdc + .Protections + protections) { + this.protections = protections; + return this; + } - /** Can pull funds from an external source, owned by yourself, to a FinancialAccount. */ - @SerializedName("inbound_transfers") - InboundTransfers inboundTransfers; + /** + * Required. To request a new Capability for an account, pass true. + * There can be a delay before the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } - /** Can send funds from a FinancialAccount to a destination owned by someone else. */ - @SerializedName("outbound_payments") - OutboundPayments outboundPayments; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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; - /** Can send funds from a FinancialAccount to a destination owned by yourself. */ - @SerializedName("outbound_transfers") - OutboundTransfers outboundTransfers; + /** Required. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - private Capabilities( - Consumer consumer, - Map extraParams, - FinancialAddresses financialAddresses, - HoldsCurrencies holdsCurrencies, - InboundTransfers inboundTransfers, - OutboundPayments outboundPayments, - OutboundTransfers outboundTransfers) { - this.consumer = consumer; - this.extraParams = extraParams; - this.financialAddresses = financialAddresses; - this.holdsCurrencies = holdsCurrencies; - this.inboundTransfers = inboundTransfers; - this.outboundPayments = outboundPayments; - this.outboundTransfers = outboundTransfers; - } + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - public static Builder builder() { - return new Builder(); - } + public static Builder builder() { + return new Builder(); + } - public static class Builder { - private Consumer consumer; + public static class Builder { + private Map extraParams; - private Map extraParams; + private PspMigration pspMigration; - private FinancialAddresses financialAddresses; + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usdc + .Protections + build() { + return new AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies + .Usdc.Protections(this.extraParams, this.pspMigration); + } - private HoldsCurrencies holdsCurrencies; + /** + * 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 + * AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usdc.Protections#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; + } - private InboundTransfers inboundTransfers; + /** + * 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 + * AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usdc.Protections#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - private OutboundPayments outboundPayments; + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usdc + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } - private OutboundTransfers outboundTransfers; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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; - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Storer.Capabilities build() { - return new AccountCreateParams.Configuration.Storer.Capabilities( - this.consumer, - this.extraParams, - this.financialAddresses, - this.holdsCurrencies, - this.inboundTransfers, - this.outboundPayments, - this.outboundTransfers); - } + /** Required. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; - /** Can provision a consumer financial account on Stripe. */ - public Builder setConsumer( - AccountCreateParams.Configuration.Storer.Capabilities.Consumer consumer) { - this.consumer = consumer; - return this; - } + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } - /** - * 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 AccountCreateParams.Configuration.Storer.Capabilities#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; - } + public static Builder builder() { + return new Builder(); + } - /** - * 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 AccountCreateParams.Configuration.Storer.Capabilities#extraParams} for - * the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); - } - this.extraParams.putAll(map); - return this; - } + public static class Builder { + private Map extraParams; - /** Can provision a financial address to credit/debit a FinancialAccount. */ - public Builder setFinancialAddresses( - AccountCreateParams.Configuration.Storer.Capabilities.FinancialAddresses - financialAddresses) { - this.financialAddresses = financialAddresses; - return this; - } + private Boolean requested; - /** Can hold storage-type funds on Stripe. */ - public Builder setHoldsCurrencies( - AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies - holdsCurrencies) { - this.holdsCurrencies = holdsCurrencies; - return this; - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usdc + .Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies + .Usdc.Protections.PspMigration(this.extraParams, this.requested); + } - /** Can pull funds from an external source, owned by yourself, to a FinancialAccount. */ - public Builder setInboundTransfers( - AccountCreateParams.Configuration.Storer.Capabilities.InboundTransfers - inboundTransfers) { - this.inboundTransfers = inboundTransfers; - 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 + * AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usdc.Protections.PspMigration#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; + } - /** Can send funds from a FinancialAccount to a destination owned by someone else. */ - public Builder setOutboundPayments( - AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments - outboundPayments) { - this.outboundPayments = outboundPayments; - 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 + * AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usdc.Protections.PspMigration#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - /** Can send funds from a FinancialAccount to a destination owned by yourself. */ - public Builder setOutboundTransfers( - AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers - outboundTransfers) { - this.outboundTransfers = outboundTransfers; - return this; + /** Required. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } } } @Getter @EqualsAndHashCode(callSuper = false) - public static class Consumer { + public static class InboundTransfers { + /** + * Can pull funds from an external bank account owned by yourself to a FinancialAccount. + */ + @SerializedName("bank_accounts") + BankAccounts bankAccounts; + /** * 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. @@ -11513,13 +25085,9 @@ public static class Consumer { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** Can hold storage-type funds on Stripe in a consumer financial account. */ - @SerializedName("holds_currencies") - HoldsCurrencies holdsCurrencies; - - private Consumer(Map extraParams, HoldsCurrencies holdsCurrencies) { + private InboundTransfers(BankAccounts bankAccounts, Map extraParams) { + this.bankAccounts = bankAccounts; this.extraParams = extraParams; - this.holdsCurrencies = holdsCurrencies; } public static Builder builder() { @@ -11527,22 +25095,32 @@ public static Builder builder() { } public static class Builder { - private Map extraParams; + private BankAccounts bankAccounts; - private HoldsCurrencies holdsCurrencies; + private Map extraParams; /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Storer.Capabilities.Consumer build() { - return new AccountCreateParams.Configuration.Storer.Capabilities.Consumer( - this.extraParams, this.holdsCurrencies); + public AccountCreateParams.Configuration.Storer.Capabilities.InboundTransfers build() { + return new AccountCreateParams.Configuration.Storer.Capabilities.InboundTransfers( + this.bankAccounts, this.extraParams); + } + + /** + * Can pull funds from an external bank account owned by yourself to a FinancialAccount. + */ + public Builder setBankAccounts( + AccountCreateParams.Configuration.Storer.Capabilities.InboundTransfers.BankAccounts + bankAccounts) { + this.bankAccounts = bankAccounts; + 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 - * AccountCreateParams.Configuration.Storer.Capabilities.Consumer#extraParams} for the - * field documentation. + * AccountCreateParams.Configuration.Storer.Capabilities.InboundTransfers#extraParams} + * for the field documentation. */ public Builder putExtraParam(String key, Object value) { if (this.extraParams == null) { @@ -11556,8 +25134,8 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountCreateParams.Configuration.Storer.Capabilities.Consumer#extraParams} for the - * field documentation. + * AccountCreateParams.Configuration.Storer.Capabilities.InboundTransfers#extraParams} + * for the field documentation. */ public Builder putAllExtraParam(Map map) { if (this.extraParams == null) { @@ -11566,19 +25144,11 @@ public Builder putAllExtraParam(Map map) { this.extraParams.putAll(map); return this; } - - /** Can hold storage-type funds on Stripe in a consumer financial account. */ - public Builder setHoldsCurrencies( - AccountCreateParams.Configuration.Storer.Capabilities.Consumer.HoldsCurrencies - holdsCurrencies) { - this.holdsCurrencies = holdsCurrencies; - return this; - } } @Getter @EqualsAndHashCode(callSuper = false) - public static class HoldsCurrencies { + public static class BankAccounts { /** * 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} @@ -11589,13 +25159,22 @@ public static class HoldsCurrencies { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** Can hold storage-type funds on Stripe in USD in a consumer financial account. */ - @SerializedName("usd") - Usd usd; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; - private HoldsCurrencies(Map extraParams, Usd usd) { + /** + * Required. To request a new Capability for an account, pass true. + * There can be a delay before the requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private BankAccounts( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; - this.usd = usd; + this.protections = protections; + this.requested = requested; } public static Builder builder() { @@ -11605,20 +25184,23 @@ public static Builder builder() { public static class Builder { private Map extraParams; - private Usd usd; + private Protections protections; + + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Storer.Capabilities.Consumer.HoldsCurrencies + public AccountCreateParams.Configuration.Storer.Capabilities.InboundTransfers + .BankAccounts build() { - return new AccountCreateParams.Configuration.Storer.Capabilities.Consumer - .HoldsCurrencies(this.extraParams, this.usd); + return new AccountCreateParams.Configuration.Storer.Capabilities.InboundTransfers + .BankAccounts(this.extraParams, this.protections, this.requested); } /** * 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 - * AccountCreateParams.Configuration.Storer.Capabilities.Consumer.HoldsCurrencies#extraParams} + * AccountCreateParams.Configuration.Storer.Capabilities.InboundTransfers.BankAccounts#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -11633,7 +25215,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountCreateParams.Configuration.Storer.Capabilities.Consumer.HoldsCurrencies#extraParams} + * AccountCreateParams.Configuration.Storer.Capabilities.InboundTransfers.BankAccounts#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -11644,18 +25226,30 @@ public Builder putAllExtraParam(Map map) { return this; } - /** Can hold storage-type funds on Stripe in USD in a consumer financial account. */ - public Builder setUsd( - AccountCreateParams.Configuration.Storer.Capabilities.Consumer.HoldsCurrencies.Usd - usd) { - this.usd = usd; + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountCreateParams.Configuration.Storer.Capabilities.InboundTransfers + .BankAccounts.Protections + protections) { + this.protections = protections; + return this; + } + + /** + * Required. To request a new Capability for an account, pass true. + * There can be a delay before the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; return this; } } @Getter @EqualsAndHashCode(callSuper = false) - public static class Usd { + public static class Protections { /** * 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 @@ -11666,16 +25260,13 @@ public static class Usd { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** - * Required. To request a new Capability for an account, pass true. - * There can be a delay before the requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + /** Required. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - private Usd(Map extraParams, Boolean requested) { + private Protections(Map extraParams, PspMigration pspMigration) { this.extraParams = extraParams; - this.requested = requested; + this.pspMigration = pspMigration; } public static Builder builder() { @@ -11685,21 +25276,21 @@ public static Builder builder() { public static class Builder { private Map extraParams; - private Boolean requested; + private PspMigration pspMigration; /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Storer.Capabilities.Consumer - .HoldsCurrencies.Usd + public AccountCreateParams.Configuration.Storer.Capabilities.InboundTransfers + .BankAccounts.Protections build() { - return new AccountCreateParams.Configuration.Storer.Capabilities.Consumer - .HoldsCurrencies.Usd(this.extraParams, this.requested); + return new AccountCreateParams.Configuration.Storer.Capabilities.InboundTransfers + .BankAccounts.Protections(this.extraParams, this.pspMigration); } /** * 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 - * AccountCreateParams.Configuration.Storer.Capabilities.Consumer.HoldsCurrencies.Usd#extraParams} + * AccountCreateParams.Configuration.Storer.Capabilities.InboundTransfers.BankAccounts.Protections#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -11714,24 +25305,102 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountCreateParams.Configuration.Storer.Capabilities.Consumer.HoldsCurrencies.Usd#extraParams} + * AccountCreateParams.Configuration.Storer.Capabilities.InboundTransfers.BankAccounts.Protections#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { if (this.extraParams == null) { this.extraParams = new HashMap<>(); } - this.extraParams.putAll(map); - return this; - } + this.extraParams.putAll(map); + return this; + } + + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Storer.Capabilities.InboundTransfers + .BankAccounts.Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Storer.Capabilities.InboundTransfers + .BankAccounts.Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Storer.Capabilities + .InboundTransfers.BankAccounts.Protections.PspMigration( + this.extraParams, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Storer.Capabilities.InboundTransfers.BankAccounts.Protections.PspMigration#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 + * AccountCreateParams.Configuration.Storer.Capabilities.InboundTransfers.BankAccounts.Protections.PspMigration#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. To request a new Capability for an account, pass true. - * There can be a delay before the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; + /** Required. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } } } } @@ -11740,15 +25409,16 @@ public Builder setRequested(Boolean requested) { @Getter @EqualsAndHashCode(callSuper = false) - public static class FinancialAddresses { - /** - * Can provision a bank-account-like financial address (VBAN) to credit/debit a - * FinancialAccount. - */ + public static class OutboundPayments { + /** Can send funds from a FinancialAccount to a bank account owned by someone else. */ @SerializedName("bank_accounts") BankAccounts bankAccounts; - /** Can provision a crypto wallet like financial address to credit a FinancialAccount. */ + /** Can send funds from a FinancialAccount to a debit card owned by someone else. */ + @SerializedName("cards") + Cards cards; + + /** Can send funds from a FinancialAccount to a crypto wallet owned by someone else. */ @SerializedName("crypto_wallets") CryptoWallets cryptoWallets; @@ -11762,13 +25432,30 @@ public static class FinancialAddresses { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - private FinancialAddresses( + /** + * Can send funds from a FinancialAccount to another FinancialAccount owned by someone + * else. + */ + @SerializedName("financial_accounts") + FinancialAccounts financialAccounts; + + /** Can send funds from a FinancialAccount to someone else via paper check. */ + @SerializedName("paper_checks") + PaperChecks paperChecks; + + private OutboundPayments( BankAccounts bankAccounts, + Cards cards, CryptoWallets cryptoWallets, - Map extraParams) { + Map extraParams, + FinancialAccounts financialAccounts, + PaperChecks paperChecks) { this.bankAccounts = bankAccounts; + this.cards = cards; this.cryptoWallets = cryptoWallets; this.extraParams = extraParams; + this.financialAccounts = financialAccounts; + this.paperChecks = paperChecks; } public static Builder builder() { @@ -11778,35 +25465,46 @@ public static Builder builder() { public static class Builder { private BankAccounts bankAccounts; + private Cards cards; + private CryptoWallets cryptoWallets; private Map extraParams; + private FinancialAccounts financialAccounts; + + private PaperChecks paperChecks; + /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Storer.Capabilities.FinancialAddresses - build() { - return new AccountCreateParams.Configuration.Storer.Capabilities.FinancialAddresses( - this.bankAccounts, this.cryptoWallets, this.extraParams); + public AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments build() { + return new AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments( + this.bankAccounts, + this.cards, + this.cryptoWallets, + this.extraParams, + this.financialAccounts, + this.paperChecks); } - /** - * Can provision a bank-account-like financial address (VBAN) to credit/debit a - * FinancialAccount. - */ + /** Can send funds from a FinancialAccount to a bank account owned by someone else. */ public Builder setBankAccounts( - AccountCreateParams.Configuration.Storer.Capabilities.FinancialAddresses - .BankAccounts + AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments.BankAccounts bankAccounts) { this.bankAccounts = bankAccounts; return this; } - /** - * Can provision a crypto wallet like financial address to credit a FinancialAccount. - */ + /** Can send funds from a FinancialAccount to a debit card owned by someone else. */ + public Builder setCards( + AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments.Cards + cards) { + this.cards = cards; + return this; + } + + /** Can send funds from a FinancialAccount to a crypto wallet owned by someone else. */ public Builder setCryptoWallets( - AccountCreateParams.Configuration.Storer.Capabilities.FinancialAddresses - .CryptoWallets + AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments.CryptoWallets cryptoWallets) { this.cryptoWallets = cryptoWallets; return this; @@ -11816,7 +25514,7 @@ public Builder setCryptoWallets( * 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 - * AccountCreateParams.Configuration.Storer.Capabilities.FinancialAddresses#extraParams} + * AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -11831,7 +25529,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountCreateParams.Configuration.Storer.Capabilities.FinancialAddresses#extraParams} + * AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -11841,6 +25539,26 @@ public Builder putAllExtraParam(Map map) { this.extraParams.putAll(map); return this; } + + /** + * Can send funds from a FinancialAccount to another FinancialAccount owned by someone + * else. + */ + public Builder setFinancialAccounts( + AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments + .FinancialAccounts + financialAccounts) { + this.financialAccounts = financialAccounts; + return this; + } + + /** Can send funds from a FinancialAccount to someone else via paper check. */ + public Builder setPaperChecks( + AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments.PaperChecks + paperChecks) { + this.paperChecks = paperChecks; + return this; + } } @Getter @@ -11856,6 +25574,10 @@ public static class BankAccounts { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + /** * Required. To request a new Capability for an account, pass true. * There can be a delay before the requested Capability becomes active. @@ -11863,8 +25585,10 @@ public static class BankAccounts { @SerializedName("requested") Boolean requested; - private BankAccounts(Map extraParams, Boolean requested) { + private BankAccounts( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -11875,21 +25599,23 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Storer.Capabilities.FinancialAddresses + public AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments .BankAccounts build() { - return new AccountCreateParams.Configuration.Storer.Capabilities.FinancialAddresses - .BankAccounts(this.extraParams, this.requested); + return new AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments + .BankAccounts(this.extraParams, this.protections, this.requested); } /** * 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 - * AccountCreateParams.Configuration.Storer.Capabilities.FinancialAddresses.BankAccounts#extraParams} + * AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments.BankAccounts#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -11900,35 +25626,204 @@ public Builder putExtraParam(String key, Object 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 - * AccountCreateParams.Configuration.Storer.Capabilities.FinancialAddresses.BankAccounts#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** + * 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 + * AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments.BankAccounts#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments + .BankAccounts.Protections + protections) { + this.protections = protections; + return this; + } + + /** + * Required. To request a new Capability for an account, pass true. + * There can be a delay before the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments + .BankAccounts.Protections + build() { + return new AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments + .BankAccounts.Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments.BankAccounts.Protections#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 + * AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments.BankAccounts.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments + .BankAccounts.Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments + .BankAccounts.Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Storer.Capabilities + .OutboundPayments.BankAccounts.Protections.PspMigration( + this.extraParams, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments.BankAccounts.Protections.PspMigration#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 + * AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments.BankAccounts.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } } - this.extraParams.putAll(map); - return this; - } - - /** - * Required. To request a new Capability for an account, pass true. - * There can be a delay before the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; } } } @Getter @EqualsAndHashCode(callSuper = false) - public static class CryptoWallets { + public static class Cards { /** * 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} @@ -11939,6 +25834,10 @@ public static class CryptoWallets { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + /** * Required. To request a new Capability for an account, pass true. * There can be a delay before the requested Capability becomes active. @@ -11946,8 +25845,10 @@ public static class CryptoWallets { @SerializedName("requested") Boolean requested; - private CryptoWallets(Map extraParams, Boolean requested) { + private Cards( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -11958,21 +25859,22 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Storer.Capabilities.FinancialAddresses - .CryptoWallets + public AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments.Cards build() { - return new AccountCreateParams.Configuration.Storer.Capabilities.FinancialAddresses - .CryptoWallets(this.extraParams, this.requested); + return new AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments + .Cards(this.extraParams, this.protections, this.requested); } /** * 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 - * AccountCreateParams.Configuration.Storer.Capabilities.FinancialAddresses.CryptoWallets#extraParams} + * AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments.Cards#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -11987,7 +25889,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountCreateParams.Configuration.Storer.Capabilities.FinancialAddresses.CryptoWallets#extraParams} + * AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments.Cards#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -11998,6 +25900,17 @@ public Builder putAllExtraParam(Map map) { return this; } + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments.Cards + .Protections + protections) { + this.protections = protections; + return this; + } + /** * Required. To request a new Capability for an account, pass true. * There can be a delay before the requested Capability becomes active. @@ -12007,130 +25920,169 @@ public Builder setRequested(Boolean requested) { return this; } } - } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class HoldsCurrencies { - /** Can hold storage-type funds on Stripe in EUR. */ - @SerializedName("eur") - Eur eur; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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; - /** - * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - /** Can hold storage-type funds on Stripe in GBP. */ - @SerializedName("gbp") - Gbp gbp; + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - /** Can hold storage-type funds on Stripe in USD. */ - @SerializedName("usd") - Usd usd; + public static Builder builder() { + return new Builder(); + } - /** Can hold storage-type funds on Stripe in USDC. */ - @SerializedName("usdc") - Usdc usdc; + public static class Builder { + private Map extraParams; - private HoldsCurrencies( - Eur eur, Map extraParams, Gbp gbp, Usd usd, Usdc usdc) { - this.eur = eur; - this.extraParams = extraParams; - this.gbp = gbp; - this.usd = usd; - this.usdc = usdc; - } + private PspMigration pspMigration; - public static Builder builder() { - return new Builder(); - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments.Cards + .Protections + build() { + return new AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments + .Cards.Protections(this.extraParams, this.pspMigration); + } - public static class Builder { - private Eur eur; + /** + * 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 + * AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments.Cards.Protections#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; + } - private Map extraParams; + /** + * 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 + * AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments.Cards.Protections#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - private Gbp gbp; + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments.Cards + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } - private Usd usd; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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; - private Usdc usdc; + /** Required. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies build() { - return new AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies( - this.eur, this.extraParams, this.gbp, this.usd, this.usdc); - } + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } - /** Can hold storage-type funds on Stripe in EUR. */ - public Builder setEur( - AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Eur eur) { - this.eur = eur; - return this; - } + public static Builder builder() { + return new Builder(); + } - /** - * 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 - * AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies#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; - } + public static class Builder { + private Map extraParams; - /** - * 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 - * AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); - } - this.extraParams.putAll(map); - return this; - } + private Boolean requested; - /** Can hold storage-type funds on Stripe in GBP. */ - public Builder setGbp( - AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Gbp gbp) { - this.gbp = gbp; - return this; - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments + .Cards.Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Storer.Capabilities + .OutboundPayments.Cards.Protections.PspMigration( + this.extraParams, this.requested); + } - /** Can hold storage-type funds on Stripe in USD. */ - public Builder setUsd( - AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usd usd) { - this.usd = usd; - 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 + * AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments.Cards.Protections.PspMigration#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; + } - /** Can hold storage-type funds on Stripe in USDC. */ - public Builder setUsdc( - AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usdc usdc) { - this.usdc = usdc; - 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 + * AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments.Cards.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } } } @Getter @EqualsAndHashCode(callSuper = false) - public static class Eur { + public static class CryptoWallets { /** * 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} @@ -12141,6 +26093,10 @@ public static class Eur { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + /** * Required. To request a new Capability for an account, pass true. * There can be a delay before the requested Capability becomes active. @@ -12148,8 +26104,10 @@ public static class Eur { @SerializedName("requested") Boolean requested; - private Eur(Map extraParams, Boolean requested) { + private CryptoWallets( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -12160,20 +26118,23 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Eur + public AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments + .CryptoWallets build() { - return new AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies - .Eur(this.extraParams, this.requested); + return new AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments + .CryptoWallets(this.extraParams, this.protections, this.requested); } /** * 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 - * AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Eur#extraParams} + * AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments.CryptoWallets#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -12188,7 +26149,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Eur#extraParams} + * AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments.CryptoWallets#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -12199,6 +26160,17 @@ public Builder putAllExtraParam(Map map) { return this; } + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments + .CryptoWallets.Protections + protections) { + this.protections = protections; + return this; + } + /** * Required. To request a new Capability for an account, pass true. * There can be a delay before the requested Capability becomes active. @@ -12208,11 +26180,169 @@ public Builder setRequested(Boolean requested) { return this; } } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments + .CryptoWallets.Protections + build() { + return new AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments + .CryptoWallets.Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments.CryptoWallets.Protections#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 + * AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments.CryptoWallets.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments + .CryptoWallets.Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments + .CryptoWallets.Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Storer.Capabilities + .OutboundPayments.CryptoWallets.Protections.PspMigration( + this.extraParams, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments.CryptoWallets.Protections.PspMigration#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 + * AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments.CryptoWallets.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } } @Getter @EqualsAndHashCode(callSuper = false) - public static class Gbp { + public static class FinancialAccounts { /** * 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} @@ -12223,6 +26353,10 @@ public static class Gbp { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + /** * Required. To request a new Capability for an account, pass true. * There can be a delay before the requested Capability becomes active. @@ -12230,8 +26364,10 @@ public static class Gbp { @SerializedName("requested") Boolean requested; - private Gbp(Map extraParams, Boolean requested) { + private FinancialAccounts( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -12242,20 +26378,23 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Gbp + public AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments + .FinancialAccounts build() { - return new AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies - .Gbp(this.extraParams, this.requested); + return new AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments + .FinancialAccounts(this.extraParams, this.protections, this.requested); } /** * 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 - * AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Gbp#extraParams} + * AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments.FinancialAccounts#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -12270,7 +26409,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Gbp#extraParams} + * AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments.FinancialAccounts#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -12281,6 +26420,17 @@ public Builder putAllExtraParam(Map map) { return this; } + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments + .FinancialAccounts.Protections + protections) { + this.protections = protections; + return this; + } + /** * Required. To request a new Capability for an account, pass true. * There can be a delay before the requested Capability becomes active. @@ -12290,93 +26440,169 @@ public Builder setRequested(Boolean requested) { return this; } } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class Usd { - /** - * 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; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. To request a new Capability for an account, pass true. - * There can be a delay before the requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + /** Required. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - private Usd(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments + .FinancialAccounts.Protections + build() { + return new AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments + .FinancialAccounts.Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments.FinancialAccounts.Protections#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 + * AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments.FinancialAccounts.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments + .FinancialAccounts.Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } - public static Builder builder() { - return new Builder(); - } + public static class Builder { + private Map extraParams; - public static class Builder { - private Map extraParams; + private Boolean requested; - private Boolean requested; + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments + .FinancialAccounts.Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Storer.Capabilities + .OutboundPayments.FinancialAccounts.Protections.PspMigration( + this.extraParams, this.requested); + } - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usd - build() { - return new AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies - .Usd(this.extraParams, this.requested); - } + /** + * 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 + * AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments.FinancialAccounts.Protections.PspMigration#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 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 - * AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usd#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 + * AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments.FinancialAccounts.Protections.PspMigration#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 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 - * AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usd#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** Required. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } } - this.extraParams.putAll(map); - return this; - } - - /** - * Required. To request a new Capability for an account, pass true. - * There can be a delay before the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; } } } @Getter @EqualsAndHashCode(callSuper = false) - public static class Usdc { + public static class PaperChecks { /** * 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} @@ -12387,6 +26613,10 @@ public static class Usdc { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + /** * Required. To request a new Capability for an account, pass true. * There can be a delay before the requested Capability becomes active. @@ -12394,8 +26624,10 @@ public static class Usdc { @SerializedName("requested") Boolean requested; - private Usdc(Map extraParams, Boolean requested) { + private PaperChecks( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -12406,20 +26638,23 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usdc + public AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments + .PaperChecks build() { - return new AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies - .Usdc(this.extraParams, this.requested); + return new AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments + .PaperChecks(this.extraParams, this.protections, this.requested); } /** * 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 - * AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usdc#extraParams} + * AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments.PaperChecks#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -12434,7 +26669,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountCreateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usdc#extraParams} + * AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments.PaperChecks#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -12445,6 +26680,17 @@ public Builder putAllExtraParam(Map map) { return this; } + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments.PaperChecks + .Protections + protections) { + this.protections = protections; + return this; + } + /** * Required. To request a new Capability for an account, pass true. * There can be a delay before the requested Capability becomes active. @@ -12454,168 +26700,162 @@ public Builder setRequested(Boolean requested) { return this; } } - } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class InboundTransfers { - /** - * Can pull funds from an external bank account owned by yourself to a FinancialAccount. - */ - @SerializedName("bank_accounts") - BankAccounts bankAccounts; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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; - /** - * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - private InboundTransfers(BankAccounts bankAccounts, Map extraParams) { - this.bankAccounts = bankAccounts; - this.extraParams = extraParams; - } + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - public static Builder builder() { - return new Builder(); - } + public static Builder builder() { + return new Builder(); + } - public static class Builder { - private BankAccounts bankAccounts; + public static class Builder { + private Map extraParams; - private Map extraParams; + private PspMigration pspMigration; - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Storer.Capabilities.InboundTransfers build() { - return new AccountCreateParams.Configuration.Storer.Capabilities.InboundTransfers( - this.bankAccounts, this.extraParams); - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments + .PaperChecks.Protections + build() { + return new AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments + .PaperChecks.Protections(this.extraParams, this.pspMigration); + } - /** - * Can pull funds from an external bank account owned by yourself to a FinancialAccount. - */ - public Builder setBankAccounts( - AccountCreateParams.Configuration.Storer.Capabilities.InboundTransfers.BankAccounts - bankAccounts) { - this.bankAccounts = bankAccounts; - 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 + * AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments.PaperChecks.Protections#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 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 - * AccountCreateParams.Configuration.Storer.Capabilities.InboundTransfers#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 + * AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments.PaperChecks.Protections#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 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 - * AccountCreateParams.Configuration.Storer.Capabilities.InboundTransfers#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments + .PaperChecks.Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } } - this.extraParams.putAll(map); - return this; - } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class BankAccounts { - /** - * 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; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a new Capability for an account, pass true. - * There can be a delay before the requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + /** Required. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; - private BankAccounts(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } - public static Builder builder() { - return new Builder(); - } + public static class Builder { + private Map extraParams; - public static class Builder { - private Map extraParams; + private Boolean requested; - private Boolean requested; + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments + .PaperChecks.Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Storer.Capabilities + .OutboundPayments.PaperChecks.Protections.PspMigration( + this.extraParams, this.requested); + } - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Storer.Capabilities.InboundTransfers - .BankAccounts - build() { - return new AccountCreateParams.Configuration.Storer.Capabilities.InboundTransfers - .BankAccounts(this.extraParams, this.requested); - } + /** + * 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 + * AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments.PaperChecks.Protections.PspMigration#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 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 - * AccountCreateParams.Configuration.Storer.Capabilities.InboundTransfers.BankAccounts#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 + * AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments.PaperChecks.Protections.PspMigration#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 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 - * AccountCreateParams.Configuration.Storer.Capabilities.InboundTransfers.BankAccounts#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** Required. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } } - this.extraParams.putAll(map); - return this; - } - - /** - * Required. To request a new Capability for an account, pass true. - * There can be a delay before the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; } } } @@ -12623,16 +26863,12 @@ public Builder setRequested(Boolean requested) { @Getter @EqualsAndHashCode(callSuper = false) - public static class OutboundPayments { - /** Can send funds from a FinancialAccount to a bank account owned by someone else. */ + public static class OutboundTransfers { + /** Can send funds from a FinancialAccount to a bank account owned by yourself. */ @SerializedName("bank_accounts") BankAccounts bankAccounts; - /** Can send funds from a FinancialAccount to a debit card owned by someone else. */ - @SerializedName("cards") - Cards cards; - - /** Can send funds from a FinancialAccount to a crypto wallet owned by someone else. */ + /** Can send funds from a FinancialAccount to a crypto wallet owned by yourself. */ @SerializedName("crypto_wallets") CryptoWallets cryptoWallets; @@ -12647,29 +26883,20 @@ public static class OutboundPayments { Map extraParams; /** - * Can send funds from a FinancialAccount to another FinancialAccount owned by someone - * else. + * Can send funds from a FinancialAccount to another FinancialAccount owned by yourself. */ @SerializedName("financial_accounts") FinancialAccounts financialAccounts; - /** Can send funds from a FinancialAccount to someone else via paper check. */ - @SerializedName("paper_checks") - PaperChecks paperChecks; - - private OutboundPayments( + private OutboundTransfers( BankAccounts bankAccounts, - Cards cards, CryptoWallets cryptoWallets, Map extraParams, - FinancialAccounts financialAccounts, - PaperChecks paperChecks) { + FinancialAccounts financialAccounts) { this.bankAccounts = bankAccounts; - this.cards = cards; this.cryptoWallets = cryptoWallets; this.extraParams = extraParams; this.financialAccounts = financialAccounts; - this.paperChecks = paperChecks; } public static Builder builder() { @@ -12679,46 +26906,30 @@ public static Builder builder() { public static class Builder { private BankAccounts bankAccounts; - private Cards cards; - private CryptoWallets cryptoWallets; private Map extraParams; private FinancialAccounts financialAccounts; - private PaperChecks paperChecks; - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments build() { - return new AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments( - this.bankAccounts, - this.cards, - this.cryptoWallets, - this.extraParams, - this.financialAccounts, - this.paperChecks); + public AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers build() { + return new AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers( + this.bankAccounts, this.cryptoWallets, this.extraParams, this.financialAccounts); } - /** Can send funds from a FinancialAccount to a bank account owned by someone else. */ + /** Can send funds from a FinancialAccount to a bank account owned by yourself. */ public Builder setBankAccounts( - AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments.BankAccounts + AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers.BankAccounts bankAccounts) { this.bankAccounts = bankAccounts; return this; } - /** Can send funds from a FinancialAccount to a debit card owned by someone else. */ - public Builder setCards( - AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments.Cards - cards) { - this.cards = cards; - return this; - } - - /** Can send funds from a FinancialAccount to a crypto wallet owned by someone else. */ + /** Can send funds from a FinancialAccount to a crypto wallet owned by yourself. */ public Builder setCryptoWallets( - AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments.CryptoWallets + AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers + .CryptoWallets cryptoWallets) { this.cryptoWallets = cryptoWallets; return this; @@ -12727,140 +26938,48 @@ public Builder setCryptoWallets( /** * 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 - * AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments#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 - * AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); - } - this.extraParams.putAll(map); - return this; - } - - /** - * Can send funds from a FinancialAccount to another FinancialAccount owned by someone - * else. - */ - public Builder setFinancialAccounts( - AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments - .FinancialAccounts - financialAccounts) { - this.financialAccounts = financialAccounts; - return this; - } - - /** Can send funds from a FinancialAccount to someone else via paper check. */ - public Builder setPaperChecks( - AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments.PaperChecks - paperChecks) { - this.paperChecks = paperChecks; - return this; - } - } - - @Getter - @EqualsAndHashCode(callSuper = false) - public static class BankAccounts { - /** - * 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. To request a new Capability for an account, pass true. - * There can be a delay before the requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; - - private BankAccounts(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } - - public static Builder builder() { - return new Builder(); - } - - public static class Builder { - private Map extraParams; - - private Boolean requested; - - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments - .BankAccounts - build() { - return new AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments - .BankAccounts(this.extraParams, this.requested); - } - - /** - * 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 - * AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments.BankAccounts#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 - * AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments.BankAccounts#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); - } - this.extraParams.putAll(map); - return this; + * original map. See {@link + * AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers#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; + } - /** - * Required. To request a new Capability for an account, pass true. - * There can be a delay before the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - 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 + * AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); } + this.extraParams.putAll(map); + return this; + } + + /** + * Can send funds from a FinancialAccount to another FinancialAccount owned by yourself. + */ + public Builder setFinancialAccounts( + AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers + .FinancialAccounts + financialAccounts) { + this.financialAccounts = financialAccounts; + return this; } } @Getter @EqualsAndHashCode(callSuper = false) - public static class Cards { + public static class BankAccounts { /** * 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} @@ -12871,6 +26990,10 @@ public static class Cards { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + /** * Required. To request a new Capability for an account, pass true. * There can be a delay before the requested Capability becomes active. @@ -12878,8 +27001,10 @@ public static class Cards { @SerializedName("requested") Boolean requested; - private Cards(Map extraParams, Boolean requested) { + private BankAccounts( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -12890,20 +27015,23 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments.Cards + public AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers + .BankAccounts build() { - return new AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments - .Cards(this.extraParams, this.requested); + return new AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers + .BankAccounts(this.extraParams, this.protections, this.requested); } /** * 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 - * AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments.Cards#extraParams} + * AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers.BankAccounts#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -12918,7 +27046,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments.Cards#extraParams} + * AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers.BankAccounts#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -12929,6 +27057,17 @@ public Builder putAllExtraParam(Map map) { return this; } + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers + .BankAccounts.Protections + protections) { + this.protections = protections; + return this; + } + /** * Required. To request a new Capability for an account, pass true. * There can be a delay before the requested Capability becomes active. @@ -12938,177 +27077,169 @@ public Builder setRequested(Boolean requested) { return this; } } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class CryptoWallets { - /** - * 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; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. To request a new Capability for an account, pass true. - * There can be a delay before the requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + /** Required. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - private CryptoWallets(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - public static Builder builder() { - return new Builder(); - } + public static Builder builder() { + return new Builder(); + } - public static class Builder { - private Map extraParams; + public static class Builder { + private Map extraParams; - private Boolean requested; + private PspMigration pspMigration; - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments - .CryptoWallets - build() { - return new AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments - .CryptoWallets(this.extraParams, this.requested); - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers + .BankAccounts.Protections + build() { + return new AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers + .BankAccounts.Protections(this.extraParams, this.pspMigration); + } - /** - * 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 - * AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments.CryptoWallets#extraParams} - * for the field documentation. - */ - public Builder putExtraParam(String key, Object value) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** + * 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 + * AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers.BankAccounts.Protections#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; } - 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 - * AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments.CryptoWallets#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** + * 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 + * AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers.BankAccounts.Protections#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; } - this.extraParams.putAll(map); - return this; - } - /** - * Required. To request a new Capability for an account, pass true. - * There can be a delay before the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers + .BankAccounts.Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } } - } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class FinancialAccounts { - /** - * 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; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a new Capability for an account, pass true. - * There can be a delay before the requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + /** Required. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; - private FinancialAccounts(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } - public static Builder builder() { - return new Builder(); - } + public static Builder builder() { + return new Builder(); + } - public static class Builder { - private Map extraParams; + public static class Builder { + private Map extraParams; - private Boolean requested; + private Boolean requested; - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments - .FinancialAccounts - build() { - return new AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments - .FinancialAccounts(this.extraParams, this.requested); - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers + .BankAccounts.Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Storer.Capabilities + .OutboundTransfers.BankAccounts.Protections.PspMigration( + this.extraParams, this.requested); + } - /** - * 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 - * AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments.FinancialAccounts#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 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 + * AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers.BankAccounts.Protections.PspMigration#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 - * AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments.FinancialAccounts#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 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 + * AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers.BankAccounts.Protections.PspMigration#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. To request a new Capability for an account, pass true. - * There can be a delay before the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; + /** Required. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } } } } @Getter @EqualsAndHashCode(callSuper = false) - public static class PaperChecks { + public static class CryptoWallets { /** * 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} @@ -13119,6 +27250,10 @@ public static class PaperChecks { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + /** * Required. To request a new Capability for an account, pass true. * There can be a delay before the requested Capability becomes active. @@ -13126,8 +27261,10 @@ public static class PaperChecks { @SerializedName("requested") Boolean requested; - private PaperChecks(Map extraParams, Boolean requested) { + private CryptoWallets( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -13138,21 +27275,23 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments - .PaperChecks + public AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers + .CryptoWallets build() { - return new AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments - .PaperChecks(this.extraParams, this.requested); + return new AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers + .CryptoWallets(this.extraParams, this.protections, this.requested); } /** * 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 - * AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments.PaperChecks#extraParams} + * AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers.CryptoWallets#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -13167,7 +27306,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountCreateParams.Configuration.Storer.Capabilities.OutboundPayments.PaperChecks#extraParams} + * AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers.CryptoWallets#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -13178,6 +27317,17 @@ public Builder putAllExtraParam(Map map) { return this; } + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers + .CryptoWallets.Protections + protections) { + this.protections = protections; + return this; + } + /** * Required. To request a new Capability for an account, pass true. * There can be a delay before the requested Capability becomes active. @@ -13187,128 +27337,169 @@ public Builder setRequested(Boolean requested) { return this; } } - } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class OutboundTransfers { - /** Can send funds from a FinancialAccount to a bank account owned by yourself. */ - @SerializedName("bank_accounts") - BankAccounts bankAccounts; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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; - /** Can send funds from a FinancialAccount to a crypto wallet owned by yourself. */ - @SerializedName("crypto_wallets") - CryptoWallets cryptoWallets; + /** Required. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - /** - * 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; + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - /** - * Can send funds from a FinancialAccount to another FinancialAccount owned by yourself. - */ - @SerializedName("financial_accounts") - FinancialAccounts financialAccounts; + public static Builder builder() { + return new Builder(); + } - private OutboundTransfers( - BankAccounts bankAccounts, - CryptoWallets cryptoWallets, - Map extraParams, - FinancialAccounts financialAccounts) { - this.bankAccounts = bankAccounts; - this.cryptoWallets = cryptoWallets; - this.extraParams = extraParams; - this.financialAccounts = financialAccounts; - } + public static class Builder { + private Map extraParams; - public static Builder builder() { - return new Builder(); - } + private PspMigration pspMigration; - public static class Builder { - private BankAccounts bankAccounts; + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers + .CryptoWallets.Protections + build() { + return new AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers + .CryptoWallets.Protections(this.extraParams, this.pspMigration); + } - private CryptoWallets cryptoWallets; + /** + * 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 + * AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers.CryptoWallets.Protections#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; + } - private Map extraParams; + /** + * 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 + * AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers.CryptoWallets.Protections#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - private FinancialAccounts financialAccounts; + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers + .CryptoWallets.Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers build() { - return new AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers( - this.bankAccounts, this.cryptoWallets, this.extraParams, this.financialAccounts); - } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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; - /** Can send funds from a FinancialAccount to a bank account owned by yourself. */ - public Builder setBankAccounts( - AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers.BankAccounts - bankAccounts) { - this.bankAccounts = bankAccounts; - return this; - } + /** Required. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; - /** Can send funds from a FinancialAccount to a crypto wallet owned by yourself. */ - public Builder setCryptoWallets( - AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers - .CryptoWallets - cryptoWallets) { - this.cryptoWallets = cryptoWallets; - return this; - } + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } - /** - * 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 - * AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers#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; - } + public static Builder builder() { + return new Builder(); + } - /** - * 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 - * AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); - } - this.extraParams.putAll(map); - return this; - } + public static class Builder { + private Map extraParams; - /** - * Can send funds from a FinancialAccount to another FinancialAccount owned by yourself. - */ - public Builder setFinancialAccounts( - AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers - .FinancialAccounts - financialAccounts) { - this.financialAccounts = financialAccounts; - return this; + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers + .CryptoWallets.Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Storer.Capabilities + .OutboundTransfers.CryptoWallets.Protections.PspMigration( + this.extraParams, this.requested); + } + + /** + * 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 + * AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers.CryptoWallets.Protections.PspMigration#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 + * AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers.CryptoWallets.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } } } @Getter @EqualsAndHashCode(callSuper = false) - public static class BankAccounts { + public static class FinancialAccounts { /** * 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} @@ -13319,6 +27510,10 @@ public static class BankAccounts { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + /** * Required. To request a new Capability for an account, pass true. * There can be a delay before the requested Capability becomes active. @@ -13326,8 +27521,10 @@ public static class BankAccounts { @SerializedName("requested") Boolean requested; - private BankAccounts(Map extraParams, Boolean requested) { + private FinancialAccounts( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -13338,21 +27535,23 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ public AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers - .BankAccounts + .FinancialAccounts build() { return new AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers - .BankAccounts(this.extraParams, this.requested); + .FinancialAccounts(this.extraParams, this.protections, this.requested); } /** * 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 - * AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers.BankAccounts#extraParams} + * AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers.FinancialAccounts#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -13367,7 +27566,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers.BankAccounts#extraParams} + * AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers.FinancialAccounts#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -13378,6 +27577,17 @@ public Builder putAllExtraParam(Map map) { return this; } + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers + .FinancialAccounts.Protections + protections) { + this.protections = protections; + return this; + } + /** * Required. To request a new Capability for an account, pass true. * There can be a delay before the requested Capability becomes active. @@ -13387,170 +27597,162 @@ public Builder setRequested(Boolean requested) { return this; } } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class CryptoWallets { - /** - * 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; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. To request a new Capability for an account, pass true. - * There can be a delay before the requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + /** Required. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - private CryptoWallets(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - public static Builder builder() { - return new Builder(); - } + public static Builder builder() { + return new Builder(); + } - public static class Builder { - private Map extraParams; + public static class Builder { + private Map extraParams; - private Boolean requested; + private PspMigration pspMigration; - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers - .CryptoWallets - build() { - return new AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers - .CryptoWallets(this.extraParams, this.requested); - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers + .FinancialAccounts.Protections + build() { + return new AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers + .FinancialAccounts.Protections(this.extraParams, this.pspMigration); + } - /** - * 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 - * AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers.CryptoWallets#extraParams} - * for the field documentation. - */ - public Builder putExtraParam(String key, Object value) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** + * 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 + * AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers.FinancialAccounts.Protections#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; } - 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 - * AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers.CryptoWallets#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** + * 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 + * AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers.FinancialAccounts.Protections#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; } - this.extraParams.putAll(map); - return this; - } - /** - * Required. To request a new Capability for an account, pass true. - * There can be a delay before the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers + .FinancialAccounts.Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } } - } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class FinancialAccounts { - /** - * 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; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a new Capability for an account, pass true. - * There can be a delay before the requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + /** Required. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; - private FinancialAccounts(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } - public static Builder builder() { - return new Builder(); - } + public static Builder builder() { + return new Builder(); + } - public static class Builder { - private Map extraParams; + public static class Builder { + private Map extraParams; - private Boolean requested; + private Boolean requested; - /** Finalize and obtain parameter instance from this builder. */ - public AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers - .FinancialAccounts - build() { - return new AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers - .FinancialAccounts(this.extraParams, this.requested); - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers + .FinancialAccounts.Protections.PspMigration + build() { + return new AccountCreateParams.Configuration.Storer.Capabilities + .OutboundTransfers.FinancialAccounts.Protections.PspMigration( + this.extraParams, this.requested); + } - /** - * 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 - * AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers.FinancialAccounts#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 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 + * AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers.FinancialAccounts.Protections.PspMigration#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 - * AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers.FinancialAccounts#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 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 + * AccountCreateParams.Configuration.Storer.Capabilities.OutboundTransfers.FinancialAccounts.Protections.PspMigration#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. To request a new Capability for an account, pass true. - * There can be a delay before the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; + /** Required. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } } } } diff --git a/src/main/java/com/stripe/param/v2/core/AccountUpdateParams.java b/src/main/java/com/stripe/param/v2/core/AccountUpdateParams.java index 77ce5e40fec..8b126df900e 100644 --- a/src/main/java/com/stripe/param/v2/core/AccountUpdateParams.java +++ b/src/main/java/com/stripe/param/v2/core/AccountUpdateParams.java @@ -918,6 +918,12 @@ public static class ChargeCard { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * To request a new Capability for an account, pass true. There can be a delay before * the requested Capability becomes active. @@ -925,8 +931,10 @@ public static class ChargeCard { @SerializedName("requested") Boolean requested; - private ChargeCard(Map extraParams, Boolean requested) { + private ChargeCard( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -937,6 +945,8 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ @@ -944,7 +954,7 @@ public static class Builder { .ChargeCard build() { return new AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial - .Celtic.ChargeCard(this.extraParams, this.requested); + .Celtic.ChargeCard(this.extraParams, this.protections, this.requested); } /** @@ -977,6 +987,17 @@ public Builder putAllExtraParam(Map map) { return this; } + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.Celtic + .ChargeCard.Protections + protections) { + this.protections = protections; + return this; + } + /** * To request a new Capability for an account, pass true. There can be a delay * before the requested Capability becomes active. @@ -986,6 +1007,164 @@ public Builder setRequested(Boolean requested) { return this; } } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial + .Celtic.ChargeCard.Protections + build() { + return new AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial + .Celtic.ChargeCard.Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.Celtic.ChargeCard.Protections#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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.Celtic.ChargeCard.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.Celtic + .ChargeCard.Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial + .Celtic.ChargeCard.Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.CardCreator.Capabilities + .Commercial.Celtic.ChargeCard.Protections.PspMigration( + this.extraParams, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.Celtic.ChargeCard.Protections.PspMigration#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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.Celtic.ChargeCard.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } } @Getter @@ -1001,6 +1180,12 @@ public static class SpendCard { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * To request a new Capability for an account, pass true. There can be a delay before * the requested Capability becomes active. @@ -1008,8 +1193,10 @@ public static class SpendCard { @SerializedName("requested") Boolean requested; - private SpendCard(Map extraParams, Boolean requested) { + private SpendCard( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -1020,6 +1207,8 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ @@ -1027,7 +1216,7 @@ public static class Builder { .SpendCard build() { return new AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial - .Celtic.SpendCard(this.extraParams, this.requested); + .Celtic.SpendCard(this.extraParams, this.protections, this.requested); } /** @@ -1060,6 +1249,17 @@ public Builder putAllExtraParam(Map map) { return this; } + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.Celtic + .SpendCard.Protections + protections) { + this.protections = protections; + return this; + } + /** * To request a new Capability for an account, pass true. There can be a delay * before the requested Capability becomes active. @@ -1069,73 +1269,231 @@ public Builder setRequested(Boolean requested) { return this; } } - } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class CrossRiverBank { - /** Can create commercial issuing charge cards with Cross River Bank as BIN sponsor. */ - @SerializedName("charge_card") - ChargeCard chargeCard; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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; - /** - * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - /** Can create commercial issuing prepaid cards with Cross River Bank as BIN sponsor. */ - @SerializedName("prepaid_card") - PrepaidCard prepaidCard; + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - /** Can create commercial issuing spend cards with Cross River Bank as BIN sponsor. */ - @SerializedName("spend_card") - SpendCard spendCard; + public static Builder builder() { + return new Builder(); + } - private CrossRiverBank( - ChargeCard chargeCard, - Map extraParams, - PrepaidCard prepaidCard, - SpendCard spendCard) { - this.chargeCard = chargeCard; - this.extraParams = extraParams; - this.prepaidCard = prepaidCard; - this.spendCard = spendCard; - } + public static class Builder { + private Map extraParams; - public static Builder builder() { - return new Builder(); - } + private PspMigration pspMigration; - public static class Builder { - private ChargeCard chargeCard; + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial + .Celtic.SpendCard.Protections + build() { + return new AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial + .Celtic.SpendCard.Protections(this.extraParams, this.pspMigration); + } - private Map extraParams; + /** + * 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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.Celtic.SpendCard.Protections#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; + } - private PrepaidCard prepaidCard; + /** + * 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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.Celtic.SpendCard.Protections#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - private SpendCard spendCard; + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.Celtic + .SpendCard.Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial - .CrossRiverBank - build() { - return new AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial - .CrossRiverBank( - this.chargeCard, this.extraParams, this.prepaidCard, this.spendCard); - } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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; - /** - * Can create commercial issuing charge cards with Cross River Bank as BIN sponsor. - */ - public Builder setChargeCard( - AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial - .CrossRiverBank.ChargeCard + /** Required. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial + .Celtic.SpendCard.Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.CardCreator.Capabilities + .Commercial.Celtic.SpendCard.Protections.PspMigration( + this.extraParams, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.Celtic.SpendCard.Protections.PspMigration#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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.Celtic.SpendCard.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class CrossRiverBank { + /** Can create commercial issuing charge cards with Cross River Bank as BIN sponsor. */ + @SerializedName("charge_card") + ChargeCard chargeCard; + + /** + * 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; + + /** Can create commercial issuing prepaid cards with Cross River Bank as BIN sponsor. */ + @SerializedName("prepaid_card") + PrepaidCard prepaidCard; + + /** Can create commercial issuing spend cards with Cross River Bank as BIN sponsor. */ + @SerializedName("spend_card") + SpendCard spendCard; + + private CrossRiverBank( + ChargeCard chargeCard, + Map extraParams, + PrepaidCard prepaidCard, + SpendCard spendCard) { + this.chargeCard = chargeCard; + this.extraParams = extraParams; + this.prepaidCard = prepaidCard; + this.spendCard = spendCard; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private ChargeCard chargeCard; + + private Map extraParams; + + private PrepaidCard prepaidCard; + + private SpendCard spendCard; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial + .CrossRiverBank + build() { + return new AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial + .CrossRiverBank( + this.chargeCard, this.extraParams, this.prepaidCard, this.spendCard); + } + + /** + * Can create commercial issuing charge cards with Cross River Bank as BIN sponsor. + */ + public Builder setChargeCard( + AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial + .CrossRiverBank.ChargeCard chargeCard) { this.chargeCard = chargeCard; return this; @@ -1205,6 +1563,12 @@ public static class ChargeCard { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * To request a new Capability for an account, pass true. There can be a delay before * the requested Capability becomes active. @@ -1212,8 +1576,10 @@ public static class ChargeCard { @SerializedName("requested") Boolean requested; - private ChargeCard(Map extraParams, Boolean requested) { + private ChargeCard( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -1224,6 +1590,8 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ @@ -1231,7 +1599,8 @@ public static class Builder { .CrossRiverBank.ChargeCard build() { return new AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial - .CrossRiverBank.ChargeCard(this.extraParams, this.requested); + .CrossRiverBank.ChargeCard( + this.extraParams, this.protections, this.requested); } /** @@ -1264,6 +1633,17 @@ public Builder putAllExtraParam(Map map) { return this; } + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial + .CrossRiverBank.ChargeCard.Protections + protections) { + this.protections = protections; + return this; + } + /** * To request a new Capability for an account, pass true. There can be a delay * before the requested Capability becomes active. @@ -1273,6 +1653,164 @@ public Builder setRequested(Boolean requested) { return this; } } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial + .CrossRiverBank.ChargeCard.Protections + build() { + return new AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial + .CrossRiverBank.ChargeCard.Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.CrossRiverBank.ChargeCard.Protections#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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.CrossRiverBank.ChargeCard.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial + .CrossRiverBank.ChargeCard.Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial + .CrossRiverBank.ChargeCard.Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.CardCreator.Capabilities + .Commercial.CrossRiverBank.ChargeCard.Protections.PspMigration( + this.extraParams, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.CrossRiverBank.ChargeCard.Protections.PspMigration#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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.CrossRiverBank.ChargeCard.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } } @Getter @@ -1288,6 +1826,12 @@ public static class PrepaidCard { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * To request a new Capability for an account, pass true. There can be a delay before * the requested Capability becomes active. @@ -1295,8 +1839,10 @@ public static class PrepaidCard { @SerializedName("requested") Boolean requested; - private PrepaidCard(Map extraParams, Boolean requested) { + private PrepaidCard( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -1307,6 +1853,8 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ @@ -1314,7 +1862,8 @@ public static class Builder { .CrossRiverBank.PrepaidCard build() { return new AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial - .CrossRiverBank.PrepaidCard(this.extraParams, this.requested); + .CrossRiverBank.PrepaidCard( + this.extraParams, this.protections, this.requested); } /** @@ -1347,6 +1896,17 @@ public Builder putAllExtraParam(Map map) { return this; } + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial + .CrossRiverBank.PrepaidCard.Protections + protections) { + this.protections = protections; + return this; + } + /** * To request a new Capability for an account, pass true. There can be a delay * before the requested Capability becomes active. @@ -1356,6 +1916,165 @@ public Builder setRequested(Boolean requested) { return this; } } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial + .CrossRiverBank.PrepaidCard.Protections + build() { + return new AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial + .CrossRiverBank.PrepaidCard.Protections( + this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.CrossRiverBank.PrepaidCard.Protections#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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.CrossRiverBank.PrepaidCard.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial + .CrossRiverBank.PrepaidCard.Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial + .CrossRiverBank.PrepaidCard.Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.CardCreator.Capabilities + .Commercial.CrossRiverBank.PrepaidCard.Protections.PspMigration( + this.extraParams, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.CrossRiverBank.PrepaidCard.Protections.PspMigration#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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.CrossRiverBank.PrepaidCard.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } } @Getter @@ -1371,6 +2090,12 @@ public static class SpendCard { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * To request a new Capability for an account, pass true. There can be a delay before * the requested Capability becomes active. @@ -1378,8 +2103,10 @@ public static class SpendCard { @SerializedName("requested") Boolean requested; - private SpendCard(Map extraParams, Boolean requested) { + private SpendCard( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -1390,6 +2117,8 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ @@ -1397,7 +2126,7 @@ public static class Builder { .CrossRiverBank.SpendCard build() { return new AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial - .CrossRiverBank.SpendCard(this.extraParams, this.requested); + .CrossRiverBank.SpendCard(this.extraParams, this.protections, this.requested); } /** @@ -1430,6 +2159,17 @@ public Builder putAllExtraParam(Map map) { return this; } + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial + .CrossRiverBank.SpendCard.Protections + protections) { + this.protections = protections; + return this; + } + /** * To request a new Capability for an account, pass true. There can be a delay * before the requested Capability becomes active. @@ -1439,6 +2179,164 @@ public Builder setRequested(Boolean requested) { return this; } } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial + .CrossRiverBank.SpendCard.Protections + build() { + return new AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial + .CrossRiverBank.SpendCard.Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.CrossRiverBank.SpendCard.Protections#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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.CrossRiverBank.SpendCard.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial + .CrossRiverBank.SpendCard.Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial + .CrossRiverBank.SpendCard.Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.CardCreator.Capabilities + .Commercial.CrossRiverBank.SpendCard.Protections.PspMigration( + this.extraParams, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.CrossRiverBank.SpendCard.Protections.PspMigration#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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.CrossRiverBank.SpendCard.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } } } @@ -1534,6 +2432,12 @@ public static class ChargeCard { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * To request a new Capability for an account, pass true. There can be a delay before * the requested Capability becomes active. @@ -1541,8 +2445,10 @@ public static class ChargeCard { @SerializedName("requested") Boolean requested; - private ChargeCard(Map extraParams, Boolean requested) { + private ChargeCard( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -1553,6 +2459,8 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ @@ -1560,7 +2468,7 @@ public static class Builder { .FifthThird.ChargeCard build() { return new AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial - .FifthThird.ChargeCard(this.extraParams, this.requested); + .FifthThird.ChargeCard(this.extraParams, this.protections, this.requested); } /** @@ -1593,6 +2501,17 @@ public Builder putAllExtraParam(Map map) { return this; } + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.FifthThird + .ChargeCard.Protections + protections) { + this.protections = protections; + return this; + } + /** * To request a new Capability for an account, pass true. There can be a delay * before the requested Capability becomes active. @@ -1602,6 +2521,164 @@ public Builder setRequested(Boolean requested) { return this; } } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial + .FifthThird.ChargeCard.Protections + build() { + return new AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial + .FifthThird.ChargeCard.Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.FifthThird.ChargeCard.Protections#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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.FifthThird.ChargeCard.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial + .FifthThird.ChargeCard.Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial + .FifthThird.ChargeCard.Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.CardCreator.Capabilities + .Commercial.FifthThird.ChargeCard.Protections.PspMigration( + this.extraParams, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.FifthThird.ChargeCard.Protections.PspMigration#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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.FifthThird.ChargeCard.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } } } @@ -1696,6 +2773,12 @@ public static class PrepaidCard { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * To request a new Capability for an account, pass true. There can be a delay before * the requested Capability becomes active. @@ -1703,8 +2786,10 @@ public static class PrepaidCard { @SerializedName("requested") Boolean requested; - private PrepaidCard(Map extraParams, Boolean requested) { + private PrepaidCard( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -1715,6 +2800,8 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ @@ -1722,7 +2809,7 @@ public static class Builder { .PrepaidCard build() { return new AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial - .Lead.PrepaidCard(this.extraParams, this.requested); + .Lead.PrepaidCard(this.extraParams, this.protections, this.requested); } /** @@ -1755,6 +2842,17 @@ public Builder putAllExtraParam(Map map) { return this; } + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.Lead + .PrepaidCard.Protections + protections) { + this.protections = protections; + return this; + } + /** * To request a new Capability for an account, pass true. There can be a delay * before the requested Capability becomes active. @@ -1764,88 +2862,246 @@ public Builder setRequested(Boolean requested) { return this; } } - } - } - - @Getter - @EqualsAndHashCode(callSuper = false) - public static class Stripe { - /** Can create commercial issuing charge cards with Stripe as BIN sponsor. */ - @SerializedName("charge_card") - ChargeCard chargeCard; - /** - * 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; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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; - /** Can create commercial issuing prepaid cards with Stripe as BIN sponsor. */ - @SerializedName("prepaid_card") - PrepaidCard prepaidCard; + /** Required. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - private Stripe( - ChargeCard chargeCard, Map extraParams, PrepaidCard prepaidCard) { - this.chargeCard = chargeCard; - this.extraParams = extraParams; - this.prepaidCard = prepaidCard; - } + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - public static Builder builder() { - return new Builder(); - } + public static Builder builder() { + return new Builder(); + } - public static class Builder { - private ChargeCard chargeCard; + public static class Builder { + private Map extraParams; - private Map extraParams; + private PspMigration pspMigration; - private PrepaidCard prepaidCard; + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.Lead + .PrepaidCard.Protections + build() { + return new AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial + .Lead.PrepaidCard.Protections(this.extraParams, this.pspMigration); + } - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.Stripe - build() { - return new AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial - .Stripe(this.chargeCard, this.extraParams, this.prepaidCard); - } + /** + * 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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.Lead.PrepaidCard.Protections#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; + } - /** Can create commercial issuing charge cards with Stripe as BIN sponsor. */ - public Builder setChargeCard( - AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.Stripe - .ChargeCard - chargeCard) { - this.chargeCard = chargeCard; - 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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.Lead.PrepaidCard.Protections#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 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 - * AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.Stripe#extraParams} - * for the field documentation. - */ - public Builder putExtraParam(String key, Object value) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.Lead + .PrepaidCard.Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } } - 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 - * AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.Stripe#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial + .Lead.PrepaidCard.Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.CardCreator.Capabilities + .Commercial.Lead.PrepaidCard.Protections.PspMigration( + this.extraParams, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.Lead.PrepaidCard.Protections.PspMigration#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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.Lead.PrepaidCard.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Stripe { + /** Can create commercial issuing charge cards with Stripe as BIN sponsor. */ + @SerializedName("charge_card") + ChargeCard chargeCard; + + /** + * 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; + + /** Can create commercial issuing prepaid cards with Stripe as BIN sponsor. */ + @SerializedName("prepaid_card") + PrepaidCard prepaidCard; + + private Stripe( + ChargeCard chargeCard, Map extraParams, PrepaidCard prepaidCard) { + this.chargeCard = chargeCard; + this.extraParams = extraParams; + this.prepaidCard = prepaidCard; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private ChargeCard chargeCard; + + private Map extraParams; + + private PrepaidCard prepaidCard; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.Stripe + build() { + return new AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial + .Stripe(this.chargeCard, this.extraParams, this.prepaidCard); + } + + /** Can create commercial issuing charge cards with Stripe as BIN sponsor. */ + public Builder setChargeCard( + AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.Stripe + .ChargeCard + chargeCard) { + this.chargeCard = chargeCard; + 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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.Stripe#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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.Stripe#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { this.extraParams = new HashMap<>(); } this.extraParams.putAll(map); @@ -1875,6 +3131,12 @@ public static class ChargeCard { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * To request a new Capability for an account, pass true. There can be a delay before * the requested Capability becomes active. @@ -1882,8 +3144,10 @@ public static class ChargeCard { @SerializedName("requested") Boolean requested; - private ChargeCard(Map extraParams, Boolean requested) { + private ChargeCard( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -1894,6 +3158,8 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ @@ -1901,7 +3167,7 @@ public static class Builder { .ChargeCard build() { return new AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial - .Stripe.ChargeCard(this.extraParams, this.requested); + .Stripe.ChargeCard(this.extraParams, this.protections, this.requested); } /** @@ -1934,6 +3200,17 @@ public Builder putAllExtraParam(Map map) { return this; } + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.Stripe + .ChargeCard.Protections + protections) { + this.protections = protections; + return this; + } + /** * To request a new Capability for an account, pass true. There can be a delay * before the requested Capability becomes active. @@ -1943,283 +3220,169 @@ public Builder setRequested(Boolean requested) { return this; } } - } - - @Getter - @EqualsAndHashCode(callSuper = false) - public static class PrepaidCard { - /** - * 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; - /** - * To request a new Capability for an account, pass true. There can be a delay before - * the requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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; - private PrepaidCard(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + /** Required. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - public static Builder builder() { - return new Builder(); - } + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - public static class Builder { - private Map extraParams; + public static Builder builder() { + return new Builder(); + } - private Boolean requested; + public static class Builder { + private Map extraParams; - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.Stripe - .PrepaidCard - build() { - return new AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial - .Stripe.PrepaidCard(this.extraParams, this.requested); - } + private PspMigration pspMigration; - /** - * 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 - * AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.Stripe.PrepaidCard#extraParams} - * for the field documentation. - */ - public Builder putExtraParam(String key, Object value) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial + .Stripe.ChargeCard.Protections + build() { + return new AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial + .Stripe.ChargeCard.Protections(this.extraParams, this.pspMigration); } - 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 - * AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.Stripe.PrepaidCard#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** + * 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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.Stripe.ChargeCard.Protections#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; } - this.extraParams.putAll(map); - return this; - } - /** - * To request a new Capability for an account, pass true. There can be a delay - * before the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; - } - } - } - } - } - - @Getter - @EqualsAndHashCode(callSuper = false) - public static class Consumer { - /** Can create consumer issuing cards with Celtic as BIN sponsor. */ - @SerializedName("celtic") - Celtic celtic; - - /** Can create consumer issuing cards with Cross River Bank as BIN sponsor. */ - @SerializedName("cross_river_bank") - CrossRiverBank crossRiverBank; - - /** - * 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; - - /** Can create consumer issuing cards with Lead as BIN sponsor. */ - @SerializedName("lead") - Lead lead; - - private Consumer( - Celtic celtic, - CrossRiverBank crossRiverBank, - Map extraParams, - Lead lead) { - this.celtic = celtic; - this.crossRiverBank = crossRiverBank; - this.extraParams = extraParams; - this.lead = lead; - } - - public static Builder builder() { - return new Builder(); - } - - public static class Builder { - private Celtic celtic; - - private CrossRiverBank crossRiverBank; - - private Map extraParams; - - private Lead lead; - - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer build() { - return new AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer( - this.celtic, this.crossRiverBank, this.extraParams, this.lead); - } - - /** Can create consumer issuing cards with Celtic as BIN sponsor. */ - public Builder setCeltic( - AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Celtic celtic) { - this.celtic = celtic; - return this; - } - - /** Can create consumer issuing cards with Cross River Bank as BIN sponsor. */ - public Builder setCrossRiverBank( - AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.CrossRiverBank - crossRiverBank) { - this.crossRiverBank = crossRiverBank; - 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 - * AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer#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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.Stripe.ChargeCard.Protections#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 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 - * AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.Stripe + .ChargeCard.Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } - /** Can create consumer issuing cards with Lead as BIN sponsor. */ - public Builder setLead( - AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Lead lead) { - this.lead = lead; - return this; - } - } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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; - @Getter - @EqualsAndHashCode(callSuper = false) - public static class Celtic { - /** - * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; - /** Can create consumer issuing revolving credit cards with Celtic as BIN sponsor. */ - @SerializedName("revolving_credit_card") - RevolvingCreditCard revolvingCreditCard; + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } - private Celtic( - Map extraParams, RevolvingCreditCard revolvingCreditCard) { - this.extraParams = extraParams; - this.revolvingCreditCard = revolvingCreditCard; - } + public static Builder builder() { + return new Builder(); + } - public static Builder builder() { - return new Builder(); - } + public static class Builder { + private Map extraParams; - public static class Builder { - private Map extraParams; + private Boolean requested; - private RevolvingCreditCard revolvingCreditCard; + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial + .Stripe.ChargeCard.Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.CardCreator.Capabilities + .Commercial.Stripe.ChargeCard.Protections.PspMigration( + this.extraParams, this.requested); + } - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Celtic - build() { - return new AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer - .Celtic(this.extraParams, this.revolvingCreditCard); - } + /** + * 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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.Stripe.ChargeCard.Protections.PspMigration#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 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 - * AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Celtic#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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.Stripe.ChargeCard.Protections.PspMigration#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 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 - * AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Celtic#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** Required. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } } - this.extraParams.putAll(map); - return this; - } - - /** Can create consumer issuing revolving credit cards with Celtic as BIN sponsor. */ - public Builder setRevolvingCreditCard( - AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Celtic - .RevolvingCreditCard - revolvingCreditCard) { - this.revolvingCreditCard = revolvingCreditCard; - return this; } } @Getter @EqualsAndHashCode(callSuper = false) - public static class RevolvingCreditCard { + public static class PrepaidCard { /** * 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 @@ -2230,6 +3393,12 @@ public static class RevolvingCreditCard { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * To request a new Capability for an account, pass true. There can be a delay before * the requested Capability becomes active. @@ -2237,8 +3406,10 @@ public static class RevolvingCreditCard { @SerializedName("requested") Boolean requested; - private RevolvingCreditCard(Map extraParams, Boolean requested) { + private PrepaidCard( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -2249,21 +3420,23 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Celtic - .RevolvingCreditCard + public AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.Stripe + .PrepaidCard build() { - return new AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer - .Celtic.RevolvingCreditCard(this.extraParams, this.requested); + return new AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial + .Stripe.PrepaidCard(this.extraParams, this.protections, this.requested); } /** * 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 - * AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Celtic.RevolvingCreditCard#extraParams} + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.Stripe.PrepaidCard#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -2278,7 +3451,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Celtic.RevolvingCreditCard#extraParams} + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.Stripe.PrepaidCard#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -2289,6 +3462,17 @@ public Builder putAllExtraParam(Map map) { return this; } + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.Stripe + .PrepaidCard.Protections + protections) { + this.protections = protections; + return this; + } + /** * To request a new Capability for an account, pass true. There can be a delay * before the requested Capability becomes active. @@ -2298,12 +3482,279 @@ public Builder setRequested(Boolean requested) { return this; } } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial + .Stripe.PrepaidCard.Protections + build() { + return new AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial + .Stripe.PrepaidCard.Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.Stripe.PrepaidCard.Protections#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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.Stripe.PrepaidCard.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.Stripe + .PrepaidCard.Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial + .Stripe.PrepaidCard.Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.CardCreator.Capabilities + .Commercial.Stripe.PrepaidCard.Protections.PspMigration( + this.extraParams, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.Stripe.PrepaidCard.Protections.PspMigration#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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Commercial.Stripe.PrepaidCard.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Consumer { + /** Can create consumer issuing cards with Celtic as BIN sponsor. */ + @SerializedName("celtic") + Celtic celtic; + + /** Can create consumer issuing cards with Cross River Bank as BIN sponsor. */ + @SerializedName("cross_river_bank") + CrossRiverBank crossRiverBank; + + /** + * 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; + + /** Can create consumer issuing cards with Lead as BIN sponsor. */ + @SerializedName("lead") + Lead lead; + + private Consumer( + Celtic celtic, + CrossRiverBank crossRiverBank, + Map extraParams, + Lead lead) { + this.celtic = celtic; + this.crossRiverBank = crossRiverBank; + this.extraParams = extraParams; + this.lead = lead; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Celtic celtic; + + private CrossRiverBank crossRiverBank; + + private Map extraParams; + + private Lead lead; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer build() { + return new AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer( + this.celtic, this.crossRiverBank, this.extraParams, this.lead); + } + + /** Can create consumer issuing cards with Celtic as BIN sponsor. */ + public Builder setCeltic( + AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Celtic celtic) { + this.celtic = celtic; + return this; + } + + /** Can create consumer issuing cards with Cross River Bank as BIN sponsor. */ + public Builder setCrossRiverBank( + AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.CrossRiverBank + crossRiverBank) { + this.crossRiverBank = crossRiverBank; + 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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer#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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer#extraParams} for + * the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Can create consumer issuing cards with Lead as BIN sponsor. */ + public Builder setLead( + AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Lead lead) { + this.lead = lead; + return this; } } @Getter @EqualsAndHashCode(callSuper = false) - public static class CrossRiverBank { + public static class Celtic { /** * 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} @@ -2314,13 +3765,14 @@ public static class CrossRiverBank { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** Can create consumer issuing prepaid cards with Cross River Bank as BIN sponsor. */ - @SerializedName("prepaid_card") - PrepaidCard prepaidCard; + /** Can create consumer issuing revolving credit cards with Celtic as BIN sponsor. */ + @SerializedName("revolving_credit_card") + RevolvingCreditCard revolvingCreditCard; - private CrossRiverBank(Map extraParams, PrepaidCard prepaidCard) { + private Celtic( + Map extraParams, RevolvingCreditCard revolvingCreditCard) { this.extraParams = extraParams; - this.prepaidCard = prepaidCard; + this.revolvingCreditCard = revolvingCreditCard; } public static Builder builder() { @@ -2330,21 +3782,20 @@ public static Builder builder() { public static class Builder { private Map extraParams; - private PrepaidCard prepaidCard; + private RevolvingCreditCard revolvingCreditCard; /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer - .CrossRiverBank + public AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Celtic build() { return new AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer - .CrossRiverBank(this.extraParams, this.prepaidCard); + .Celtic(this.extraParams, this.revolvingCreditCard); } /** * 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 - * AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.CrossRiverBank#extraParams} + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Celtic#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -2359,7 +3810,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.CrossRiverBank#extraParams} + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Celtic#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -2370,19 +3821,19 @@ public Builder putAllExtraParam(Map map) { return this; } - /** Can create consumer issuing prepaid cards with Cross River Bank as BIN sponsor. */ - public Builder setPrepaidCard( - AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.CrossRiverBank - .PrepaidCard - prepaidCard) { - this.prepaidCard = prepaidCard; + /** Can create consumer issuing revolving credit cards with Celtic as BIN sponsor. */ + public Builder setRevolvingCreditCard( + AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Celtic + .RevolvingCreditCard + revolvingCreditCard) { + this.revolvingCreditCard = revolvingCreditCard; return this; } } @Getter @EqualsAndHashCode(callSuper = false) - public static class PrepaidCard { + public static class RevolvingCreditCard { /** * 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 @@ -2393,6 +3844,12 @@ public static class PrepaidCard { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * To request a new Capability for an account, pass true. There can be a delay before * the requested Capability becomes active. @@ -2400,8 +3857,10 @@ public static class PrepaidCard { @SerializedName("requested") Boolean requested; - private PrepaidCard(Map extraParams, Boolean requested) { + private RevolvingCreditCard( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -2412,21 +3871,24 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer - .CrossRiverBank.PrepaidCard + public AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Celtic + .RevolvingCreditCard build() { return new AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer - .CrossRiverBank.PrepaidCard(this.extraParams, this.requested); + .Celtic.RevolvingCreditCard( + this.extraParams, this.protections, this.requested); } /** * 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 - * AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.CrossRiverBank.PrepaidCard#extraParams} + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Celtic.RevolvingCreditCard#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -2441,7 +3903,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.CrossRiverBank.PrepaidCard#extraParams} + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Celtic.RevolvingCreditCard#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -2452,6 +3914,17 @@ public Builder putAllExtraParam(Map map) { return this; } + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Celtic + .RevolvingCreditCard.Protections + protections) { + this.protections = protections; + return this; + } + /** * To request a new Capability for an account, pass true. There can be a delay * before the requested Capability becomes active. @@ -2461,16 +3934,171 @@ public Builder setRequested(Boolean requested) { return this; } } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Celtic + .RevolvingCreditCard.Protections + build() { + return new AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer + .Celtic.RevolvingCreditCard.Protections( + this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Celtic.RevolvingCreditCard.Protections#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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Celtic.RevolvingCreditCard.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Celtic + .RevolvingCreditCard.Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer + .Celtic.RevolvingCreditCard.Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer + .Celtic.RevolvingCreditCard.Protections.PspMigration( + this.extraParams, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Celtic.RevolvingCreditCard.Protections.PspMigration#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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Celtic.RevolvingCreditCard.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } } } @Getter @EqualsAndHashCode(callSuper = false) - public static class Lead { - /** Can create consumer issuing debit cards with Lead as BIN sponsor. */ - @SerializedName("debit_card") - DebitCard debitCard; - + public static class CrossRiverBank { /** * 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} @@ -2481,13 +4109,11 @@ public static class Lead { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** Can create consumer issuing prepaid cards with Lead as BIN sponsor. */ + /** Can create consumer issuing prepaid cards with Cross River Bank as BIN sponsor. */ @SerializedName("prepaid_card") PrepaidCard prepaidCard; - private Lead( - DebitCard debitCard, Map extraParams, PrepaidCard prepaidCard) { - this.debitCard = debitCard; + private CrossRiverBank(Map extraParams, PrepaidCard prepaidCard) { this.extraParams = extraParams; this.prepaidCard = prepaidCard; } @@ -2497,32 +4123,23 @@ public static Builder builder() { } public static class Builder { - private DebitCard debitCard; - private Map extraParams; private PrepaidCard prepaidCard; /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Lead + public AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer + .CrossRiverBank build() { - return new AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Lead( - this.debitCard, this.extraParams, this.prepaidCard); - } - - /** Can create consumer issuing debit cards with Lead as BIN sponsor. */ - public Builder setDebitCard( - AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Lead.DebitCard - debitCard) { - this.debitCard = debitCard; - return this; + return new AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer + .CrossRiverBank(this.extraParams, this.prepaidCard); } /** * 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 - * AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Lead#extraParams} + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.CrossRiverBank#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -2537,7 +4154,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Lead#extraParams} + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.CrossRiverBank#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -2548,9 +4165,9 @@ public Builder putAllExtraParam(Map map) { return this; } - /** Can create consumer issuing prepaid cards with Lead as BIN sponsor. */ + /** Can create consumer issuing prepaid cards with Cross River Bank as BIN sponsor. */ public Builder setPrepaidCard( - AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Lead + AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.CrossRiverBank .PrepaidCard prepaidCard) { this.prepaidCard = prepaidCard; @@ -2560,7 +4177,7 @@ public Builder setPrepaidCard( @Getter @EqualsAndHashCode(callSuper = false) - public static class DebitCard { + public static class PrepaidCard { /** * 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 @@ -2571,6 +4188,12 @@ public static class DebitCard { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + /** * To request a new Capability for an account, pass true. There can be a delay before * the requested Capability becomes active. @@ -2578,8 +4201,10 @@ public static class DebitCard { @SerializedName("requested") Boolean requested; - private DebitCard(Map extraParams, Boolean requested) { + private PrepaidCard( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -2590,21 +4215,24 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Lead - .DebitCard + public AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer + .CrossRiverBank.PrepaidCard build() { return new AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer - .Lead.DebitCard(this.extraParams, this.requested); + .CrossRiverBank.PrepaidCard( + this.extraParams, this.protections, this.requested); } /** * 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 - * AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Lead.DebitCard#extraParams} + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.CrossRiverBank.PrepaidCard#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -2619,7 +4247,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Lead.DebitCard#extraParams} + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.CrossRiverBank.PrepaidCard#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -2630,6 +4258,17 @@ public Builder putAllExtraParam(Map map) { return this; } + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer + .CrossRiverBank.PrepaidCard.Protections + protections) { + this.protections = protections; + return this; + } + /** * To request a new Capability for an account, pass true. There can be a delay * before the requested Capability becomes active. @@ -2639,55 +4278,319 @@ public Builder setRequested(Boolean requested) { return this; } } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class PrepaidCard { - /** - * 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; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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; - /** - * To request a new Capability for an account, pass true. There can be a delay before - * the requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + /** Required. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - private PrepaidCard(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - public static Builder builder() { - return new Builder(); - } + public static Builder builder() { + return new Builder(); + } - public static class Builder { - private Map extraParams; + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer + .CrossRiverBank.PrepaidCard.Protections + build() { + return new AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer + .CrossRiverBank.PrepaidCard.Protections( + this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.CrossRiverBank.PrepaidCard.Protections#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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.CrossRiverBank.PrepaidCard.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer + .CrossRiverBank.PrepaidCard.Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer + .CrossRiverBank.PrepaidCard.Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer + .CrossRiverBank.PrepaidCard.Protections.PspMigration( + this.extraParams, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.CrossRiverBank.PrepaidCard.Protections.PspMigration#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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.CrossRiverBank.PrepaidCard.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Lead { + /** Can create consumer issuing debit cards with Lead as BIN sponsor. */ + @SerializedName("debit_card") + DebitCard debitCard; + + /** + * 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; + + /** Can create consumer issuing prepaid cards with Lead as BIN sponsor. */ + @SerializedName("prepaid_card") + PrepaidCard prepaidCard; + + private Lead( + DebitCard debitCard, Map extraParams, PrepaidCard prepaidCard) { + this.debitCard = debitCard; + this.extraParams = extraParams; + this.prepaidCard = prepaidCard; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private DebitCard debitCard; + + private Map extraParams; + + private PrepaidCard prepaidCard; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Lead + build() { + return new AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Lead( + this.debitCard, this.extraParams, this.prepaidCard); + } + + /** Can create consumer issuing debit cards with Lead as BIN sponsor. */ + public Builder setDebitCard( + AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Lead.DebitCard + debitCard) { + this.debitCard = debitCard; + 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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Lead#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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Lead#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Can create consumer issuing prepaid cards with Lead as BIN sponsor. */ + public Builder setPrepaidCard( + AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Lead + .PrepaidCard + prepaidCard) { + this.prepaidCard = prepaidCard; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class DebitCard { + /** + * 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; + + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + @SerializedName("protections") + Protections protections; + + /** + * To request a new Capability for an account, pass true. There can be a delay before + * the requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private DebitCard( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ public AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Lead - .PrepaidCard + .DebitCard build() { return new AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer - .Lead.PrepaidCard(this.extraParams, this.requested); + .Lead.DebitCard(this.extraParams, this.protections, this.requested); } /** * 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 - * AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Lead.PrepaidCard#extraParams} + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Lead.DebitCard#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -2702,7 +4605,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Lead.PrepaidCard#extraParams} + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Lead.DebitCard#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -2713,6 +4616,17 @@ public Builder putAllExtraParam(Map map) { return this; } + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Lead + .DebitCard.Protections + protections) { + this.protections = protections; + return this; + } + /** * To request a new Capability for an account, pass true. There can be a delay * before the requested Capability becomes active. @@ -2722,527 +4636,10473 @@ public Builder setRequested(Boolean requested) { return this; } } - } - } - } - } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class Customer { - /** - * Represents the state of the configuration, and can be updated to deactivate or re-apply a - * configuration. - */ - @SerializedName("applied") - Boolean applied; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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; - /** - * Automatic indirect tax settings to be used when automatic tax calculation is enabled on the - * customer's invoices, subscriptions, checkout sessions, or payment links. Surfaces if - * automatic tax calculation is possible given the current customer location information. - */ - @SerializedName("automatic_indirect_tax") - AutomaticIndirectTax automaticIndirectTax; + /** Required. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - /** - * Billing settings - default settings used for this customer in Billing flows such as - * Invoices and Subscriptions. - */ - @SerializedName("billing") - Billing billing; + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - /** Capabilities that have been requested on the Customer Configuration. */ - @SerializedName("capabilities") - Capabilities capabilities; + public static Builder builder() { + return new Builder(); + } - /** - * 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; + public static class Builder { + private Map extraParams; - /** The customer's shipping information. Appears on invoices emailed to this customer. */ - @SerializedName("shipping") - Shipping shipping; + private PspMigration pspMigration; - /** - * ID of the test clock to attach to the customer. Can only be set on testmode Accounts, and - * when the Customer Configuration is first set on an Account. - */ - @SerializedName("test_clock") - Object testClock; + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Lead + .DebitCard.Protections + build() { + return new AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer + .Lead.DebitCard.Protections(this.extraParams, this.pspMigration); + } - private Customer( - Boolean applied, - AutomaticIndirectTax automaticIndirectTax, - Billing billing, - Capabilities capabilities, - Map extraParams, - Shipping shipping, - Object testClock) { - this.applied = applied; - this.automaticIndirectTax = automaticIndirectTax; - this.billing = billing; - this.capabilities = capabilities; - this.extraParams = extraParams; - this.shipping = shipping; - this.testClock = testClock; - } + /** + * 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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Lead.DebitCard.Protections#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; + } - public static Builder builder() { - return new Builder(); - } + /** + * 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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Lead.DebitCard.Protections#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - public static class Builder { - private Boolean applied; + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Lead + .DebitCard.Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } - private AutomaticIndirectTax automaticIndirectTax; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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; - private Billing billing; + /** Required. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; - private Capabilities capabilities; + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } - private Map extraParams; + public static Builder builder() { + return new Builder(); + } - private Shipping shipping; + public static class Builder { + private Map extraParams; - private Object testClock; + private Boolean requested; - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Customer build() { - return new AccountUpdateParams.Configuration.Customer( - this.applied, - this.automaticIndirectTax, - this.billing, - this.capabilities, - this.extraParams, - this.shipping, - this.testClock); - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Lead + .DebitCard.Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer + .Lead.DebitCard.Protections.PspMigration( + this.extraParams, this.requested); + } - /** - * Represents the state of the configuration, and can be updated to deactivate or re-apply a - * configuration. - */ - public Builder setApplied(Boolean applied) { - this.applied = applied; - 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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Lead.DebitCard.Protections.PspMigration#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; + } - /** - * Automatic indirect tax settings to be used when automatic tax calculation is enabled on - * the customer's invoices, subscriptions, checkout sessions, or payment links. Surfaces if - * automatic tax calculation is possible given the current customer location information. - */ - public Builder setAutomaticIndirectTax( - AccountUpdateParams.Configuration.Customer.AutomaticIndirectTax automaticIndirectTax) { - this.automaticIndirectTax = automaticIndirectTax; - 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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Lead.DebitCard.Protections.PspMigration#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - /** - * Billing settings - default settings used for this customer in Billing flows such as - * Invoices and Subscriptions. - */ - public Builder setBilling(AccountUpdateParams.Configuration.Customer.Billing billing) { - this.billing = billing; - return this; - } + /** Required. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } - /** Capabilities that have been requested on the Customer Configuration. */ - public Builder setCapabilities( - AccountUpdateParams.Configuration.Customer.Capabilities capabilities) { - this.capabilities = capabilities; - return this; - } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PrepaidCard { + /** + * 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; - /** - * 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 AccountUpdateParams.Configuration.Customer#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; - } + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + @SerializedName("protections") + Protections protections; - /** - * 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 AccountUpdateParams.Configuration.Customer#extraParams} for the field - * documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); - } - this.extraParams.putAll(map); - return this; - } + /** + * To request a new Capability for an account, pass true. There can be a delay before + * the requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; - /** The customer's shipping information. Appears on invoices emailed to this customer. */ - public Builder setShipping(AccountUpdateParams.Configuration.Customer.Shipping shipping) { - this.shipping = shipping; + private PrepaidCard( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Lead + .PrepaidCard + build() { + return new AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer + .Lead.PrepaidCard(this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Lead.PrepaidCard#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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Lead.PrepaidCard#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Lead + .PrepaidCard.Protections + protections) { + this.protections = protections; + return this; + } + + /** + * To request a new Capability for an account, pass true. There can be a delay + * before the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Lead + .PrepaidCard.Protections + build() { + return new AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer + .Lead.PrepaidCard.Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Lead.PrepaidCard.Protections#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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Lead.PrepaidCard.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Lead + .PrepaidCard.Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Lead + .PrepaidCard.Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer + .Lead.PrepaidCard.Protections.PspMigration( + this.extraParams, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Lead.PrepaidCard.Protections.PspMigration#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 + * AccountUpdateParams.Configuration.CardCreator.Capabilities.Consumer.Lead.PrepaidCard.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Customer { + /** + * Represents the state of the configuration, and can be updated to deactivate or re-apply a + * configuration. + */ + @SerializedName("applied") + Boolean applied; + + /** + * Automatic indirect tax settings to be used when automatic tax calculation is enabled on the + * customer's invoices, subscriptions, checkout sessions, or payment links. Surfaces if + * automatic tax calculation is possible given the current customer location information. + */ + @SerializedName("automatic_indirect_tax") + AutomaticIndirectTax automaticIndirectTax; + + /** + * Billing settings - default settings used for this customer in Billing flows such as + * Invoices and Subscriptions. + */ + @SerializedName("billing") + Billing billing; + + /** Capabilities that have been requested on the Customer Configuration. */ + @SerializedName("capabilities") + Capabilities capabilities; + + /** + * 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 customer's shipping information. Appears on invoices emailed to this customer. */ + @SerializedName("shipping") + Shipping shipping; + + /** + * ID of the test clock to attach to the customer. Can only be set on testmode Accounts, and + * when the Customer Configuration is first set on an Account. + */ + @SerializedName("test_clock") + Object testClock; + + private Customer( + Boolean applied, + AutomaticIndirectTax automaticIndirectTax, + Billing billing, + Capabilities capabilities, + Map extraParams, + Shipping shipping, + Object testClock) { + this.applied = applied; + this.automaticIndirectTax = automaticIndirectTax; + this.billing = billing; + this.capabilities = capabilities; + this.extraParams = extraParams; + this.shipping = shipping; + this.testClock = testClock; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Boolean applied; + + private AutomaticIndirectTax automaticIndirectTax; + + private Billing billing; + + private Capabilities capabilities; + + private Map extraParams; + + private Shipping shipping; + + private Object testClock; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Customer build() { + return new AccountUpdateParams.Configuration.Customer( + this.applied, + this.automaticIndirectTax, + this.billing, + this.capabilities, + this.extraParams, + this.shipping, + this.testClock); + } + + /** + * Represents the state of the configuration, and can be updated to deactivate or re-apply a + * configuration. + */ + public Builder setApplied(Boolean applied) { + this.applied = applied; + return this; + } + + /** + * Automatic indirect tax settings to be used when automatic tax calculation is enabled on + * the customer's invoices, subscriptions, checkout sessions, or payment links. Surfaces if + * automatic tax calculation is possible given the current customer location information. + */ + public Builder setAutomaticIndirectTax( + AccountUpdateParams.Configuration.Customer.AutomaticIndirectTax automaticIndirectTax) { + this.automaticIndirectTax = automaticIndirectTax; + return this; + } + + /** + * Billing settings - default settings used for this customer in Billing flows such as + * Invoices and Subscriptions. + */ + public Builder setBilling(AccountUpdateParams.Configuration.Customer.Billing billing) { + this.billing = billing; + return this; + } + + /** Capabilities that have been requested on the Customer Configuration. */ + public Builder setCapabilities( + AccountUpdateParams.Configuration.Customer.Capabilities capabilities) { + this.capabilities = capabilities; + 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 AccountUpdateParams.Configuration.Customer#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 AccountUpdateParams.Configuration.Customer#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 customer's shipping information. Appears on invoices emailed to this customer. */ + public Builder setShipping(AccountUpdateParams.Configuration.Customer.Shipping shipping) { + this.shipping = shipping; + return this; + } + + /** + * ID of the test clock to attach to the customer. Can only be set on testmode Accounts, and + * when the Customer Configuration is first set on an Account. + */ + public Builder setTestClock(String testClock) { + this.testClock = testClock; + return this; + } + + /** + * ID of the test clock to attach to the customer. Can only be set on testmode Accounts, and + * when the Customer Configuration is first set on an Account. + */ + public Builder setTestClock(EmptyParam testClock) { + this.testClock = testClock; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class AutomaticIndirectTax { + /** + * The customer account's tax exemption status: {@code none}, {@code exempt}, or {@code + * reverse}. When {@code reverse}, invoice and receipt PDFs include "Reverse + * charge". + */ + @SerializedName("exempt") + Exempt exempt; + + /** + * 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 recent IP address of the customer used for tax reporting and tax location inference. + */ + @SerializedName("ip_address") + Object ipAddress; + + /** + * Data source used to identify the customer account's tax location. Defaults to {@code + * identity_address}. Used for automatic indirect tax calculation. + */ + @SerializedName("location_source") + LocationSource locationSource; + + /** + * A per-request flag that indicates when Stripe should validate the customer tax location - + * defaults to {@code auto}. + */ + @SerializedName("validate_location") + ValidateLocation validateLocation; + + private AutomaticIndirectTax( + Exempt exempt, + Map extraParams, + Object ipAddress, + LocationSource locationSource, + ValidateLocation validateLocation) { + this.exempt = exempt; + this.extraParams = extraParams; + this.ipAddress = ipAddress; + this.locationSource = locationSource; + this.validateLocation = validateLocation; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Exempt exempt; + + private Map extraParams; + + private Object ipAddress; + + private LocationSource locationSource; + + private ValidateLocation validateLocation; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Customer.AutomaticIndirectTax build() { + return new AccountUpdateParams.Configuration.Customer.AutomaticIndirectTax( + this.exempt, + this.extraParams, + this.ipAddress, + this.locationSource, + this.validateLocation); + } + + /** + * The customer account's tax exemption status: {@code none}, {@code exempt}, or {@code + * reverse}. When {@code reverse}, invoice and receipt PDFs include "Reverse + * charge". + */ + public Builder setExempt( + AccountUpdateParams.Configuration.Customer.AutomaticIndirectTax.Exempt exempt) { + this.exempt = exempt; + 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 + * AccountUpdateParams.Configuration.Customer.AutomaticIndirectTax#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 + * AccountUpdateParams.Configuration.Customer.AutomaticIndirectTax#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 recent IP address of the customer used for tax reporting and tax location inference. + */ + public Builder setIpAddress(String ipAddress) { + this.ipAddress = ipAddress; + return this; + } + + /** + * A recent IP address of the customer used for tax reporting and tax location inference. + */ + public Builder setIpAddress(EmptyParam ipAddress) { + this.ipAddress = ipAddress; + return this; + } + + /** + * Data source used to identify the customer account's tax location. Defaults to {@code + * identity_address}. Used for automatic indirect tax calculation. + */ + public Builder setLocationSource( + AccountUpdateParams.Configuration.Customer.AutomaticIndirectTax.LocationSource + locationSource) { + this.locationSource = locationSource; + return this; + } + + /** + * A per-request flag that indicates when Stripe should validate the customer tax location + * - defaults to {@code auto}. + */ + public Builder setValidateLocation( + AccountUpdateParams.Configuration.Customer.AutomaticIndirectTax.ValidateLocation + validateLocation) { + this.validateLocation = validateLocation; + return this; + } + } + + public enum Exempt implements ApiRequestParams.EnumParam { + @SerializedName("exempt") + EXEMPT("exempt"), + + @SerializedName("none") + NONE("none"), + + @SerializedName("reverse") + REVERSE("reverse"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + Exempt(String value) { + this.value = value; + } + } + + public enum LocationSource implements ApiRequestParams.EnumParam { + @SerializedName("identity_address") + IDENTITY_ADDRESS("identity_address"), + + @SerializedName("ip_address") + IP_ADDRESS("ip_address"), + + @SerializedName("payment_method") + PAYMENT_METHOD("payment_method"), + + @SerializedName("shipping_address") + SHIPPING_ADDRESS("shipping_address"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + LocationSource(String value) { + this.value = value; + } + } + + public enum ValidateLocation implements ApiRequestParams.EnumParam { + @SerializedName("auto") + AUTO("auto"), + + @SerializedName("deferred") + DEFERRED("deferred"), + + @SerializedName("immediately") + IMMEDIATELY("immediately"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + ValidateLocation(String value) { + this.value = value; + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Billing { + /** + * The ID of a {@code PaymentMethod} attached to this Account's {@code customer} + * configuration, used as the default payment method for invoices and subscriptions. + */ + @SerializedName("default_payment_method") + Object defaultPaymentMethod; + + /** + * 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; + + /** Default invoice settings for the customer account. */ + @SerializedName("invoice") + Invoice invoice; + + private Billing( + Object defaultPaymentMethod, Map extraParams, Invoice invoice) { + this.defaultPaymentMethod = defaultPaymentMethod; + this.extraParams = extraParams; + this.invoice = invoice; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Object defaultPaymentMethod; + + private Map extraParams; + + private Invoice invoice; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Customer.Billing build() { + return new AccountUpdateParams.Configuration.Customer.Billing( + this.defaultPaymentMethod, this.extraParams, this.invoice); + } + + /** + * The ID of a {@code PaymentMethod} attached to this Account's {@code customer} + * configuration, used as the default payment method for invoices and subscriptions. + */ + public Builder setDefaultPaymentMethod(String defaultPaymentMethod) { + this.defaultPaymentMethod = defaultPaymentMethod; + return this; + } + + /** + * The ID of a {@code PaymentMethod} attached to this Account's {@code customer} + * configuration, used as the default payment method for invoices and subscriptions. + */ + public Builder setDefaultPaymentMethod(EmptyParam defaultPaymentMethod) { + this.defaultPaymentMethod = defaultPaymentMethod; + 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 AccountUpdateParams.Configuration.Customer.Billing#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 AccountUpdateParams.Configuration.Customer.Billing#extraParams} for the + * field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Default invoice settings for the customer account. */ + public Builder setInvoice( + AccountUpdateParams.Configuration.Customer.Billing.Invoice invoice) { + this.invoice = invoice; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Invoice { + /** + * The list of up to 4 default custom fields to be displayed on invoices for this + * customer. + */ + @SerializedName("custom_fields") + List customFields; + + /** + * 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; + + /** Default invoice footer. */ + @SerializedName("footer") + Object footer; + + /** Sequence number to use on the customer account's next invoice. Defaults to 1. */ + @SerializedName("next_sequence") + Long nextSequence; + + /** + * Prefix used to generate unique invoice numbers. Must be 3-12 uppercase letters or + * numbers. + */ + @SerializedName("prefix") + Object prefix; + + /** Default invoice PDF rendering options. */ + @SerializedName("rendering") + Rendering rendering; + + private Invoice( + List + customFields, + Map extraParams, + Object footer, + Long nextSequence, + Object prefix, + Rendering rendering) { + this.customFields = customFields; + this.extraParams = extraParams; + this.footer = footer; + this.nextSequence = nextSequence; + this.prefix = prefix; + this.rendering = rendering; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private List + customFields; + + private Map extraParams; + + private Object footer; + + private Long nextSequence; + + private Object prefix; + + private Rendering rendering; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Customer.Billing.Invoice build() { + return new AccountUpdateParams.Configuration.Customer.Billing.Invoice( + this.customFields, + this.extraParams, + this.footer, + this.nextSequence, + this.prefix, + this.rendering); + } + + /** + * Add an element to `customFields` list. A list is initialized for the first + * `add/addAll` call, and subsequent calls adds additional elements to the original + * list. See {@link + * AccountUpdateParams.Configuration.Customer.Billing.Invoice#customFields} for the + * field documentation. + */ + public Builder addCustomField( + AccountUpdateParams.Configuration.Customer.Billing.Invoice.CustomField element) { + if (this.customFields == null) { + this.customFields = new ArrayList<>(); + } + this.customFields.add(element); + return this; + } + + /** + * Add all elements to `customFields` list. A list is initialized for the first + * `add/addAll` call, and subsequent calls adds additional elements to the original + * list. See {@link + * AccountUpdateParams.Configuration.Customer.Billing.Invoice#customFields} for the + * field documentation. + */ + public Builder addAllCustomField( + List + elements) { + if (this.customFields == null) { + this.customFields = new ArrayList<>(); + } + this.customFields.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 + * AccountUpdateParams.Configuration.Customer.Billing.Invoice#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 + * AccountUpdateParams.Configuration.Customer.Billing.Invoice#extraParams} for the field + * documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Default invoice footer. */ + public Builder setFooter(String footer) { + this.footer = footer; + return this; + } + + /** Default invoice footer. */ + public Builder setFooter(EmptyParam footer) { + this.footer = footer; + return this; + } + + /** Sequence number to use on the customer account's next invoice. Defaults to 1. */ + public Builder setNextSequence(Long nextSequence) { + this.nextSequence = nextSequence; + return this; + } + + /** + * Prefix used to generate unique invoice numbers. Must be 3-12 uppercase letters or + * numbers. + */ + public Builder setPrefix(String prefix) { + this.prefix = prefix; + return this; + } + + /** + * Prefix used to generate unique invoice numbers. Must be 3-12 uppercase letters or + * numbers. + */ + public Builder setPrefix(EmptyParam prefix) { + this.prefix = prefix; + return this; + } + + /** Default invoice PDF rendering options. */ + public Builder setRendering( + AccountUpdateParams.Configuration.Customer.Billing.Invoice.Rendering rendering) { + this.rendering = rendering; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class CustomField { + /** + * 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. The name of the custom field. This may be up to 40 + * characters. + */ + @SerializedName("name") + Object name; + + /** + * Required. The value of the custom field. This may be up to 140 + * characters. When updating, pass an empty string to remove previously-defined values. + */ + @SerializedName("value") + Object value; + + private CustomField(Map extraParams, Object name, Object value) { + this.extraParams = extraParams; + this.name = name; + this.value = value; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Object name; + + private Object value; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Customer.Billing.Invoice.CustomField + build() { + return new AccountUpdateParams.Configuration.Customer.Billing.Invoice.CustomField( + this.extraParams, this.name, this.value); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Customer.Billing.Invoice.CustomField#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 + * AccountUpdateParams.Configuration.Customer.Billing.Invoice.CustomField#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. The name of the custom field. This may be up to 40 + * characters. + */ + public Builder setName(String name) { + this.name = name; + return this; + } + + /** + * Required. The name of the custom field. This may be up to 40 + * characters. + */ + public Builder setName(EmptyParam name) { + this.name = name; + return this; + } + + /** + * Required. The value of the custom field. This may be up to 140 + * characters. When updating, pass an empty string to remove previously-defined + * values. + */ + public Builder setValue(String value) { + this.value = value; + return this; + } + + /** + * Required. The value of the custom field. This may be up to 140 + * characters. When updating, pass an empty string to remove previously-defined + * values. + */ + public Builder setValue(EmptyParam value) { + this.value = value; + return this; + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Rendering { + /** + * Indicates whether displayed line item prices and amounts on invoice PDFs include + * inclusive tax amounts. Must be either {@code include_inclusive_tax} or {@code + * exclude_tax}. + */ + @SerializedName("amount_tax_display") + AmountTaxDisplay amountTaxDisplay; + + /** + * 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; + + /** ID of the invoice rendering template to use for future invoices. */ + @SerializedName("template") + Object template; + + private Rendering( + AmountTaxDisplay amountTaxDisplay, + Map extraParams, + Object template) { + this.amountTaxDisplay = amountTaxDisplay; + this.extraParams = extraParams; + this.template = template; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private AmountTaxDisplay amountTaxDisplay; + + private Map extraParams; + + private Object template; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Customer.Billing.Invoice.Rendering build() { + return new AccountUpdateParams.Configuration.Customer.Billing.Invoice.Rendering( + this.amountTaxDisplay, this.extraParams, this.template); + } + + /** + * Indicates whether displayed line item prices and amounts on invoice PDFs include + * inclusive tax amounts. Must be either {@code include_inclusive_tax} or {@code + * exclude_tax}. + */ + public Builder setAmountTaxDisplay( + AccountUpdateParams.Configuration.Customer.Billing.Invoice.Rendering + .AmountTaxDisplay + amountTaxDisplay) { + this.amountTaxDisplay = amountTaxDisplay; + 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 + * AccountUpdateParams.Configuration.Customer.Billing.Invoice.Rendering#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 + * AccountUpdateParams.Configuration.Customer.Billing.Invoice.Rendering#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** ID of the invoice rendering template to use for future invoices. */ + public Builder setTemplate(String template) { + this.template = template; + return this; + } + + /** ID of the invoice rendering template to use for future invoices. */ + public Builder setTemplate(EmptyParam template) { + this.template = template; + return this; + } + } + + public enum AmountTaxDisplay implements ApiRequestParams.EnumParam { + @SerializedName("exclude_tax") + EXCLUDE_TAX("exclude_tax"), + + @SerializedName("include_inclusive_tax") + INCLUDE_INCLUSIVE_TAX("include_inclusive_tax"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + AmountTaxDisplay(String value) { + this.value = value; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Capabilities { + /** + * Generates requirements for enabling automatic indirect tax calculation on this customer's + * invoices or subscriptions. Recommended to request this capability if planning to enable + * automatic tax calculation on this customer's invoices or subscriptions. + */ + @SerializedName("automatic_indirect_tax") + AutomaticIndirectTax automaticIndirectTax; + + /** + * 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; + + private Capabilities( + AutomaticIndirectTax automaticIndirectTax, Map extraParams) { + this.automaticIndirectTax = automaticIndirectTax; + this.extraParams = extraParams; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private AutomaticIndirectTax automaticIndirectTax; + + private Map extraParams; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Customer.Capabilities build() { + return new AccountUpdateParams.Configuration.Customer.Capabilities( + this.automaticIndirectTax, this.extraParams); + } + + /** + * Generates requirements for enabling automatic indirect tax calculation on this + * customer's invoices or subscriptions. Recommended to request this capability if + * planning to enable automatic tax calculation on this customer's invoices or + * subscriptions. + */ + public Builder setAutomaticIndirectTax( + AccountUpdateParams.Configuration.Customer.Capabilities.AutomaticIndirectTax + automaticIndirectTax) { + this.automaticIndirectTax = automaticIndirectTax; + 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 AccountUpdateParams.Configuration.Customer.Capabilities#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 AccountUpdateParams.Configuration.Customer.Capabilities#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class AutomaticIndirectTax { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * To request a new Capability for an account, pass true. There can be a delay before the + * requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private AutomaticIndirectTax( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Customer.Capabilities.AutomaticIndirectTax + build() { + return new AccountUpdateParams.Configuration.Customer.Capabilities + .AutomaticIndirectTax(this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Customer.Capabilities.AutomaticIndirectTax#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 + * AccountUpdateParams.Configuration.Customer.Capabilities.AutomaticIndirectTax#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountUpdateParams.Configuration.Customer.Capabilities.AutomaticIndirectTax + .Protections + protections) { + this.protections = protections; + return this; + } + + /** + * To request a new Capability for an account, pass true. There can be a delay before + * the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Customer.Capabilities.AutomaticIndirectTax + .Protections + build() { + return new AccountUpdateParams.Configuration.Customer.Capabilities + .AutomaticIndirectTax.Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Customer.Capabilities.AutomaticIndirectTax.Protections#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 + * AccountUpdateParams.Configuration.Customer.Capabilities.AutomaticIndirectTax.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Customer.Capabilities.AutomaticIndirectTax + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Customer.Capabilities.AutomaticIndirectTax + .Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Customer.Capabilities + .AutomaticIndirectTax.Protections.PspMigration( + this.extraParams, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Customer.Capabilities.AutomaticIndirectTax.Protections.PspMigration#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 + * AccountUpdateParams.Configuration.Customer.Capabilities.AutomaticIndirectTax.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Shipping { + /** Customer shipping address. */ + @SerializedName("address") + Address address; + + /** + * 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; + + /** Customer name. */ + @SerializedName("name") + Object name; + + /** Customer phone (including extension). */ + @SerializedName("phone") + Object phone; + + private Shipping( + Address address, Map extraParams, Object name, Object phone) { + this.address = address; + this.extraParams = extraParams; + this.name = name; + this.phone = phone; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Address address; + + private Map extraParams; + + private Object name; + + private Object phone; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Customer.Shipping build() { + return new AccountUpdateParams.Configuration.Customer.Shipping( + this.address, this.extraParams, this.name, this.phone); + } + + /** Customer shipping address. */ + public Builder setAddress( + AccountUpdateParams.Configuration.Customer.Shipping.Address address) { + this.address = address; + 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 AccountUpdateParams.Configuration.Customer.Shipping#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 AccountUpdateParams.Configuration.Customer.Shipping#extraParams} for + * the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Customer name. */ + public Builder setName(String name) { + this.name = name; + return this; + } + + /** Customer name. */ + public Builder setName(EmptyParam name) { + this.name = name; + return this; + } + + /** Customer phone (including extension). */ + public Builder setPhone(String phone) { + this.phone = phone; + return this; + } + + /** Customer phone (including extension). */ + public Builder setPhone(EmptyParam phone) { + this.phone = phone; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Address { + /** City, district, suburb, town, or village. */ + @SerializedName("city") + Object city; + + /** + * Two-letter country code (ISO + * 3166-1 alpha-2). + */ + @SerializedName("country") + Object country; + + /** + * 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; + + /** Address line 1 (e.g., street, PO Box, or company name). */ + @SerializedName("line1") + Object line1; + + /** Address line 2 (e.g., apartment, suite, unit, or building). */ + @SerializedName("line2") + Object line2; + + /** ZIP or postal code. */ + @SerializedName("postal_code") + Object postalCode; + + /** State, county, province, or region. */ + @SerializedName("state") + Object state; + + private Address( + Object city, + Object country, + Map extraParams, + Object line1, + Object line2, + Object postalCode, + Object state) { + this.city = city; + this.country = country; + this.extraParams = extraParams; + this.line1 = line1; + this.line2 = line2; + this.postalCode = postalCode; + this.state = state; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Object city; + + private Object country; + + private Map extraParams; + + private Object line1; + + private Object line2; + + private Object postalCode; + + private Object state; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Customer.Shipping.Address build() { + return new AccountUpdateParams.Configuration.Customer.Shipping.Address( + this.city, + this.country, + this.extraParams, + this.line1, + this.line2, + this.postalCode, + this.state); + } + + /** City, district, suburb, town, or village. */ + public Builder setCity(String city) { + this.city = city; + return this; + } + + /** City, district, suburb, town, or village. */ + public Builder setCity(EmptyParam city) { + this.city = city; + return this; + } + + /** + * Two-letter country code (ISO 3166-1 alpha-2). + */ + public Builder setCountry(String country) { + this.country = country; + return this; + } + + /** + * Two-letter country code (ISO 3166-1 alpha-2). + */ + public Builder setCountry(EmptyParam country) { + this.country = country; + 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 + * AccountUpdateParams.Configuration.Customer.Shipping.Address#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 + * AccountUpdateParams.Configuration.Customer.Shipping.Address#extraParams} for the + * field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Address line 1 (e.g., street, PO Box, or company name). */ + public Builder setLine1(String line1) { + this.line1 = line1; + return this; + } + + /** Address line 1 (e.g., street, PO Box, or company name). */ + public Builder setLine1(EmptyParam line1) { + this.line1 = line1; + return this; + } + + /** Address line 2 (e.g., apartment, suite, unit, or building). */ + public Builder setLine2(String line2) { + this.line2 = line2; + return this; + } + + /** Address line 2 (e.g., apartment, suite, unit, or building). */ + public Builder setLine2(EmptyParam line2) { + this.line2 = line2; + return this; + } + + /** ZIP or postal code. */ + public Builder setPostalCode(String postalCode) { + this.postalCode = postalCode; + return this; + } + + /** ZIP or postal code. */ + public Builder setPostalCode(EmptyParam postalCode) { + this.postalCode = postalCode; + return this; + } + + /** State, county, province, or region. */ + public Builder setState(String state) { + this.state = state; + return this; + } + + /** State, county, province, or region. */ + public Builder setState(EmptyParam state) { + this.state = state; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Merchant { + /** + * Represents the state of the configuration, and can be updated to deactivate or re-apply a + * configuration. + */ + @SerializedName("applied") + Boolean applied; + + /** Settings for Bacs Direct Debit payments. */ + @SerializedName("bacs_debit_payments") + BacsDebitPayments bacsDebitPayments; + + /** + * Settings used to apply the merchant's branding to email receipts, invoices, Checkout, and + * other products. + */ + @SerializedName("branding") + Branding branding; + + /** Capabilities to request on the Merchant Configuration. */ + @SerializedName("capabilities") + Capabilities capabilities; + + /** Card payments settings. */ + @SerializedName("card_payments") + CardPayments cardPayments; + + /** + * 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; + + /** Settings specific to Konbini payments on the account. */ + @SerializedName("konbini_payments") + KonbiniPayments konbiniPayments; + + /** + * The Merchant Category Code (MCC) for the merchant. MCCs classify businesses based on the + * goods or services they provide. + */ + @SerializedName("mcc") + Object mcc; + + /** Settings for the default text that appears on statements for language variations. */ + @SerializedName("script_statement_descriptor") + ScriptStatementDescriptor scriptStatementDescriptor; + + /** Settings for Smart Disputes automatic response feature. */ + @SerializedName("smart_disputes") + SmartDisputes smartDisputes; + + /** + * Settings for the default statement descriptor text. + */ + @SerializedName("statement_descriptor") + StatementDescriptor statementDescriptor; + + /** Publicly available contact information for sending support issues to. */ + @SerializedName("support") + Support support; + + private Merchant( + Boolean applied, + BacsDebitPayments bacsDebitPayments, + Branding branding, + Capabilities capabilities, + CardPayments cardPayments, + Map extraParams, + KonbiniPayments konbiniPayments, + Object mcc, + ScriptStatementDescriptor scriptStatementDescriptor, + SmartDisputes smartDisputes, + StatementDescriptor statementDescriptor, + Support support) { + this.applied = applied; + this.bacsDebitPayments = bacsDebitPayments; + this.branding = branding; + this.capabilities = capabilities; + this.cardPayments = cardPayments; + this.extraParams = extraParams; + this.konbiniPayments = konbiniPayments; + this.mcc = mcc; + this.scriptStatementDescriptor = scriptStatementDescriptor; + this.smartDisputes = smartDisputes; + this.statementDescriptor = statementDescriptor; + this.support = support; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Boolean applied; + + private BacsDebitPayments bacsDebitPayments; + + private Branding branding; + + private Capabilities capabilities; + + private CardPayments cardPayments; + + private Map extraParams; + + private KonbiniPayments konbiniPayments; + + private Object mcc; + + private ScriptStatementDescriptor scriptStatementDescriptor; + + private SmartDisputes smartDisputes; + + private StatementDescriptor statementDescriptor; + + private Support support; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant build() { + return new AccountUpdateParams.Configuration.Merchant( + this.applied, + this.bacsDebitPayments, + this.branding, + this.capabilities, + this.cardPayments, + this.extraParams, + this.konbiniPayments, + this.mcc, + this.scriptStatementDescriptor, + this.smartDisputes, + this.statementDescriptor, + this.support); + } + + /** + * Represents the state of the configuration, and can be updated to deactivate or re-apply a + * configuration. + */ + public Builder setApplied(Boolean applied) { + this.applied = applied; + return this; + } + + /** Settings for Bacs Direct Debit payments. */ + public Builder setBacsDebitPayments( + AccountUpdateParams.Configuration.Merchant.BacsDebitPayments bacsDebitPayments) { + this.bacsDebitPayments = bacsDebitPayments; + return this; + } + + /** + * Settings used to apply the merchant's branding to email receipts, invoices, Checkout, and + * other products. + */ + public Builder setBranding(AccountUpdateParams.Configuration.Merchant.Branding branding) { + this.branding = branding; + return this; + } + + /** Capabilities to request on the Merchant Configuration. */ + public Builder setCapabilities( + AccountUpdateParams.Configuration.Merchant.Capabilities capabilities) { + this.capabilities = capabilities; + return this; + } + + /** Card payments settings. */ + public Builder setCardPayments( + AccountUpdateParams.Configuration.Merchant.CardPayments cardPayments) { + this.cardPayments = cardPayments; + 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 AccountUpdateParams.Configuration.Merchant#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 AccountUpdateParams.Configuration.Merchant#extraParams} for the field + * documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Settings specific to Konbini payments on the account. */ + public Builder setKonbiniPayments( + AccountUpdateParams.Configuration.Merchant.KonbiniPayments konbiniPayments) { + this.konbiniPayments = konbiniPayments; + return this; + } + + /** + * The Merchant Category Code (MCC) for the merchant. MCCs classify businesses based on the + * goods or services they provide. + */ + public Builder setMcc(String mcc) { + this.mcc = mcc; + return this; + } + + /** + * The Merchant Category Code (MCC) for the merchant. MCCs classify businesses based on the + * goods or services they provide. + */ + public Builder setMcc(EmptyParam mcc) { + this.mcc = mcc; + return this; + } + + /** Settings for the default text that appears on statements for language variations. */ + public Builder setScriptStatementDescriptor( + AccountUpdateParams.Configuration.Merchant.ScriptStatementDescriptor + scriptStatementDescriptor) { + this.scriptStatementDescriptor = scriptStatementDescriptor; + return this; + } + + /** Settings for Smart Disputes automatic response feature. */ + public Builder setSmartDisputes( + AccountUpdateParams.Configuration.Merchant.SmartDisputes smartDisputes) { + this.smartDisputes = smartDisputes; + return this; + } + + /** + * Settings for the default statement descriptor text. + */ + public Builder setStatementDescriptor( + AccountUpdateParams.Configuration.Merchant.StatementDescriptor statementDescriptor) { + this.statementDescriptor = statementDescriptor; + return this; + } + + /** Publicly available contact information for sending support issues to. */ + public Builder setSupport(AccountUpdateParams.Configuration.Merchant.Support support) { + this.support = support; return this; } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class BacsDebitPayments { + /** Display name for Bacs Direct Debit payments. */ + @SerializedName("display_name") + Object displayName; + + /** + * 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; + + private BacsDebitPayments(Object displayName, Map extraParams) { + this.displayName = displayName; + this.extraParams = extraParams; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Object displayName; + + private Map extraParams; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.BacsDebitPayments build() { + return new AccountUpdateParams.Configuration.Merchant.BacsDebitPayments( + this.displayName, this.extraParams); + } + + /** Display name for Bacs Direct Debit payments. */ + public Builder setDisplayName(String displayName) { + this.displayName = displayName; + return this; + } + + /** Display name for Bacs Direct Debit payments. */ + public Builder setDisplayName(EmptyParam displayName) { + this.displayName = displayName; + 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 + * AccountUpdateParams.Configuration.Merchant.BacsDebitPayments#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 + * AccountUpdateParams.Configuration.Merchant.BacsDebitPayments#extraParams} for the field + * documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Branding { + /** + * 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; + + /** + * ID of a file upload: + * An icon for the merchant. Must be square and at least 128px x 128px. + */ + @SerializedName("icon") + Object icon; + + /** + * ID of a file upload: + * A logo for the merchant that will be used in Checkout instead of the icon and without the + * merchant's name next to it if provided. Must be at least 128px x 128px. + */ + @SerializedName("logo") + Object logo; + + /** A CSS hex color value representing the primary branding color for the merchant. */ + @SerializedName("primary_color") + Object primaryColor; + + /** A CSS hex color value representing the secondary branding color for the merchant. */ + @SerializedName("secondary_color") + Object secondaryColor; + + private Branding( + Map extraParams, + Object icon, + Object logo, + Object primaryColor, + Object secondaryColor) { + this.extraParams = extraParams; + this.icon = icon; + this.logo = logo; + this.primaryColor = primaryColor; + this.secondaryColor = secondaryColor; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Object icon; + + private Object logo; + + private Object primaryColor; + + private Object secondaryColor; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Branding build() { + return new AccountUpdateParams.Configuration.Merchant.Branding( + this.extraParams, this.icon, this.logo, this.primaryColor, this.secondaryColor); + } + + /** + * 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 AccountUpdateParams.Configuration.Merchant.Branding#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 AccountUpdateParams.Configuration.Merchant.Branding#extraParams} for + * the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** + * ID of a file + * upload: An icon for the merchant. Must be square and at least 128px x 128px. + */ + public Builder setIcon(String icon) { + this.icon = icon; + return this; + } + + /** + * ID of a file + * upload: An icon for the merchant. Must be square and at least 128px x 128px. + */ + public Builder setIcon(EmptyParam icon) { + this.icon = icon; + return this; + } + + /** + * ID of a file + * upload: A logo for the merchant that will be used in Checkout instead of the icon + * and without the merchant's name next to it if provided. Must be at least 128px x 128px. + */ + public Builder setLogo(String logo) { + this.logo = logo; + return this; + } + + /** + * ID of a file + * upload: A logo for the merchant that will be used in Checkout instead of the icon + * and without the merchant's name next to it if provided. Must be at least 128px x 128px. + */ + public Builder setLogo(EmptyParam logo) { + this.logo = logo; + return this; + } + + /** A CSS hex color value representing the primary branding color for the merchant. */ + public Builder setPrimaryColor(String primaryColor) { + this.primaryColor = primaryColor; + return this; + } + + /** A CSS hex color value representing the primary branding color for the merchant. */ + public Builder setPrimaryColor(EmptyParam primaryColor) { + this.primaryColor = primaryColor; + return this; + } + + /** A CSS hex color value representing the secondary branding color for the merchant. */ + public Builder setSecondaryColor(String secondaryColor) { + this.secondaryColor = secondaryColor; + return this; + } + + /** A CSS hex color value representing the secondary branding color for the merchant. */ + public Builder setSecondaryColor(EmptyParam secondaryColor) { + this.secondaryColor = secondaryColor; + return this; + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Capabilities { + /** Allow the merchant to process ACH debit payments. */ + @SerializedName("ach_debit_payments") + AchDebitPayments achDebitPayments; + + /** Allow the merchant to process ACSS debit payments. */ + @SerializedName("acss_debit_payments") + AcssDebitPayments acssDebitPayments; + + /** Allow the merchant to process Affirm payments. */ + @SerializedName("affirm_payments") + AffirmPayments affirmPayments; + + /** Allow the merchant to process Afterpay/Clearpay payments. */ + @SerializedName("afterpay_clearpay_payments") + AfterpayClearpayPayments afterpayClearpayPayments; + + /** Allow the merchant to process Alma payments. */ + @SerializedName("alma_payments") + AlmaPayments almaPayments; + + /** Allow the merchant to process Amazon Pay payments. */ + @SerializedName("amazon_pay_payments") + AmazonPayPayments amazonPayPayments; + + /** Allow the merchant to process Australian BECS Direct Debit payments. */ + @SerializedName("au_becs_debit_payments") + AuBecsDebitPayments auBecsDebitPayments; + + /** Allow the merchant to process BACS Direct Debit payments. */ + @SerializedName("bacs_debit_payments") + BacsDebitPayments bacsDebitPayments; + + /** Allow the merchant to process Bancontact payments. */ + @SerializedName("bancontact_payments") + BancontactPayments bancontactPayments; + + /** Allow the merchant to process BLIK payments. */ + @SerializedName("blik_payments") + BlikPayments blikPayments; + + /** Allow the merchant to process Boleto payments. */ + @SerializedName("boleto_payments") + BoletoPayments boletoPayments; + + /** Allow the merchant to collect card payments. */ + @SerializedName("card_payments") + CardPayments cardPayments; + + /** Allow the merchant to process Cartes Bancaires payments. */ + @SerializedName("cartes_bancaires_payments") + CartesBancairesPayments cartesBancairesPayments; + + /** Allow the merchant to process Cash App payments. */ + @SerializedName("cashapp_payments") + CashappPayments cashappPayments; + + /** Allow the merchant to process EPS payments. */ + @SerializedName("eps_payments") + EpsPayments epsPayments; + + /** + * 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; + + /** Allow the merchant to process FPX payments. */ + @SerializedName("fpx_payments") + FpxPayments fpxPayments; + + /** Allow the merchant to process UK bank transfer payments. */ + @SerializedName("gb_bank_transfer_payments") + GbBankTransferPayments gbBankTransferPayments; + + /** Allow the merchant to process GrabPay payments. */ + @SerializedName("grabpay_payments") + GrabpayPayments grabpayPayments; + + /** Allow the merchant to process iDEAL payments. */ + @SerializedName("ideal_payments") + IdealPayments idealPayments; + + /** Allow the merchant to process JCB card payments. */ + @SerializedName("jcb_payments") + JcbPayments jcbPayments; + + /** Allow the merchant to process Japanese bank transfer payments. */ + @SerializedName("jp_bank_transfer_payments") + JpBankTransferPayments jpBankTransferPayments; + + /** Allow the merchant to process Kakao Pay payments. */ + @SerializedName("kakao_pay_payments") + KakaoPayPayments kakaoPayPayments; + + /** Allow the merchant to process Klarna payments. */ + @SerializedName("klarna_payments") + KlarnaPayments klarnaPayments; + + /** Allow the merchant to process Konbini convenience store payments. */ + @SerializedName("konbini_payments") + KonbiniPayments konbiniPayments; + + /** Allow the merchant to process Korean card payments. */ + @SerializedName("kr_card_payments") + KrCardPayments krCardPayments; + + /** Allow the merchant to process Link payments. */ + @SerializedName("link_payments") + LinkPayments linkPayments; + + /** Allow the merchant to process MobilePay payments. */ + @SerializedName("mobilepay_payments") + MobilepayPayments mobilepayPayments; + + /** Allow the merchant to process Multibanco payments. */ + @SerializedName("multibanco_payments") + MultibancoPayments multibancoPayments; + + /** Allow the merchant to process Mexican bank transfer payments. */ + @SerializedName("mx_bank_transfer_payments") + MxBankTransferPayments mxBankTransferPayments; + + /** Allow the merchant to process Naver Pay payments. */ + @SerializedName("naver_pay_payments") + NaverPayPayments naverPayPayments; + + /** Allow the merchant to process OXXO payments. */ + @SerializedName("oxxo_payments") + OxxoPayments oxxoPayments; + + /** Allow the merchant to process Przelewy24 (P24) payments. */ + @SerializedName("p24_payments") + P24Payments p24Payments; + + /** Allow the merchant to process Pay by Bank payments. */ + @SerializedName("pay_by_bank_payments") + PayByBankPayments payByBankPayments; + + /** Allow the merchant to process PAYCO payments. */ + @SerializedName("payco_payments") + PaycoPayments paycoPayments; + + /** Allow the merchant to process PayNow payments. */ + @SerializedName("paynow_payments") + PaynowPayments paynowPayments; + + /** Allow the merchant to process PromptPay payments. */ + @SerializedName("promptpay_payments") + PromptpayPayments promptpayPayments; + + /** Allow the merchant to process Revolut Pay payments. */ + @SerializedName("revolut_pay_payments") + RevolutPayPayments revolutPayPayments; + + /** Allow the merchant to process Samsung Pay payments. */ + @SerializedName("samsung_pay_payments") + SamsungPayPayments samsungPayPayments; + + /** Allow the merchant to process SEPA bank transfer payments. */ + @SerializedName("sepa_bank_transfer_payments") + SepaBankTransferPayments sepaBankTransferPayments; + + /** Allow the merchant to process SEPA Direct Debit payments. */ + @SerializedName("sepa_debit_payments") + SepaDebitPayments sepaDebitPayments; + + /** Allow the merchant to process Swish payments. */ + @SerializedName("swish_payments") + SwishPayments swishPayments; + + /** Allow the merchant to process TWINT payments. */ + @SerializedName("twint_payments") + TwintPayments twintPayments; + + /** Allow the merchant to process US bank transfer payments. */ + @SerializedName("us_bank_transfer_payments") + UsBankTransferPayments usBankTransferPayments; + + /** Allow the merchant to process Zip payments. */ + @SerializedName("zip_payments") + ZipPayments zipPayments; + + private Capabilities( + AchDebitPayments achDebitPayments, + AcssDebitPayments acssDebitPayments, + AffirmPayments affirmPayments, + AfterpayClearpayPayments afterpayClearpayPayments, + AlmaPayments almaPayments, + AmazonPayPayments amazonPayPayments, + AuBecsDebitPayments auBecsDebitPayments, + BacsDebitPayments bacsDebitPayments, + BancontactPayments bancontactPayments, + BlikPayments blikPayments, + BoletoPayments boletoPayments, + CardPayments cardPayments, + CartesBancairesPayments cartesBancairesPayments, + CashappPayments cashappPayments, + EpsPayments epsPayments, + Map extraParams, + FpxPayments fpxPayments, + GbBankTransferPayments gbBankTransferPayments, + GrabpayPayments grabpayPayments, + IdealPayments idealPayments, + JcbPayments jcbPayments, + JpBankTransferPayments jpBankTransferPayments, + KakaoPayPayments kakaoPayPayments, + KlarnaPayments klarnaPayments, + KonbiniPayments konbiniPayments, + KrCardPayments krCardPayments, + LinkPayments linkPayments, + MobilepayPayments mobilepayPayments, + MultibancoPayments multibancoPayments, + MxBankTransferPayments mxBankTransferPayments, + NaverPayPayments naverPayPayments, + OxxoPayments oxxoPayments, + P24Payments p24Payments, + PayByBankPayments payByBankPayments, + PaycoPayments paycoPayments, + PaynowPayments paynowPayments, + PromptpayPayments promptpayPayments, + RevolutPayPayments revolutPayPayments, + SamsungPayPayments samsungPayPayments, + SepaBankTransferPayments sepaBankTransferPayments, + SepaDebitPayments sepaDebitPayments, + SwishPayments swishPayments, + TwintPayments twintPayments, + UsBankTransferPayments usBankTransferPayments, + ZipPayments zipPayments) { + this.achDebitPayments = achDebitPayments; + this.acssDebitPayments = acssDebitPayments; + this.affirmPayments = affirmPayments; + this.afterpayClearpayPayments = afterpayClearpayPayments; + this.almaPayments = almaPayments; + this.amazonPayPayments = amazonPayPayments; + this.auBecsDebitPayments = auBecsDebitPayments; + this.bacsDebitPayments = bacsDebitPayments; + this.bancontactPayments = bancontactPayments; + this.blikPayments = blikPayments; + this.boletoPayments = boletoPayments; + this.cardPayments = cardPayments; + this.cartesBancairesPayments = cartesBancairesPayments; + this.cashappPayments = cashappPayments; + this.epsPayments = epsPayments; + this.extraParams = extraParams; + this.fpxPayments = fpxPayments; + this.gbBankTransferPayments = gbBankTransferPayments; + this.grabpayPayments = grabpayPayments; + this.idealPayments = idealPayments; + this.jcbPayments = jcbPayments; + this.jpBankTransferPayments = jpBankTransferPayments; + this.kakaoPayPayments = kakaoPayPayments; + this.klarnaPayments = klarnaPayments; + this.konbiniPayments = konbiniPayments; + this.krCardPayments = krCardPayments; + this.linkPayments = linkPayments; + this.mobilepayPayments = mobilepayPayments; + this.multibancoPayments = multibancoPayments; + this.mxBankTransferPayments = mxBankTransferPayments; + this.naverPayPayments = naverPayPayments; + this.oxxoPayments = oxxoPayments; + this.p24Payments = p24Payments; + this.payByBankPayments = payByBankPayments; + this.paycoPayments = paycoPayments; + this.paynowPayments = paynowPayments; + this.promptpayPayments = promptpayPayments; + this.revolutPayPayments = revolutPayPayments; + this.samsungPayPayments = samsungPayPayments; + this.sepaBankTransferPayments = sepaBankTransferPayments; + this.sepaDebitPayments = sepaDebitPayments; + this.swishPayments = swishPayments; + this.twintPayments = twintPayments; + this.usBankTransferPayments = usBankTransferPayments; + this.zipPayments = zipPayments; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private AchDebitPayments achDebitPayments; + + private AcssDebitPayments acssDebitPayments; + + private AffirmPayments affirmPayments; + + private AfterpayClearpayPayments afterpayClearpayPayments; + + private AlmaPayments almaPayments; + + private AmazonPayPayments amazonPayPayments; + + private AuBecsDebitPayments auBecsDebitPayments; + + private BacsDebitPayments bacsDebitPayments; + + private BancontactPayments bancontactPayments; + + private BlikPayments blikPayments; + + private BoletoPayments boletoPayments; + + private CardPayments cardPayments; + + private CartesBancairesPayments cartesBancairesPayments; + + private CashappPayments cashappPayments; + + private EpsPayments epsPayments; + + private Map extraParams; + + private FpxPayments fpxPayments; + + private GbBankTransferPayments gbBankTransferPayments; + + private GrabpayPayments grabpayPayments; + + private IdealPayments idealPayments; + + private JcbPayments jcbPayments; + + private JpBankTransferPayments jpBankTransferPayments; + + private KakaoPayPayments kakaoPayPayments; + + private KlarnaPayments klarnaPayments; + + private KonbiniPayments konbiniPayments; + + private KrCardPayments krCardPayments; + + private LinkPayments linkPayments; + + private MobilepayPayments mobilepayPayments; + + private MultibancoPayments multibancoPayments; + + private MxBankTransferPayments mxBankTransferPayments; + + private NaverPayPayments naverPayPayments; + + private OxxoPayments oxxoPayments; + + private P24Payments p24Payments; + + private PayByBankPayments payByBankPayments; + + private PaycoPayments paycoPayments; + + private PaynowPayments paynowPayments; + + private PromptpayPayments promptpayPayments; + + private RevolutPayPayments revolutPayPayments; + + private SamsungPayPayments samsungPayPayments; + + private SepaBankTransferPayments sepaBankTransferPayments; + + private SepaDebitPayments sepaDebitPayments; + + private SwishPayments swishPayments; + + private TwintPayments twintPayments; + + private UsBankTransferPayments usBankTransferPayments; + + private ZipPayments zipPayments; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities( + this.achDebitPayments, + this.acssDebitPayments, + this.affirmPayments, + this.afterpayClearpayPayments, + this.almaPayments, + this.amazonPayPayments, + this.auBecsDebitPayments, + this.bacsDebitPayments, + this.bancontactPayments, + this.blikPayments, + this.boletoPayments, + this.cardPayments, + this.cartesBancairesPayments, + this.cashappPayments, + this.epsPayments, + this.extraParams, + this.fpxPayments, + this.gbBankTransferPayments, + this.grabpayPayments, + this.idealPayments, + this.jcbPayments, + this.jpBankTransferPayments, + this.kakaoPayPayments, + this.klarnaPayments, + this.konbiniPayments, + this.krCardPayments, + this.linkPayments, + this.mobilepayPayments, + this.multibancoPayments, + this.mxBankTransferPayments, + this.naverPayPayments, + this.oxxoPayments, + this.p24Payments, + this.payByBankPayments, + this.paycoPayments, + this.paynowPayments, + this.promptpayPayments, + this.revolutPayPayments, + this.samsungPayPayments, + this.sepaBankTransferPayments, + this.sepaDebitPayments, + this.swishPayments, + this.twintPayments, + this.usBankTransferPayments, + this.zipPayments); + } + + /** Allow the merchant to process ACH debit payments. */ + public Builder setAchDebitPayments( + AccountUpdateParams.Configuration.Merchant.Capabilities.AchDebitPayments + achDebitPayments) { + this.achDebitPayments = achDebitPayments; + return this; + } + + /** Allow the merchant to process ACSS debit payments. */ + public Builder setAcssDebitPayments( + AccountUpdateParams.Configuration.Merchant.Capabilities.AcssDebitPayments + acssDebitPayments) { + this.acssDebitPayments = acssDebitPayments; + return this; + } + + /** Allow the merchant to process Affirm payments. */ + public Builder setAffirmPayments( + AccountUpdateParams.Configuration.Merchant.Capabilities.AffirmPayments + affirmPayments) { + this.affirmPayments = affirmPayments; + return this; + } + + /** Allow the merchant to process Afterpay/Clearpay payments. */ + public Builder setAfterpayClearpayPayments( + AccountUpdateParams.Configuration.Merchant.Capabilities.AfterpayClearpayPayments + afterpayClearpayPayments) { + this.afterpayClearpayPayments = afterpayClearpayPayments; + return this; + } + + /** Allow the merchant to process Alma payments. */ + public Builder setAlmaPayments( + AccountUpdateParams.Configuration.Merchant.Capabilities.AlmaPayments almaPayments) { + this.almaPayments = almaPayments; + return this; + } + + /** Allow the merchant to process Amazon Pay payments. */ + public Builder setAmazonPayPayments( + AccountUpdateParams.Configuration.Merchant.Capabilities.AmazonPayPayments + amazonPayPayments) { + this.amazonPayPayments = amazonPayPayments; + return this; + } + + /** Allow the merchant to process Australian BECS Direct Debit payments. */ + public Builder setAuBecsDebitPayments( + AccountUpdateParams.Configuration.Merchant.Capabilities.AuBecsDebitPayments + auBecsDebitPayments) { + this.auBecsDebitPayments = auBecsDebitPayments; + return this; + } + + /** Allow the merchant to process BACS Direct Debit payments. */ + public Builder setBacsDebitPayments( + AccountUpdateParams.Configuration.Merchant.Capabilities.BacsDebitPayments + bacsDebitPayments) { + this.bacsDebitPayments = bacsDebitPayments; + return this; + } + + /** Allow the merchant to process Bancontact payments. */ + public Builder setBancontactPayments( + AccountUpdateParams.Configuration.Merchant.Capabilities.BancontactPayments + bancontactPayments) { + this.bancontactPayments = bancontactPayments; + return this; + } + + /** Allow the merchant to process BLIK payments. */ + public Builder setBlikPayments( + AccountUpdateParams.Configuration.Merchant.Capabilities.BlikPayments blikPayments) { + this.blikPayments = blikPayments; + return this; + } + + /** Allow the merchant to process Boleto payments. */ + public Builder setBoletoPayments( + AccountUpdateParams.Configuration.Merchant.Capabilities.BoletoPayments + boletoPayments) { + this.boletoPayments = boletoPayments; + return this; + } + + /** Allow the merchant to collect card payments. */ + public Builder setCardPayments( + AccountUpdateParams.Configuration.Merchant.Capabilities.CardPayments cardPayments) { + this.cardPayments = cardPayments; + return this; + } + + /** Allow the merchant to process Cartes Bancaires payments. */ + public Builder setCartesBancairesPayments( + AccountUpdateParams.Configuration.Merchant.Capabilities.CartesBancairesPayments + cartesBancairesPayments) { + this.cartesBancairesPayments = cartesBancairesPayments; + return this; + } + + /** Allow the merchant to process Cash App payments. */ + public Builder setCashappPayments( + AccountUpdateParams.Configuration.Merchant.Capabilities.CashappPayments + cashappPayments) { + this.cashappPayments = cashappPayments; + return this; + } + + /** Allow the merchant to process EPS payments. */ + public Builder setEpsPayments( + AccountUpdateParams.Configuration.Merchant.Capabilities.EpsPayments epsPayments) { + this.epsPayments = epsPayments; + 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 AccountUpdateParams.Configuration.Merchant.Capabilities#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 AccountUpdateParams.Configuration.Merchant.Capabilities#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Allow the merchant to process FPX payments. */ + public Builder setFpxPayments( + AccountUpdateParams.Configuration.Merchant.Capabilities.FpxPayments fpxPayments) { + this.fpxPayments = fpxPayments; + return this; + } + + /** Allow the merchant to process UK bank transfer payments. */ + public Builder setGbBankTransferPayments( + AccountUpdateParams.Configuration.Merchant.Capabilities.GbBankTransferPayments + gbBankTransferPayments) { + this.gbBankTransferPayments = gbBankTransferPayments; + return this; + } + + /** Allow the merchant to process GrabPay payments. */ + public Builder setGrabpayPayments( + AccountUpdateParams.Configuration.Merchant.Capabilities.GrabpayPayments + grabpayPayments) { + this.grabpayPayments = grabpayPayments; + return this; + } + + /** Allow the merchant to process iDEAL payments. */ + public Builder setIdealPayments( + AccountUpdateParams.Configuration.Merchant.Capabilities.IdealPayments idealPayments) { + this.idealPayments = idealPayments; + return this; + } + + /** Allow the merchant to process JCB card payments. */ + public Builder setJcbPayments( + AccountUpdateParams.Configuration.Merchant.Capabilities.JcbPayments jcbPayments) { + this.jcbPayments = jcbPayments; + return this; + } + + /** Allow the merchant to process Japanese bank transfer payments. */ + public Builder setJpBankTransferPayments( + AccountUpdateParams.Configuration.Merchant.Capabilities.JpBankTransferPayments + jpBankTransferPayments) { + this.jpBankTransferPayments = jpBankTransferPayments; + return this; + } + + /** Allow the merchant to process Kakao Pay payments. */ + public Builder setKakaoPayPayments( + AccountUpdateParams.Configuration.Merchant.Capabilities.KakaoPayPayments + kakaoPayPayments) { + this.kakaoPayPayments = kakaoPayPayments; + return this; + } + + /** Allow the merchant to process Klarna payments. */ + public Builder setKlarnaPayments( + AccountUpdateParams.Configuration.Merchant.Capabilities.KlarnaPayments + klarnaPayments) { + this.klarnaPayments = klarnaPayments; + return this; + } + + /** Allow the merchant to process Konbini convenience store payments. */ + public Builder setKonbiniPayments( + AccountUpdateParams.Configuration.Merchant.Capabilities.KonbiniPayments + konbiniPayments) { + this.konbiniPayments = konbiniPayments; + return this; + } + + /** Allow the merchant to process Korean card payments. */ + public Builder setKrCardPayments( + AccountUpdateParams.Configuration.Merchant.Capabilities.KrCardPayments + krCardPayments) { + this.krCardPayments = krCardPayments; + return this; + } + + /** Allow the merchant to process Link payments. */ + public Builder setLinkPayments( + AccountUpdateParams.Configuration.Merchant.Capabilities.LinkPayments linkPayments) { + this.linkPayments = linkPayments; + return this; + } + + /** Allow the merchant to process MobilePay payments. */ + public Builder setMobilepayPayments( + AccountUpdateParams.Configuration.Merchant.Capabilities.MobilepayPayments + mobilepayPayments) { + this.mobilepayPayments = mobilepayPayments; + return this; + } + + /** Allow the merchant to process Multibanco payments. */ + public Builder setMultibancoPayments( + AccountUpdateParams.Configuration.Merchant.Capabilities.MultibancoPayments + multibancoPayments) { + this.multibancoPayments = multibancoPayments; + return this; + } + + /** Allow the merchant to process Mexican bank transfer payments. */ + public Builder setMxBankTransferPayments( + AccountUpdateParams.Configuration.Merchant.Capabilities.MxBankTransferPayments + mxBankTransferPayments) { + this.mxBankTransferPayments = mxBankTransferPayments; + return this; + } + + /** Allow the merchant to process Naver Pay payments. */ + public Builder setNaverPayPayments( + AccountUpdateParams.Configuration.Merchant.Capabilities.NaverPayPayments + naverPayPayments) { + this.naverPayPayments = naverPayPayments; + return this; + } + + /** Allow the merchant to process OXXO payments. */ + public Builder setOxxoPayments( + AccountUpdateParams.Configuration.Merchant.Capabilities.OxxoPayments oxxoPayments) { + this.oxxoPayments = oxxoPayments; + return this; + } + + /** Allow the merchant to process Przelewy24 (P24) payments. */ + public Builder setP24Payments( + AccountUpdateParams.Configuration.Merchant.Capabilities.P24Payments p24Payments) { + this.p24Payments = p24Payments; + return this; + } + + /** Allow the merchant to process Pay by Bank payments. */ + public Builder setPayByBankPayments( + AccountUpdateParams.Configuration.Merchant.Capabilities.PayByBankPayments + payByBankPayments) { + this.payByBankPayments = payByBankPayments; + return this; + } + + /** Allow the merchant to process PAYCO payments. */ + public Builder setPaycoPayments( + AccountUpdateParams.Configuration.Merchant.Capabilities.PaycoPayments paycoPayments) { + this.paycoPayments = paycoPayments; + return this; + } + + /** Allow the merchant to process PayNow payments. */ + public Builder setPaynowPayments( + AccountUpdateParams.Configuration.Merchant.Capabilities.PaynowPayments + paynowPayments) { + this.paynowPayments = paynowPayments; + return this; + } + + /** Allow the merchant to process PromptPay payments. */ + public Builder setPromptpayPayments( + AccountUpdateParams.Configuration.Merchant.Capabilities.PromptpayPayments + promptpayPayments) { + this.promptpayPayments = promptpayPayments; + return this; + } + + /** Allow the merchant to process Revolut Pay payments. */ + public Builder setRevolutPayPayments( + AccountUpdateParams.Configuration.Merchant.Capabilities.RevolutPayPayments + revolutPayPayments) { + this.revolutPayPayments = revolutPayPayments; + return this; + } + + /** Allow the merchant to process Samsung Pay payments. */ + public Builder setSamsungPayPayments( + AccountUpdateParams.Configuration.Merchant.Capabilities.SamsungPayPayments + samsungPayPayments) { + this.samsungPayPayments = samsungPayPayments; + return this; + } + + /** Allow the merchant to process SEPA bank transfer payments. */ + public Builder setSepaBankTransferPayments( + AccountUpdateParams.Configuration.Merchant.Capabilities.SepaBankTransferPayments + sepaBankTransferPayments) { + this.sepaBankTransferPayments = sepaBankTransferPayments; + return this; + } + + /** Allow the merchant to process SEPA Direct Debit payments. */ + public Builder setSepaDebitPayments( + AccountUpdateParams.Configuration.Merchant.Capabilities.SepaDebitPayments + sepaDebitPayments) { + this.sepaDebitPayments = sepaDebitPayments; + return this; + } + + /** Allow the merchant to process Swish payments. */ + public Builder setSwishPayments( + AccountUpdateParams.Configuration.Merchant.Capabilities.SwishPayments swishPayments) { + this.swishPayments = swishPayments; + return this; + } + + /** Allow the merchant to process TWINT payments. */ + public Builder setTwintPayments( + AccountUpdateParams.Configuration.Merchant.Capabilities.TwintPayments twintPayments) { + this.twintPayments = twintPayments; + return this; + } + + /** Allow the merchant to process US bank transfer payments. */ + public Builder setUsBankTransferPayments( + AccountUpdateParams.Configuration.Merchant.Capabilities.UsBankTransferPayments + usBankTransferPayments) { + this.usBankTransferPayments = usBankTransferPayments; + return this; + } + + /** Allow the merchant to process Zip payments. */ + public Builder setZipPayments( + AccountUpdateParams.Configuration.Merchant.Capabilities.ZipPayments zipPayments) { + this.zipPayments = zipPayments; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class AchDebitPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * To request a new Capability for an account, pass true. There can be a delay before the + * requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private AchDebitPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.AchDebitPayments + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.AchDebitPayments( + this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.AchDebitPayments#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.AchDebitPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountUpdateParams.Configuration.Merchant.Capabilities.AchDebitPayments.Protections + protections) { + this.protections = protections; + return this; + } + + /** + * To request a new Capability for an account, pass true. There can be a delay before + * the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.AchDebitPayments + .Protections + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.AchDebitPayments + .Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.AchDebitPayments.Protections#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.AchDebitPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Merchant.Capabilities.AchDebitPayments + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.AchDebitPayments + .Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities + .AchDebitPayments.Protections.PspMigration(this.extraParams, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.AchDebitPayments.Protections.PspMigration#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.AchDebitPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class AcssDebitPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * To request a new Capability for an account, pass true. There can be a delay before the + * requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private AcssDebitPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.AcssDebitPayments + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.AcssDebitPayments( + this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.AcssDebitPayments#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.AcssDebitPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountUpdateParams.Configuration.Merchant.Capabilities.AcssDebitPayments + .Protections + protections) { + this.protections = protections; + return this; + } + + /** + * To request a new Capability for an account, pass true. There can be a delay before + * the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.AcssDebitPayments + .Protections + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.AcssDebitPayments + .Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.AcssDebitPayments.Protections#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.AcssDebitPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Merchant.Capabilities.AcssDebitPayments + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.AcssDebitPayments + .Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities + .AcssDebitPayments.Protections.PspMigration(this.extraParams, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.AcssDebitPayments.Protections.PspMigration#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.AcssDebitPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class AffirmPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * To request a new Capability for an account, pass true. There can be a delay before the + * requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private AffirmPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.AffirmPayments build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.AffirmPayments( + this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.AffirmPayments#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.AffirmPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountUpdateParams.Configuration.Merchant.Capabilities.AffirmPayments.Protections + protections) { + this.protections = protections; + return this; + } + + /** + * To request a new Capability for an account, pass true. There can be a delay before + * the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.AffirmPayments + .Protections + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.AffirmPayments + .Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.AffirmPayments.Protections#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.AffirmPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Merchant.Capabilities.AffirmPayments.Protections + .PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.AffirmPayments + .Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.AffirmPayments + .Protections.PspMigration(this.extraParams, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.AffirmPayments.Protections.PspMigration#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.AffirmPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class AfterpayClearpayPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * To request a new Capability for an account, pass true. There can be a delay before the + * requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private AfterpayClearpayPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.AfterpayClearpayPayments + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities + .AfterpayClearpayPayments(this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.AfterpayClearpayPayments#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.AfterpayClearpayPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountUpdateParams.Configuration.Merchant.Capabilities.AfterpayClearpayPayments + .Protections + protections) { + this.protections = protections; + return this; + } + + /** + * To request a new Capability for an account, pass true. There can be a delay before + * the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities + .AfterpayClearpayPayments.Protections + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities + .AfterpayClearpayPayments.Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.AfterpayClearpayPayments.Protections#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.AfterpayClearpayPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Merchant.Capabilities.AfterpayClearpayPayments + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities + .AfterpayClearpayPayments.Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities + .AfterpayClearpayPayments.Protections.PspMigration( + this.extraParams, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.AfterpayClearpayPayments.Protections.PspMigration#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.AfterpayClearpayPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class AlmaPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * To request a new Capability for an account, pass true. There can be a delay before the + * requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private AlmaPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.AlmaPayments build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.AlmaPayments( + this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.AlmaPayments#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.AlmaPayments#extraParams} for + * the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountUpdateParams.Configuration.Merchant.Capabilities.AlmaPayments.Protections + protections) { + this.protections = protections; + return this; + } + + /** + * To request a new Capability for an account, pass true. There can be a delay before + * the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.AlmaPayments + .Protections + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.AlmaPayments + .Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.AlmaPayments.Protections#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.AlmaPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Merchant.Capabilities.AlmaPayments.Protections + .PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.AlmaPayments + .Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.AlmaPayments + .Protections.PspMigration(this.extraParams, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.AlmaPayments.Protections.PspMigration#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.AlmaPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class AmazonPayPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * To request a new Capability for an account, pass true. There can be a delay before the + * requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private AmazonPayPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.AmazonPayPayments + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.AmazonPayPayments( + this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.AmazonPayPayments#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.AmazonPayPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountUpdateParams.Configuration.Merchant.Capabilities.AmazonPayPayments + .Protections + protections) { + this.protections = protections; + return this; + } + + /** + * To request a new Capability for an account, pass true. There can be a delay before + * the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.AmazonPayPayments + .Protections + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.AmazonPayPayments + .Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.AmazonPayPayments.Protections#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.AmazonPayPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Merchant.Capabilities.AmazonPayPayments + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.AmazonPayPayments + .Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities + .AmazonPayPayments.Protections.PspMigration(this.extraParams, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.AmazonPayPayments.Protections.PspMigration#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.AmazonPayPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class AuBecsDebitPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * To request a new Capability for an account, pass true. There can be a delay before the + * requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private AuBecsDebitPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.AuBecsDebitPayments + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities + .AuBecsDebitPayments(this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.AuBecsDebitPayments#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.AuBecsDebitPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountUpdateParams.Configuration.Merchant.Capabilities.AuBecsDebitPayments + .Protections + protections) { + this.protections = protections; + return this; + } + + /** + * To request a new Capability for an account, pass true. There can be a delay before + * the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.AuBecsDebitPayments + .Protections + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities + .AuBecsDebitPayments.Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.AuBecsDebitPayments.Protections#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.AuBecsDebitPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Merchant.Capabilities.AuBecsDebitPayments + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.AuBecsDebitPayments + .Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities + .AuBecsDebitPayments.Protections.PspMigration( + this.extraParams, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.AuBecsDebitPayments.Protections.PspMigration#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.AuBecsDebitPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class BacsDebitPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * To request a new Capability for an account, pass true. There can be a delay before the + * requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private BacsDebitPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.BacsDebitPayments + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.BacsDebitPayments( + this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.BacsDebitPayments#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.BacsDebitPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountUpdateParams.Configuration.Merchant.Capabilities.BacsDebitPayments + .Protections + protections) { + this.protections = protections; + return this; + } + + /** + * To request a new Capability for an account, pass true. There can be a delay before + * the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.BacsDebitPayments + .Protections + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.BacsDebitPayments + .Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.BacsDebitPayments.Protections#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.BacsDebitPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Merchant.Capabilities.BacsDebitPayments + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.BacsDebitPayments + .Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities + .BacsDebitPayments.Protections.PspMigration(this.extraParams, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.BacsDebitPayments.Protections.PspMigration#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.BacsDebitPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class BancontactPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * To request a new Capability for an account, pass true. There can be a delay before the + * requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private BancontactPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.BancontactPayments + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.BancontactPayments( + this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.BancontactPayments#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.BancontactPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountUpdateParams.Configuration.Merchant.Capabilities.BancontactPayments + .Protections + protections) { + this.protections = protections; + return this; + } + + /** + * To request a new Capability for an account, pass true. There can be a delay before + * the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.BancontactPayments + .Protections + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities + .BancontactPayments.Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.BancontactPayments.Protections#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.BancontactPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Merchant.Capabilities.BancontactPayments + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.BancontactPayments + .Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities + .BancontactPayments.Protections.PspMigration( + this.extraParams, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.BancontactPayments.Protections.PspMigration#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.BancontactPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class BlikPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * To request a new Capability for an account, pass true. There can be a delay before the + * requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private BlikPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.BlikPayments build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.BlikPayments( + this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.BlikPayments#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.BlikPayments#extraParams} for + * the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountUpdateParams.Configuration.Merchant.Capabilities.BlikPayments.Protections + protections) { + this.protections = protections; + return this; + } + + /** + * To request a new Capability for an account, pass true. There can be a delay before + * the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.BlikPayments + .Protections + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.BlikPayments + .Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.BlikPayments.Protections#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.BlikPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Merchant.Capabilities.BlikPayments.Protections + .PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.BlikPayments + .Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.BlikPayments + .Protections.PspMigration(this.extraParams, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.BlikPayments.Protections.PspMigration#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.BlikPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class BoletoPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * To request a new Capability for an account, pass true. There can be a delay before the + * requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private BoletoPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.BoletoPayments build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.BoletoPayments( + this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.BoletoPayments#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.BoletoPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountUpdateParams.Configuration.Merchant.Capabilities.BoletoPayments.Protections + protections) { + this.protections = protections; + return this; + } + + /** + * To request a new Capability for an account, pass true. There can be a delay before + * the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.BoletoPayments + .Protections + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.BoletoPayments + .Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.BoletoPayments.Protections#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.BoletoPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Merchant.Capabilities.BoletoPayments.Protections + .PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.BoletoPayments + .Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.BoletoPayments + .Protections.PspMigration(this.extraParams, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.BoletoPayments.Protections.PspMigration#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.BoletoPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class CardPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * To request a new Capability for an account, pass true. There can be a delay before the + * requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private CardPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.CardPayments build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.CardPayments( + this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.CardPayments#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.CardPayments#extraParams} for + * the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountUpdateParams.Configuration.Merchant.Capabilities.CardPayments.Protections + protections) { + this.protections = protections; + return this; + } + + /** + * To request a new Capability for an account, pass true. There can be a delay before + * the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.CardPayments + .Protections + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.CardPayments + .Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.CardPayments.Protections#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.CardPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Merchant.Capabilities.CardPayments.Protections + .PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.CardPayments + .Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.CardPayments + .Protections.PspMigration(this.extraParams, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.CardPayments.Protections.PspMigration#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.CardPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class CartesBancairesPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * To request a new Capability for an account, pass true. There can be a delay before the + * requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private CartesBancairesPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.CartesBancairesPayments + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities + .CartesBancairesPayments(this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.CartesBancairesPayments#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.CartesBancairesPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountUpdateParams.Configuration.Merchant.Capabilities.CartesBancairesPayments + .Protections + protections) { + this.protections = protections; + return this; + } + + /** + * To request a new Capability for an account, pass true. There can be a delay before + * the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.CartesBancairesPayments + .Protections + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities + .CartesBancairesPayments.Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.CartesBancairesPayments.Protections#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.CartesBancairesPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Merchant.Capabilities.CartesBancairesPayments + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities + .CartesBancairesPayments.Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities + .CartesBancairesPayments.Protections.PspMigration( + this.extraParams, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.CartesBancairesPayments.Protections.PspMigration#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.CartesBancairesPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class CashappPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * To request a new Capability for an account, pass true. There can be a delay before the + * requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private CashappPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.CashappPayments build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.CashappPayments( + this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.CashappPayments#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.CashappPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountUpdateParams.Configuration.Merchant.Capabilities.CashappPayments.Protections + protections) { + this.protections = protections; + return this; + } + + /** + * To request a new Capability for an account, pass true. There can be a delay before + * the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.CashappPayments + .Protections + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.CashappPayments + .Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.CashappPayments.Protections#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.CashappPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Merchant.Capabilities.CashappPayments + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.CashappPayments + .Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.CashappPayments + .Protections.PspMigration(this.extraParams, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.CashappPayments.Protections.PspMigration#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.CashappPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class EpsPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * To request a new Capability for an account, pass true. There can be a delay before the + * requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private EpsPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.EpsPayments build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.EpsPayments( + this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.EpsPayments#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.EpsPayments#extraParams} for + * the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountUpdateParams.Configuration.Merchant.Capabilities.EpsPayments.Protections + protections) { + this.protections = protections; + return this; + } + + /** + * To request a new Capability for an account, pass true. There can be a delay before + * the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.EpsPayments.Protections + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.EpsPayments + .Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.EpsPayments.Protections#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.EpsPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Merchant.Capabilities.EpsPayments.Protections + .PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.EpsPayments + .Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.EpsPayments + .Protections.PspMigration(this.extraParams, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.EpsPayments.Protections.PspMigration#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.EpsPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class FpxPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * To request a new Capability for an account, pass true. There can be a delay before the + * requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private FpxPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.FpxPayments build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.FpxPayments( + this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.FpxPayments#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.FpxPayments#extraParams} for + * the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountUpdateParams.Configuration.Merchant.Capabilities.FpxPayments.Protections + protections) { + this.protections = protections; + return this; + } + + /** + * To request a new Capability for an account, pass true. There can be a delay before + * the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.FpxPayments.Protections + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.FpxPayments + .Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.FpxPayments.Protections#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.FpxPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Merchant.Capabilities.FpxPayments.Protections + .PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.FpxPayments + .Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.FpxPayments + .Protections.PspMigration(this.extraParams, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.FpxPayments.Protections.PspMigration#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.FpxPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class GbBankTransferPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * To request a new Capability for an account, pass true. There can be a delay before the + * requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private GbBankTransferPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.GbBankTransferPayments + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities + .GbBankTransferPayments(this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.GbBankTransferPayments#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.GbBankTransferPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountUpdateParams.Configuration.Merchant.Capabilities.GbBankTransferPayments + .Protections + protections) { + this.protections = protections; + return this; + } + + /** + * To request a new Capability for an account, pass true. There can be a delay before + * the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.GbBankTransferPayments + .Protections + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities + .GbBankTransferPayments.Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.GbBankTransferPayments.Protections#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.GbBankTransferPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Merchant.Capabilities.GbBankTransferPayments + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities + .GbBankTransferPayments.Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities + .GbBankTransferPayments.Protections.PspMigration( + this.extraParams, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.GbBankTransferPayments.Protections.PspMigration#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.GbBankTransferPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class GrabpayPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * To request a new Capability for an account, pass true. There can be a delay before the + * requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private GrabpayPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.GrabpayPayments build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.GrabpayPayments( + this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.GrabpayPayments#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.GrabpayPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountUpdateParams.Configuration.Merchant.Capabilities.GrabpayPayments.Protections + protections) { + this.protections = protections; + return this; + } + + /** + * To request a new Capability for an account, pass true. There can be a delay before + * the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.GrabpayPayments + .Protections + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.GrabpayPayments + .Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.GrabpayPayments.Protections#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.GrabpayPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Merchant.Capabilities.GrabpayPayments + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.GrabpayPayments + .Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.GrabpayPayments + .Protections.PspMigration(this.extraParams, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.GrabpayPayments.Protections.PspMigration#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.GrabpayPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class IdealPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * To request a new Capability for an account, pass true. There can be a delay before the + * requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private IdealPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.IdealPayments build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.IdealPayments( + this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.IdealPayments#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.IdealPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountUpdateParams.Configuration.Merchant.Capabilities.IdealPayments.Protections + protections) { + this.protections = protections; + return this; + } + + /** + * To request a new Capability for an account, pass true. There can be a delay before + * the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.IdealPayments + .Protections + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.IdealPayments + .Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.IdealPayments.Protections#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.IdealPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Merchant.Capabilities.IdealPayments.Protections + .PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.IdealPayments + .Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.IdealPayments + .Protections.PspMigration(this.extraParams, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.IdealPayments.Protections.PspMigration#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.IdealPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class JcbPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * To request a new Capability for an account, pass true. There can be a delay before the + * requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private JcbPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.JcbPayments build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.JcbPayments( + this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.JcbPayments#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.JcbPayments#extraParams} for + * the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountUpdateParams.Configuration.Merchant.Capabilities.JcbPayments.Protections + protections) { + this.protections = protections; + return this; + } + + /** + * To request a new Capability for an account, pass true. There can be a delay before + * the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.JcbPayments.Protections + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.JcbPayments + .Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.JcbPayments.Protections#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.JcbPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Merchant.Capabilities.JcbPayments.Protections + .PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.JcbPayments + .Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.JcbPayments + .Protections.PspMigration(this.extraParams, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.JcbPayments.Protections.PspMigration#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.JcbPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class JpBankTransferPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * To request a new Capability for an account, pass true. There can be a delay before the + * requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private JpBankTransferPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.JpBankTransferPayments + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities + .JpBankTransferPayments(this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.JpBankTransferPayments#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.JpBankTransferPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountUpdateParams.Configuration.Merchant.Capabilities.JpBankTransferPayments + .Protections + protections) { + this.protections = protections; + return this; + } + + /** + * To request a new Capability for an account, pass true. There can be a delay before + * the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.JpBankTransferPayments + .Protections + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities + .JpBankTransferPayments.Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.JpBankTransferPayments.Protections#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.JpBankTransferPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Merchant.Capabilities.JpBankTransferPayments + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities + .JpBankTransferPayments.Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities + .JpBankTransferPayments.Protections.PspMigration( + this.extraParams, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.JpBankTransferPayments.Protections.PspMigration#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.JpBankTransferPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class KakaoPayPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * To request a new Capability for an account, pass true. There can be a delay before the + * requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private KakaoPayPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.KakaoPayPayments + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.KakaoPayPayments( + this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.KakaoPayPayments#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.KakaoPayPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountUpdateParams.Configuration.Merchant.Capabilities.KakaoPayPayments.Protections + protections) { + this.protections = protections; + return this; + } + + /** + * To request a new Capability for an account, pass true. There can be a delay before + * the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.KakaoPayPayments + .Protections + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.KakaoPayPayments + .Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.KakaoPayPayments.Protections#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.KakaoPayPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Merchant.Capabilities.KakaoPayPayments + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.KakaoPayPayments + .Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities + .KakaoPayPayments.Protections.PspMigration(this.extraParams, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.KakaoPayPayments.Protections.PspMigration#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.KakaoPayPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class KlarnaPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * To request a new Capability for an account, pass true. There can be a delay before the + * requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private KlarnaPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.KlarnaPayments build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.KlarnaPayments( + this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.KlarnaPayments#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.KlarnaPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountUpdateParams.Configuration.Merchant.Capabilities.KlarnaPayments.Protections + protections) { + this.protections = protections; + return this; + } + + /** + * To request a new Capability for an account, pass true. There can be a delay before + * the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.KlarnaPayments + .Protections + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.KlarnaPayments + .Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.KlarnaPayments.Protections#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.KlarnaPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Merchant.Capabilities.KlarnaPayments.Protections + .PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.KlarnaPayments + .Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.KlarnaPayments + .Protections.PspMigration(this.extraParams, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.KlarnaPayments.Protections.PspMigration#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.KlarnaPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class KonbiniPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * To request a new Capability for an account, pass true. There can be a delay before the + * requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private KonbiniPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.KonbiniPayments build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.KonbiniPayments( + this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.KonbiniPayments#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.KonbiniPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountUpdateParams.Configuration.Merchant.Capabilities.KonbiniPayments.Protections + protections) { + this.protections = protections; + return this; + } + + /** + * To request a new Capability for an account, pass true. There can be a delay before + * the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.KonbiniPayments + .Protections + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.KonbiniPayments + .Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.KonbiniPayments.Protections#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.KonbiniPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Merchant.Capabilities.KonbiniPayments + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.KonbiniPayments + .Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.KonbiniPayments + .Protections.PspMigration(this.extraParams, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.KonbiniPayments.Protections.PspMigration#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.KonbiniPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class KrCardPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * To request a new Capability for an account, pass true. There can be a delay before the + * requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private KrCardPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.KrCardPayments build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.KrCardPayments( + this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.KrCardPayments#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.KrCardPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountUpdateParams.Configuration.Merchant.Capabilities.KrCardPayments.Protections + protections) { + this.protections = protections; + return this; + } + + /** + * To request a new Capability for an account, pass true. There can be a delay before + * the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.KrCardPayments + .Protections + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.KrCardPayments + .Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.KrCardPayments.Protections#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.KrCardPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Merchant.Capabilities.KrCardPayments.Protections + .PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.KrCardPayments + .Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.KrCardPayments + .Protections.PspMigration(this.extraParams, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.KrCardPayments.Protections.PspMigration#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.KrCardPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class LinkPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * To request a new Capability for an account, pass true. There can be a delay before the + * requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private LinkPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.LinkPayments build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.LinkPayments( + this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.LinkPayments#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.LinkPayments#extraParams} for + * the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountUpdateParams.Configuration.Merchant.Capabilities.LinkPayments.Protections + protections) { + this.protections = protections; + return this; + } + + /** + * To request a new Capability for an account, pass true. There can be a delay before + * the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.LinkPayments + .Protections + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.LinkPayments + .Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.LinkPayments.Protections#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.LinkPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Merchant.Capabilities.LinkPayments.Protections + .PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; - /** - * ID of the test clock to attach to the customer. Can only be set on testmode Accounts, and - * when the Customer Configuration is first set on an Account. - */ - public Builder setTestClock(String testClock) { - this.testClock = testClock; - return this; - } + private Boolean requested; - /** - * ID of the test clock to attach to the customer. Can only be set on testmode Accounts, and - * when the Customer Configuration is first set on an Account. - */ - public Builder setTestClock(EmptyParam testClock) { - this.testClock = testClock; - return this; + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.LinkPayments + .Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.LinkPayments + .Protections.PspMigration(this.extraParams, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.LinkPayments.Protections.PspMigration#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.LinkPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class AutomaticIndirectTax { - /** - * The customer account's tax exemption status: {@code none}, {@code exempt}, or {@code - * reverse}. When {@code reverse}, invoice and receipt PDFs include "Reverse - * charge". - */ - @SerializedName("exempt") - Exempt exempt; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class MobilepayPayments { + /** + * 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; - /** - * 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; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; - /** - * A recent IP address of the customer used for tax reporting and tax location inference. - */ - @SerializedName("ip_address") - Object ipAddress; + /** + * To request a new Capability for an account, pass true. There can be a delay before the + * requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; - /** - * Data source used to identify the customer account's tax location. Defaults to {@code - * identity_address}. Used for automatic indirect tax calculation. - */ - @SerializedName("location_source") - LocationSource locationSource; + private MobilepayPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } - /** - * A per-request flag that indicates when Stripe should validate the customer tax location - - * defaults to {@code auto}. - */ - @SerializedName("validate_location") - ValidateLocation validateLocation; + public static Builder builder() { + return new Builder(); + } - private AutomaticIndirectTax( - Exempt exempt, - Map extraParams, - Object ipAddress, - LocationSource locationSource, - ValidateLocation validateLocation) { - this.exempt = exempt; - this.extraParams = extraParams; - this.ipAddress = ipAddress; - this.locationSource = locationSource; - this.validateLocation = validateLocation; - } + public static class Builder { + private Map extraParams; - public static Builder builder() { - return new Builder(); - } + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.MobilepayPayments + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.MobilepayPayments( + this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.MobilepayPayments#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.MobilepayPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountUpdateParams.Configuration.Merchant.Capabilities.MobilepayPayments + .Protections + protections) { + this.protections = protections; + return this; + } + + /** + * To request a new Capability for an account, pass true. There can be a delay before + * the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.MobilepayPayments + .Protections + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.MobilepayPayments + .Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.MobilepayPayments.Protections#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.MobilepayPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Merchant.Capabilities.MobilepayPayments + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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; - public static class Builder { - private Exempt exempt; + /** Required. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; - private Map extraParams; + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } - private Object ipAddress; + public static Builder builder() { + return new Builder(); + } - private LocationSource locationSource; + public static class Builder { + private Map extraParams; - private ValidateLocation validateLocation; + private Boolean requested; - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Customer.AutomaticIndirectTax build() { - return new AccountUpdateParams.Configuration.Customer.AutomaticIndirectTax( - this.exempt, - this.extraParams, - this.ipAddress, - this.locationSource, - this.validateLocation); - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.MobilepayPayments + .Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities + .MobilepayPayments.Protections.PspMigration(this.extraParams, this.requested); + } - /** - * The customer account's tax exemption status: {@code none}, {@code exempt}, or {@code - * reverse}. When {@code reverse}, invoice and receipt PDFs include "Reverse - * charge". - */ - public Builder setExempt( - AccountUpdateParams.Configuration.Customer.AutomaticIndirectTax.Exempt exempt) { - this.exempt = exempt; - 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.MobilepayPayments.Protections.PspMigration#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 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 - * AccountUpdateParams.Configuration.Customer.AutomaticIndirectTax#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.MobilepayPayments.Protections.PspMigration#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 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 - * AccountUpdateParams.Configuration.Customer.AutomaticIndirectTax#extraParams} for the - * field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** Required. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } } - this.extraParams.putAll(map); - return this; } + } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class MultibancoPayments { /** - * A recent IP address of the customer used for tax reporting and tax location inference. + * 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. */ - public Builder setIpAddress(String ipAddress) { - this.ipAddress = ipAddress; - return this; - } + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; - /** - * A recent IP address of the customer used for tax reporting and tax location inference. - */ - public Builder setIpAddress(EmptyParam ipAddress) { - this.ipAddress = ipAddress; - return this; - } + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; /** - * Data source used to identify the customer account's tax location. Defaults to {@code - * identity_address}. Used for automatic indirect tax calculation. + * To request a new Capability for an account, pass true. There can be a delay before the + * requested Capability becomes active. */ - public Builder setLocationSource( - AccountUpdateParams.Configuration.Customer.AutomaticIndirectTax.LocationSource - locationSource) { - this.locationSource = locationSource; - return this; - } + @SerializedName("requested") + Boolean requested; - /** - * A per-request flag that indicates when Stripe should validate the customer tax location - * - defaults to {@code auto}. - */ - public Builder setValidateLocation( - AccountUpdateParams.Configuration.Customer.AutomaticIndirectTax.ValidateLocation - validateLocation) { - this.validateLocation = validateLocation; - return this; + private MultibancoPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; } - } - public enum Exempt implements ApiRequestParams.EnumParam { - @SerializedName("exempt") - EXEMPT("exempt"), + public static Builder builder() { + return new Builder(); + } - @SerializedName("none") - NONE("none"), + public static class Builder { + private Map extraParams; - @SerializedName("reverse") - REVERSE("reverse"); + private Protections protections; - @Getter(onMethod_ = {@Override}) - private final String value; + private Boolean requested; - Exempt(String value) { - this.value = value; - } - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.MultibancoPayments + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.MultibancoPayments( + this.extraParams, this.protections, this.requested); + } - public enum LocationSource implements ApiRequestParams.EnumParam { - @SerializedName("identity_address") - IDENTITY_ADDRESS("identity_address"), + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.MultibancoPayments#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; + } - @SerializedName("ip_address") - IP_ADDRESS("ip_address"), + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.MultibancoPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - @SerializedName("payment_method") - PAYMENT_METHOD("payment_method"), + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountUpdateParams.Configuration.Merchant.Capabilities.MultibancoPayments + .Protections + protections) { + this.protections = protections; + return this; + } - @SerializedName("shipping_address") - SHIPPING_ADDRESS("shipping_address"); + /** + * To request a new Capability for an account, pass true. There can be a delay before + * the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } - @Getter(onMethod_ = {@Override}) - private final String value; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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; - LocationSource(String value) { - this.value = value; - } - } + /** Required. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - public enum ValidateLocation implements ApiRequestParams.EnumParam { - @SerializedName("auto") - AUTO("auto"), + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - @SerializedName("deferred") - DEFERRED("deferred"), + public static Builder builder() { + return new Builder(); + } - @SerializedName("immediately") - IMMEDIATELY("immediately"); + public static class Builder { + private Map extraParams; - @Getter(onMethod_ = {@Override}) - private final String value; + private PspMigration pspMigration; - ValidateLocation(String value) { - this.value = value; - } - } - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.MultibancoPayments + .Protections + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities + .MultibancoPayments.Protections(this.extraParams, this.pspMigration); + } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class Billing { - /** - * The ID of a {@code PaymentMethod} attached to this Account's {@code customer} - * configuration, used as the default payment method for invoices and subscriptions. - */ - @SerializedName("default_payment_method") - Object defaultPaymentMethod; + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.MultibancoPayments.Protections#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; + } - /** - * 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; + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.MultibancoPayments.Protections#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - /** Default invoice settings for the customer account. */ - @SerializedName("invoice") - Invoice invoice; + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Merchant.Capabilities.MultibancoPayments + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } - private Billing( - Object defaultPaymentMethod, Map extraParams, Invoice invoice) { - this.defaultPaymentMethod = defaultPaymentMethod; - this.extraParams = extraParams; - this.invoice = invoice; - } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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; - public static Builder builder() { - return new Builder(); - } + /** Required. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; - public static class Builder { - private Object defaultPaymentMethod; + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } - private Map extraParams; + public static Builder builder() { + return new Builder(); + } - private Invoice invoice; + public static class Builder { + private Map extraParams; - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Customer.Billing build() { - return new AccountUpdateParams.Configuration.Customer.Billing( - this.defaultPaymentMethod, this.extraParams, this.invoice); - } + private Boolean requested; - /** - * The ID of a {@code PaymentMethod} attached to this Account's {@code customer} - * configuration, used as the default payment method for invoices and subscriptions. - */ - public Builder setDefaultPaymentMethod(String defaultPaymentMethod) { - this.defaultPaymentMethod = defaultPaymentMethod; - return this; - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.MultibancoPayments + .Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities + .MultibancoPayments.Protections.PspMigration( + this.extraParams, this.requested); + } - /** - * The ID of a {@code PaymentMethod} attached to this Account's {@code customer} - * configuration, used as the default payment method for invoices and subscriptions. - */ - public Builder setDefaultPaymentMethod(EmptyParam defaultPaymentMethod) { - this.defaultPaymentMethod = defaultPaymentMethod; - 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.MultibancoPayments.Protections.PspMigration#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 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 AccountUpdateParams.Configuration.Customer.Billing#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.MultibancoPayments.Protections.PspMigration#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 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 AccountUpdateParams.Configuration.Customer.Billing#extraParams} for the - * field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** Required. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } } - this.extraParams.putAll(map); - return this; - } - - /** Default invoice settings for the customer account. */ - public Builder setInvoice( - AccountUpdateParams.Configuration.Customer.Billing.Invoice invoice) { - this.invoice = invoice; - return this; } } @Getter @EqualsAndHashCode(callSuper = false) - public static class Invoice { - /** - * The list of up to 4 default custom fields to be displayed on invoices for this - * customer. - */ - @SerializedName("custom_fields") - List customFields; - + public static class MxBankTransferPayments { /** * 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. @@ -3253,109 +15113,48 @@ public static class Invoice { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** Default invoice footer. */ - @SerializedName("footer") - Object footer; - - /** Sequence number to use on the customer account's next invoice. Defaults to 1. */ - @SerializedName("next_sequence") - Long nextSequence; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; /** - * Prefix used to generate unique invoice numbers. Must be 3-12 uppercase letters or - * numbers. + * To request a new Capability for an account, pass true. There can be a delay before the + * requested Capability becomes active. */ - @SerializedName("prefix") - Object prefix; - - /** Default invoice PDF rendering options. */ - @SerializedName("rendering") - Rendering rendering; + @SerializedName("requested") + Boolean requested; - private Invoice( - List - customFields, - Map extraParams, - Object footer, - Long nextSequence, - Object prefix, - Rendering rendering) { - this.customFields = customFields; + private MxBankTransferPayments( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; - this.footer = footer; - this.nextSequence = nextSequence; - this.prefix = prefix; - this.rendering = rendering; + this.protections = protections; + this.requested = requested; } public static Builder builder() { - return new Builder(); - } - - public static class Builder { - private List - customFields; - - private Map extraParams; - - private Object footer; - - private Long nextSequence; - - private Object prefix; - - private Rendering rendering; - - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Customer.Billing.Invoice build() { - return new AccountUpdateParams.Configuration.Customer.Billing.Invoice( - this.customFields, - this.extraParams, - this.footer, - this.nextSequence, - this.prefix, - this.rendering); - } - - /** - * Add an element to `customFields` list. A list is initialized for the first - * `add/addAll` call, and subsequent calls adds additional elements to the original - * list. See {@link - * AccountUpdateParams.Configuration.Customer.Billing.Invoice#customFields} for the - * field documentation. - */ - public Builder addCustomField( - AccountUpdateParams.Configuration.Customer.Billing.Invoice.CustomField element) { - if (this.customFields == null) { - this.customFields = new ArrayList<>(); - } - this.customFields.add(element); - return this; - } + return new Builder(); + } - /** - * Add all elements to `customFields` list. A list is initialized for the first - * `add/addAll` call, and subsequent calls adds additional elements to the original - * list. See {@link - * AccountUpdateParams.Configuration.Customer.Billing.Invoice#customFields} for the - * field documentation. - */ - public Builder addAllCustomField( - List - elements) { - if (this.customFields == null) { - this.customFields = new ArrayList<>(); - } - this.customFields.addAll(elements); - return this; + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.MxBankTransferPayments + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities + .MxBankTransferPayments(this.extraParams, this.protections, this.requested); } /** * 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 - * AccountUpdateParams.Configuration.Customer.Billing.Invoice#extraParams} for the field - * documentation. + * AccountUpdateParams.Configuration.Merchant.Capabilities.MxBankTransferPayments#extraParams} + * for the field documentation. */ public Builder putExtraParam(String key, Object value) { if (this.extraParams == null) { @@ -3369,8 +15168,8 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountUpdateParams.Configuration.Customer.Billing.Invoice#extraParams} for the field - * documentation. + * AccountUpdateParams.Configuration.Merchant.Capabilities.MxBankTransferPayments#extraParams} + * for the field documentation. */ public Builder putAllExtraParam(Map map) { if (this.extraParams == null) { @@ -3380,53 +15179,28 @@ public Builder putAllExtraParam(Map map) { return this; } - /** Default invoice footer. */ - public Builder setFooter(String footer) { - this.footer = footer; - return this; - } - - /** Default invoice footer. */ - public Builder setFooter(EmptyParam footer) { - this.footer = footer; - return this; - } - - /** Sequence number to use on the customer account's next invoice. Defaults to 1. */ - public Builder setNextSequence(Long nextSequence) { - this.nextSequence = nextSequence; - return this; - } - - /** - * Prefix used to generate unique invoice numbers. Must be 3-12 uppercase letters or - * numbers. - */ - public Builder setPrefix(String prefix) { - this.prefix = prefix; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountUpdateParams.Configuration.Merchant.Capabilities.MxBankTransferPayments + .Protections + protections) { + this.protections = protections; return this; } /** - * Prefix used to generate unique invoice numbers. Must be 3-12 uppercase letters or - * numbers. + * To request a new Capability for an account, pass true. There can be a delay before + * the requested Capability becomes active. */ - public Builder setPrefix(EmptyParam prefix) { - this.prefix = prefix; - return this; - } - - /** Default invoice PDF rendering options. */ - public Builder setRendering( - AccountUpdateParams.Configuration.Customer.Billing.Invoice.Rendering rendering) { - this.rendering = rendering; + public Builder setRequested(Boolean requested) { + this.requested = requested; return this; } } @Getter @EqualsAndHashCode(callSuper = false) - public static class CustomField { + public static class Protections { /** * 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} @@ -3437,24 +15211,13 @@ public static class CustomField { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** - * Required. The name of the custom field. This may be up to 40 - * characters. - */ - @SerializedName("name") - Object name; - - /** - * Required. The value of the custom field. This may be up to 140 - * characters. When updating, pass an empty string to remove previously-defined values. - */ - @SerializedName("value") - Object value; + /** Required. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - private CustomField(Map extraParams, Object name, Object value) { + private Protections(Map extraParams, PspMigration pspMigration) { this.extraParams = extraParams; - this.name = name; - this.value = value; + this.pspMigration = pspMigration; } public static Builder builder() { @@ -3464,22 +15227,21 @@ public static Builder builder() { public static class Builder { private Map extraParams; - private Object name; - - private Object value; + private PspMigration pspMigration; /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Customer.Billing.Invoice.CustomField + public AccountUpdateParams.Configuration.Merchant.Capabilities.MxBankTransferPayments + .Protections build() { - return new AccountUpdateParams.Configuration.Customer.Billing.Invoice.CustomField( - this.extraParams, this.name, this.value); + return new AccountUpdateParams.Configuration.Merchant.Capabilities + .MxBankTransferPayments.Protections(this.extraParams, this.pspMigration); } /** * 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 - * AccountUpdateParams.Configuration.Customer.Billing.Invoice.CustomField#extraParams} + * AccountUpdateParams.Configuration.Merchant.Capabilities.MxBankTransferPayments.Protections#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -3494,7 +15256,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountUpdateParams.Configuration.Customer.Billing.Invoice.CustomField#extraParams} + * AccountUpdateParams.Configuration.Merchant.Capabilities.MxBankTransferPayments.Protections#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -3505,57 +15267,196 @@ public Builder putAllExtraParam(Map map) { return this; } - /** - * Required. The name of the custom field. This may be up to 40 - * characters. - */ - public Builder setName(String name) { - this.name = name; + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Merchant.Capabilities.MxBankTransferPayments + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; return this; } + } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { /** - * Required. The name of the custom field. This may be up to 40 - * characters. + * 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. */ - public Builder setName(EmptyParam name) { - this.name = name; - return this; + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** Required. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; } - /** - * Required. The value of the custom field. This may be up to 140 - * characters. When updating, pass an empty string to remove previously-defined - * values. - */ - public Builder setValue(String value) { - this.value = value; - return this; + public static Builder builder() { + return new Builder(); } - /** - * Required. The value of the custom field. This may be up to 140 - * characters. When updating, pass an empty string to remove previously-defined - * values. - */ - public Builder setValue(EmptyParam value) { - this.value = value; - return this; + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities + .MxBankTransferPayments.Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities + .MxBankTransferPayments.Protections.PspMigration( + this.extraParams, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.MxBankTransferPayments.Protections.PspMigration#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.MxBankTransferPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class NaverPayPayments { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * To request a new Capability for an account, pass true. There can be a delay before the + * requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private NaverPayPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.NaverPayPayments + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.NaverPayPayments( + this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.NaverPayPayments#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.NaverPayPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountUpdateParams.Configuration.Merchant.Capabilities.NaverPayPayments.Protections + protections) { + this.protections = protections; + return this; } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class Rendering { /** - * Indicates whether displayed line item prices and amounts on invoice PDFs include - * inclusive tax amounts. Must be either {@code include_inclusive_tax} or {@code - * exclude_tax}. + * To request a new Capability for an account, pass true. There can be a delay before + * the requested Capability becomes active. */ - @SerializedName("amount_tax_display") - AmountTaxDisplay amountTaxDisplay; + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { /** * 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} @@ -3566,17 +15467,13 @@ public static class Rendering { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** ID of the invoice rendering template to use for future invoices. */ - @SerializedName("template") - Object template; + /** Required. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - private Rendering( - AmountTaxDisplay amountTaxDisplay, - Map extraParams, - Object template) { - this.amountTaxDisplay = amountTaxDisplay; + private Protections(Map extraParams, PspMigration pspMigration) { this.extraParams = extraParams; - this.template = template; + this.pspMigration = pspMigration; } public static Builder builder() { @@ -3584,36 +15481,23 @@ public static Builder builder() { } public static class Builder { - private AmountTaxDisplay amountTaxDisplay; - private Map extraParams; - private Object template; + private PspMigration pspMigration; /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Customer.Billing.Invoice.Rendering build() { - return new AccountUpdateParams.Configuration.Customer.Billing.Invoice.Rendering( - this.amountTaxDisplay, this.extraParams, this.template); - } - - /** - * Indicates whether displayed line item prices and amounts on invoice PDFs include - * inclusive tax amounts. Must be either {@code include_inclusive_tax} or {@code - * exclude_tax}. - */ - public Builder setAmountTaxDisplay( - AccountUpdateParams.Configuration.Customer.Billing.Invoice.Rendering - .AmountTaxDisplay - amountTaxDisplay) { - this.amountTaxDisplay = amountTaxDisplay; - return this; + public AccountUpdateParams.Configuration.Merchant.Capabilities.NaverPayPayments + .Protections + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.NaverPayPayments + .Protections(this.extraParams, this.pspMigration); } /** * 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 - * AccountUpdateParams.Configuration.Customer.Billing.Invoice.Rendering#extraParams} + * AccountUpdateParams.Configuration.Merchant.Capabilities.NaverPayPayments.Protections#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -3628,7 +15512,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountUpdateParams.Configuration.Customer.Billing.Invoice.Rendering#extraParams} + * AccountUpdateParams.Configuration.Merchant.Capabilities.NaverPayPayments.Protections#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -3639,124 +15523,98 @@ public Builder putAllExtraParam(Map map) { return this; } - /** ID of the invoice rendering template to use for future invoices. */ - public Builder setTemplate(String template) { - this.template = template; - return this; - } - - /** ID of the invoice rendering template to use for future invoices. */ - public Builder setTemplate(EmptyParam template) { - this.template = template; + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Merchant.Capabilities.NaverPayPayments + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; return this; } } - public enum AmountTaxDisplay implements ApiRequestParams.EnumParam { - @SerializedName("exclude_tax") - EXCLUDE_TAX("exclude_tax"), - - @SerializedName("include_inclusive_tax") - INCLUDE_INCLUSIVE_TAX("include_inclusive_tax"); + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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; - @Getter(onMethod_ = {@Override}) - private final String value; + /** Required. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; - AmountTaxDisplay(String value) { - this.value = value; + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; } - } - } - } - } - - @Getter - @EqualsAndHashCode(callSuper = false) - public static class Capabilities { - /** - * Generates requirements for enabling automatic indirect tax calculation on this customer's - * invoices or subscriptions. Recommended to request this capability if planning to enable - * automatic tax calculation on this customer's invoices or subscriptions. - */ - @SerializedName("automatic_indirect_tax") - AutomaticIndirectTax automaticIndirectTax; - - /** - * 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; - - private Capabilities( - AutomaticIndirectTax automaticIndirectTax, Map extraParams) { - this.automaticIndirectTax = automaticIndirectTax; - this.extraParams = extraParams; - } - public static Builder builder() { - return new Builder(); - } + public static Builder builder() { + return new Builder(); + } - public static class Builder { - private AutomaticIndirectTax automaticIndirectTax; + public static class Builder { + private Map extraParams; - private Map extraParams; + private Boolean requested; - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Customer.Capabilities build() { - return new AccountUpdateParams.Configuration.Customer.Capabilities( - this.automaticIndirectTax, this.extraParams); - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.NaverPayPayments + .Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities + .NaverPayPayments.Protections.PspMigration(this.extraParams, this.requested); + } - /** - * Generates requirements for enabling automatic indirect tax calculation on this - * customer's invoices or subscriptions. Recommended to request this capability if - * planning to enable automatic tax calculation on this customer's invoices or - * subscriptions. - */ - public Builder setAutomaticIndirectTax( - AccountUpdateParams.Configuration.Customer.Capabilities.AutomaticIndirectTax - automaticIndirectTax) { - this.automaticIndirectTax = automaticIndirectTax; - 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.NaverPayPayments.Protections.PspMigration#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 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 AccountUpdateParams.Configuration.Customer.Capabilities#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.NaverPayPayments.Protections.PspMigration#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 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 AccountUpdateParams.Configuration.Customer.Capabilities#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** Required. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } } - this.extraParams.putAll(map); - return this; } } @Getter @EqualsAndHashCode(callSuper = false) - public static class AutomaticIndirectTax { + public static class OxxoPayments { /** * 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. @@ -3767,6 +15625,10 @@ public static class AutomaticIndirectTax { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + /** * To request a new Capability for an account, pass true. There can be a delay before the * requested Capability becomes active. @@ -3774,8 +15636,10 @@ public static class AutomaticIndirectTax { @SerializedName("requested") Boolean requested; - private AutomaticIndirectTax(Map extraParams, Boolean requested) { + private OxxoPayments( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -3786,21 +15650,22 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Customer.Capabilities.AutomaticIndirectTax - build() { - return new AccountUpdateParams.Configuration.Customer.Capabilities - .AutomaticIndirectTax(this.extraParams, this.requested); + public AccountUpdateParams.Configuration.Merchant.Capabilities.OxxoPayments build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.OxxoPayments( + this.extraParams, this.protections, this.requested); } /** * 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 - * AccountUpdateParams.Configuration.Customer.Capabilities.AutomaticIndirectTax#extraParams} - * for the field documentation. + * AccountUpdateParams.Configuration.Merchant.Capabilities.OxxoPayments#extraParams} for + * the field documentation. */ public Builder putExtraParam(String key, Object value) { if (this.extraParams == null) { @@ -3814,8 +15679,8 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountUpdateParams.Configuration.Customer.Capabilities.AutomaticIndirectTax#extraParams} - * for the field documentation. + * AccountUpdateParams.Configuration.Merchant.Capabilities.OxxoPayments#extraParams} for + * the field documentation. */ public Builder putAllExtraParam(Map map) { if (this.extraParams == null) { @@ -3825,6 +15690,14 @@ public Builder putAllExtraParam(Map map) { return this; } + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountUpdateParams.Configuration.Merchant.Capabilities.OxxoPayments.Protections + protections) { + this.protections = protections; + return this; + } + /** * To request a new Capability for an account, pass true. There can be a delay before * the requested Capability becomes active. @@ -3834,135 +15707,168 @@ public Builder setRequested(Boolean requested) { return this; } } - } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class Shipping { - /** Customer shipping address. */ - @SerializedName("address") - Address address; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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; - /** - * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - /** Customer name. */ - @SerializedName("name") - Object name; + public static Builder builder() { + return new Builder(); + } - /** Customer phone (including extension). */ - @SerializedName("phone") - Object phone; + public static class Builder { + private Map extraParams; - private Shipping( - Address address, Map extraParams, Object name, Object phone) { - this.address = address; - this.extraParams = extraParams; - this.name = name; - this.phone = phone; - } + private PspMigration pspMigration; - public static Builder builder() { - return new Builder(); - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.OxxoPayments + .Protections + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.OxxoPayments + .Protections(this.extraParams, this.pspMigration); + } - public static class Builder { - private Address address; + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.OxxoPayments.Protections#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; + } - private Map extraParams; + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.OxxoPayments.Protections#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - private Object name; + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Merchant.Capabilities.OxxoPayments.Protections + .PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } - private Object phone; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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; - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Customer.Shipping build() { - return new AccountUpdateParams.Configuration.Customer.Shipping( - this.address, this.extraParams, this.name, this.phone); - } + /** Required. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; - /** Customer shipping address. */ - public Builder setAddress( - AccountUpdateParams.Configuration.Customer.Shipping.Address address) { - this.address = address; - return this; - } + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } - /** - * 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 AccountUpdateParams.Configuration.Customer.Shipping#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; - } + public static Builder builder() { + return new Builder(); + } - /** - * 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 AccountUpdateParams.Configuration.Customer.Shipping#extraParams} for - * the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); - } - this.extraParams.putAll(map); - return this; - } + public static class Builder { + private Map extraParams; - /** Customer name. */ - public Builder setName(String name) { - this.name = name; - return this; - } + private Boolean requested; - /** Customer name. */ - public Builder setName(EmptyParam name) { - this.name = name; - return this; - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.OxxoPayments + .Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.OxxoPayments + .Protections.PspMigration(this.extraParams, this.requested); + } - /** Customer phone (including extension). */ - public Builder setPhone(String phone) { - this.phone = phone; - 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.OxxoPayments.Protections.PspMigration#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; + } - /** Customer phone (including extension). */ - public Builder setPhone(EmptyParam phone) { - this.phone = phone; - 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.OxxoPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } } } @Getter @EqualsAndHashCode(callSuper = false) - public static class Address { - /** City, district, suburb, town, or village. */ - @SerializedName("city") - Object city; - - /** - * Two-letter country code (ISO - * 3166-1 alpha-2). - */ - @SerializedName("country") - Object country; - + public static class P24Payments { /** * 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. @@ -3973,106 +15879,47 @@ public static class Address { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** Address line 1 (e.g., street, PO Box, or company name). */ - @SerializedName("line1") - Object line1; - - /** Address line 2 (e.g., apartment, suite, unit, or building). */ - @SerializedName("line2") - Object line2; - - /** ZIP or postal code. */ - @SerializedName("postal_code") - Object postalCode; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; - /** State, county, province, or region. */ - @SerializedName("state") - Object state; + /** + * To request a new Capability for an account, pass true. There can be a delay before the + * requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; - private Address( - Object city, - Object country, - Map extraParams, - Object line1, - Object line2, - Object postalCode, - Object state) { - this.city = city; - this.country = country; + private P24Payments( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; - this.line1 = line1; - this.line2 = line2; - this.postalCode = postalCode; - this.state = state; + this.protections = protections; + this.requested = requested; } public static Builder builder() { - return new Builder(); - } - - public static class Builder { - private Object city; - - private Object country; - - private Map extraParams; - - private Object line1; - - private Object line2; - - private Object postalCode; - - private Object state; - - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Customer.Shipping.Address build() { - return new AccountUpdateParams.Configuration.Customer.Shipping.Address( - this.city, - this.country, - this.extraParams, - this.line1, - this.line2, - this.postalCode, - this.state); - } - - /** City, district, suburb, town, or village. */ - public Builder setCity(String city) { - this.city = city; - return this; - } + return new Builder(); + } - /** City, district, suburb, town, or village. */ - public Builder setCity(EmptyParam city) { - this.city = city; - return this; - } + public static class Builder { + private Map extraParams; - /** - * Two-letter country code (ISO 3166-1 alpha-2). - */ - public Builder setCountry(String country) { - this.country = country; - return this; - } + private Protections protections; - /** - * Two-letter country code (ISO 3166-1 alpha-2). - */ - public Builder setCountry(EmptyParam country) { - this.country = country; - return this; + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.P24Payments build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.P24Payments( + this.extraParams, this.protections, this.requested); } /** * 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 - * AccountUpdateParams.Configuration.Customer.Shipping.Address#extraParams} for the - * field documentation. + * AccountUpdateParams.Configuration.Merchant.Capabilities.P24Payments#extraParams} for + * the field documentation. */ public Builder putExtraParam(String key, Object value) { if (this.extraParams == null) { @@ -4086,8 +15933,8 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountUpdateParams.Configuration.Customer.Shipping.Address#extraParams} for the - * field documentation. + * AccountUpdateParams.Configuration.Merchant.Capabilities.P24Payments#extraParams} for + * the field documentation. */ public Builder putAllExtraParam(Map map) { if (this.extraParams == null) { @@ -4097,1363 +15944,1718 @@ public Builder putAllExtraParam(Map map) { return this; } - /** Address line 1 (e.g., street, PO Box, or company name). */ - public Builder setLine1(String line1) { - this.line1 = line1; - return this; - } - - /** Address line 1 (e.g., street, PO Box, or company name). */ - public Builder setLine1(EmptyParam line1) { - this.line1 = line1; - return this; - } - - /** Address line 2 (e.g., apartment, suite, unit, or building). */ - public Builder setLine2(String line2) { - this.line2 = line2; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountUpdateParams.Configuration.Merchant.Capabilities.P24Payments.Protections + protections) { + this.protections = protections; return this; } - /** Address line 2 (e.g., apartment, suite, unit, or building). */ - public Builder setLine2(EmptyParam line2) { - this.line2 = line2; + /** + * To request a new Capability for an account, pass true. There can be a delay before + * the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; return this; } + } - /** ZIP or postal code. */ - public Builder setPostalCode(String postalCode) { - this.postalCode = postalCode; - return this; - } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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; - /** ZIP or postal code. */ - public Builder setPostalCode(EmptyParam postalCode) { - this.postalCode = postalCode; - return this; - } + /** Required. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - /** State, county, province, or region. */ - public Builder setState(String state) { - this.state = state; - return this; + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; } - /** State, county, province, or region. */ - public Builder setState(EmptyParam state) { - this.state = state; - return this; + public static Builder builder() { + return new Builder(); } - } - } - } - } - - @Getter - @EqualsAndHashCode(callSuper = false) - public static class Merchant { - /** - * Represents the state of the configuration, and can be updated to deactivate or re-apply a - * configuration. - */ - @SerializedName("applied") - Boolean applied; - - /** Settings for Bacs Direct Debit payments. */ - @SerializedName("bacs_debit_payments") - BacsDebitPayments bacsDebitPayments; - - /** - * Settings used to apply the merchant's branding to email receipts, invoices, Checkout, and - * other products. - */ - @SerializedName("branding") - Branding branding; - - /** Capabilities to request on the Merchant Configuration. */ - @SerializedName("capabilities") - Capabilities capabilities; - - /** Card payments settings. */ - @SerializedName("card_payments") - CardPayments cardPayments; - - /** - * 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; - - /** Settings specific to Konbini payments on the account. */ - @SerializedName("konbini_payments") - KonbiniPayments konbiniPayments; - - /** - * The Merchant Category Code (MCC) for the merchant. MCCs classify businesses based on the - * goods or services they provide. - */ - @SerializedName("mcc") - Object mcc; - - /** Settings for the default text that appears on statements for language variations. */ - @SerializedName("script_statement_descriptor") - ScriptStatementDescriptor scriptStatementDescriptor; - - /** Settings for Smart Disputes automatic response feature. */ - @SerializedName("smart_disputes") - SmartDisputes smartDisputes; - - /** - * Settings for the default statement descriptor text. - */ - @SerializedName("statement_descriptor") - StatementDescriptor statementDescriptor; - - /** Publicly available contact information for sending support issues to. */ - @SerializedName("support") - Support support; - - private Merchant( - Boolean applied, - BacsDebitPayments bacsDebitPayments, - Branding branding, - Capabilities capabilities, - CardPayments cardPayments, - Map extraParams, - KonbiniPayments konbiniPayments, - Object mcc, - ScriptStatementDescriptor scriptStatementDescriptor, - SmartDisputes smartDisputes, - StatementDescriptor statementDescriptor, - Support support) { - this.applied = applied; - this.bacsDebitPayments = bacsDebitPayments; - this.branding = branding; - this.capabilities = capabilities; - this.cardPayments = cardPayments; - this.extraParams = extraParams; - this.konbiniPayments = konbiniPayments; - this.mcc = mcc; - this.scriptStatementDescriptor = scriptStatementDescriptor; - this.smartDisputes = smartDisputes; - this.statementDescriptor = statementDescriptor; - this.support = support; - } - - public static Builder builder() { - return new Builder(); - } - - public static class Builder { - private Boolean applied; - private BacsDebitPayments bacsDebitPayments; - - private Branding branding; - - private Capabilities capabilities; - - private CardPayments cardPayments; + public static class Builder { + private Map extraParams; - private Map extraParams; + private PspMigration pspMigration; - private KonbiniPayments konbiniPayments; + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.P24Payments.Protections + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.P24Payments + .Protections(this.extraParams, this.pspMigration); + } - private Object mcc; + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.P24Payments.Protections#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; + } - private ScriptStatementDescriptor scriptStatementDescriptor; + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.P24Payments.Protections#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - private SmartDisputes smartDisputes; + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Merchant.Capabilities.P24Payments.Protections + .PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } - private StatementDescriptor statementDescriptor; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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; - private Support support; + /** Required. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant build() { - return new AccountUpdateParams.Configuration.Merchant( - this.applied, - this.bacsDebitPayments, - this.branding, - this.capabilities, - this.cardPayments, - this.extraParams, - this.konbiniPayments, - this.mcc, - this.scriptStatementDescriptor, - this.smartDisputes, - this.statementDescriptor, - this.support); - } + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } - /** - * Represents the state of the configuration, and can be updated to deactivate or re-apply a - * configuration. - */ - public Builder setApplied(Boolean applied) { - this.applied = applied; - return this; - } + public static Builder builder() { + return new Builder(); + } - /** Settings for Bacs Direct Debit payments. */ - public Builder setBacsDebitPayments( - AccountUpdateParams.Configuration.Merchant.BacsDebitPayments bacsDebitPayments) { - this.bacsDebitPayments = bacsDebitPayments; - return this; - } + public static class Builder { + private Map extraParams; - /** - * Settings used to apply the merchant's branding to email receipts, invoices, Checkout, and - * other products. - */ - public Builder setBranding(AccountUpdateParams.Configuration.Merchant.Branding branding) { - this.branding = branding; - return this; - } + private Boolean requested; - /** Capabilities to request on the Merchant Configuration. */ - public Builder setCapabilities( - AccountUpdateParams.Configuration.Merchant.Capabilities capabilities) { - this.capabilities = capabilities; - return this; - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.P24Payments + .Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.P24Payments + .Protections.PspMigration(this.extraParams, this.requested); + } - /** Card payments settings. */ - public Builder setCardPayments( - AccountUpdateParams.Configuration.Merchant.CardPayments cardPayments) { - this.cardPayments = cardPayments; - 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.P24Payments.Protections.PspMigration#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 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 AccountUpdateParams.Configuration.Merchant#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.P24Payments.Protections.PspMigration#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 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 AccountUpdateParams.Configuration.Merchant#extraParams} for the field - * documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** Required. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } } - this.extraParams.putAll(map); - return this; - } - - /** Settings specific to Konbini payments on the account. */ - public Builder setKonbiniPayments( - AccountUpdateParams.Configuration.Merchant.KonbiniPayments konbiniPayments) { - this.konbiniPayments = konbiniPayments; - return this; } - /** - * The Merchant Category Code (MCC) for the merchant. MCCs classify businesses based on the - * goods or services they provide. - */ - public Builder setMcc(String mcc) { - this.mcc = mcc; - return this; - } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PayByBankPayments { + /** + * 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 Merchant Category Code (MCC) for the merchant. MCCs classify businesses based on the - * goods or services they provide. - */ - public Builder setMcc(EmptyParam mcc) { - this.mcc = mcc; - return this; - } + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; - /** Settings for the default text that appears on statements for language variations. */ - public Builder setScriptStatementDescriptor( - AccountUpdateParams.Configuration.Merchant.ScriptStatementDescriptor - scriptStatementDescriptor) { - this.scriptStatementDescriptor = scriptStatementDescriptor; - return this; - } + /** + * To request a new Capability for an account, pass true. There can be a delay before the + * requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; - /** Settings for Smart Disputes automatic response feature. */ - public Builder setSmartDisputes( - AccountUpdateParams.Configuration.Merchant.SmartDisputes smartDisputes) { - this.smartDisputes = smartDisputes; - return this; - } + private PayByBankPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } - /** - * Settings for the default statement descriptor text. - */ - public Builder setStatementDescriptor( - AccountUpdateParams.Configuration.Merchant.StatementDescriptor statementDescriptor) { - this.statementDescriptor = statementDescriptor; - return this; - } + public static Builder builder() { + return new Builder(); + } - /** Publicly available contact information for sending support issues to. */ - public Builder setSupport(AccountUpdateParams.Configuration.Merchant.Support support) { - this.support = support; - return this; - } - } + public static class Builder { + private Map extraParams; - @Getter - @EqualsAndHashCode(callSuper = false) - public static class BacsDebitPayments { - /** Display name for Bacs Direct Debit payments. */ - @SerializedName("display_name") - Object displayName; + private Protections protections; - /** - * 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; + private Boolean requested; - private BacsDebitPayments(Object displayName, Map extraParams) { - this.displayName = displayName; - this.extraParams = extraParams; - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.PayByBankPayments + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.PayByBankPayments( + this.extraParams, this.protections, this.requested); + } - public static Builder builder() { - return new Builder(); - } + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.PayByBankPayments#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; + } - public static class Builder { - private Object displayName; + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.PayByBankPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - private Map extraParams; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountUpdateParams.Configuration.Merchant.Capabilities.PayByBankPayments + .Protections + protections) { + this.protections = protections; + return this; + } - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.BacsDebitPayments build() { - return new AccountUpdateParams.Configuration.Merchant.BacsDebitPayments( - this.displayName, this.extraParams); + /** + * To request a new Capability for an account, pass true. There can be a delay before + * the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } } - /** Display name for Bacs Direct Debit payments. */ - public Builder setDisplayName(String displayName) { - this.displayName = displayName; - return this; - } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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; - /** Display name for Bacs Direct Debit payments. */ - public Builder setDisplayName(EmptyParam displayName) { - this.displayName = displayName; - return this; - } + /** Required. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - /** - * 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 - * AccountUpdateParams.Configuration.Merchant.BacsDebitPayments#extraParams} for the field - * documentation. - */ - public Builder putExtraParam(String key, Object value) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; } - 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 - * AccountUpdateParams.Configuration.Merchant.BacsDebitPayments#extraParams} for the field - * documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + public static Builder builder() { + return new Builder(); } - this.extraParams.putAll(map); - return this; - } - } - } - - @Getter - @EqualsAndHashCode(callSuper = false) - public static class Branding { - /** - * 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; - /** - * ID of a file upload: - * An icon for the merchant. Must be square and at least 128px x 128px. - */ - @SerializedName("icon") - Object icon; + public static class Builder { + private Map extraParams; - /** - * ID of a file upload: - * A logo for the merchant that will be used in Checkout instead of the icon and without the - * merchant's name next to it if provided. Must be at least 128px x 128px. - */ - @SerializedName("logo") - Object logo; + private PspMigration pspMigration; - /** A CSS hex color value representing the primary branding color for the merchant. */ - @SerializedName("primary_color") - Object primaryColor; + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.PayByBankPayments + .Protections + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.PayByBankPayments + .Protections(this.extraParams, this.pspMigration); + } - /** A CSS hex color value representing the secondary branding color for the merchant. */ - @SerializedName("secondary_color") - Object secondaryColor; + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.PayByBankPayments.Protections#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; + } - private Branding( - Map extraParams, - Object icon, - Object logo, - Object primaryColor, - Object secondaryColor) { - this.extraParams = extraParams; - this.icon = icon; - this.logo = logo; - this.primaryColor = primaryColor; - this.secondaryColor = secondaryColor; - } + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.PayByBankPayments.Protections#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - public static Builder builder() { - return new Builder(); - } + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Merchant.Capabilities.PayByBankPayments + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } - public static class Builder { - private Map extraParams; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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; - private Object icon; + /** Required. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; - private Object logo; + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } - private Object primaryColor; + public static Builder builder() { + return new Builder(); + } - private Object secondaryColor; + public static class Builder { + private Map extraParams; - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.Branding build() { - return new AccountUpdateParams.Configuration.Merchant.Branding( - this.extraParams, this.icon, this.logo, this.primaryColor, this.secondaryColor); - } + private Boolean requested; - /** - * 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 AccountUpdateParams.Configuration.Merchant.Branding#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; - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.PayByBankPayments + .Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities + .PayByBankPayments.Protections.PspMigration(this.extraParams, this.requested); + } - /** - * 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 AccountUpdateParams.Configuration.Merchant.Branding#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 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.PayByBankPayments.Protections.PspMigration#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; + } - /** - * ID of a file - * upload: An icon for the merchant. Must be square and at least 128px x 128px. - */ - public Builder setIcon(String icon) { - this.icon = icon; - 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.PayByBankPayments.Protections.PspMigration#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - /** - * ID of a file - * upload: An icon for the merchant. Must be square and at least 128px x 128px. - */ - public Builder setIcon(EmptyParam icon) { - this.icon = icon; - return this; + /** Required. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } } + } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PaycoPayments { /** - * ID of a file - * upload: A logo for the merchant that will be used in Checkout instead of the icon - * and without the merchant's name next to it if provided. Must be at least 128px x 128px. + * 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. */ - public Builder setLogo(String logo) { - this.logo = logo; - return this; - } + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; /** - * ID of a file - * upload: A logo for the merchant that will be used in Checkout instead of the icon - * and without the merchant's name next to it if provided. Must be at least 128px x 128px. + * To request a new Capability for an account, pass true. There can be a delay before the + * requested Capability becomes active. */ - public Builder setLogo(EmptyParam logo) { - this.logo = logo; - return this; - } + @SerializedName("requested") + Boolean requested; - /** A CSS hex color value representing the primary branding color for the merchant. */ - public Builder setPrimaryColor(String primaryColor) { - this.primaryColor = primaryColor; - return this; + private PaycoPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; } - /** A CSS hex color value representing the primary branding color for the merchant. */ - public Builder setPrimaryColor(EmptyParam primaryColor) { - this.primaryColor = primaryColor; - return this; + public static Builder builder() { + return new Builder(); } - /** A CSS hex color value representing the secondary branding color for the merchant. */ - public Builder setSecondaryColor(String secondaryColor) { - this.secondaryColor = secondaryColor; - return this; - } + public static class Builder { + private Map extraParams; - /** A CSS hex color value representing the secondary branding color for the merchant. */ - public Builder setSecondaryColor(EmptyParam secondaryColor) { - this.secondaryColor = secondaryColor; - return this; + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.PaycoPayments build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.PaycoPayments( + this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.PaycoPayments#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.PaycoPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountUpdateParams.Configuration.Merchant.Capabilities.PaycoPayments.Protections + protections) { + this.protections = protections; + return this; + } + + /** + * To request a new Capability for an account, pass true. There can be a delay before + * the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } } - } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class Capabilities { - /** Allow the merchant to process ACH debit payments. */ - @SerializedName("ach_debit_payments") - AchDebitPayments achDebitPayments; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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; - /** Allow the merchant to process ACSS debit payments. */ - @SerializedName("acss_debit_payments") - AcssDebitPayments acssDebitPayments; + /** Required. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - /** Allow the merchant to process Affirm payments. */ - @SerializedName("affirm_payments") - AffirmPayments affirmPayments; + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - /** Allow the merchant to process Afterpay/Clearpay payments. */ - @SerializedName("afterpay_clearpay_payments") - AfterpayClearpayPayments afterpayClearpayPayments; + public static Builder builder() { + return new Builder(); + } - /** Allow the merchant to process Alma payments. */ - @SerializedName("alma_payments") - AlmaPayments almaPayments; + public static class Builder { + private Map extraParams; - /** Allow the merchant to process Amazon Pay payments. */ - @SerializedName("amazon_pay_payments") - AmazonPayPayments amazonPayPayments; + private PspMigration pspMigration; - /** Allow the merchant to process Australian BECS Direct Debit payments. */ - @SerializedName("au_becs_debit_payments") - AuBecsDebitPayments auBecsDebitPayments; + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.PaycoPayments + .Protections + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.PaycoPayments + .Protections(this.extraParams, this.pspMigration); + } - /** Allow the merchant to process BACS Direct Debit payments. */ - @SerializedName("bacs_debit_payments") - BacsDebitPayments bacsDebitPayments; + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.PaycoPayments.Protections#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; + } - /** Allow the merchant to process Bancontact payments. */ - @SerializedName("bancontact_payments") - BancontactPayments bancontactPayments; + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.PaycoPayments.Protections#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - /** Allow the merchant to process BLIK payments. */ - @SerializedName("blik_payments") - BlikPayments blikPayments; + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Merchant.Capabilities.PaycoPayments.Protections + .PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } - /** Allow the merchant to process Boleto payments. */ - @SerializedName("boleto_payments") - BoletoPayments boletoPayments; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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; - /** Allow the merchant to collect card payments. */ - @SerializedName("card_payments") - CardPayments cardPayments; + /** Required. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; - /** Allow the merchant to process Cartes Bancaires payments. */ - @SerializedName("cartes_bancaires_payments") - CartesBancairesPayments cartesBancairesPayments; + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.PaycoPayments + .Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.PaycoPayments + .Protections.PspMigration(this.extraParams, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.PaycoPayments.Protections.PspMigration#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.PaycoPayments.Protections.PspMigration#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - /** Allow the merchant to process Cash App payments. */ - @SerializedName("cashapp_payments") - CashappPayments cashappPayments; + /** Required. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } - /** Allow the merchant to process EPS payments. */ - @SerializedName("eps_payments") - EpsPayments epsPayments; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PaynowPayments { + /** + * 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; - /** - * 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; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; - /** Allow the merchant to process FPX payments. */ - @SerializedName("fpx_payments") - FpxPayments fpxPayments; + /** + * To request a new Capability for an account, pass true. There can be a delay before the + * requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; - /** Allow the merchant to process UK bank transfer payments. */ - @SerializedName("gb_bank_transfer_payments") - GbBankTransferPayments gbBankTransferPayments; + private PaynowPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } - /** Allow the merchant to process GrabPay payments. */ - @SerializedName("grabpay_payments") - GrabpayPayments grabpayPayments; + public static Builder builder() { + return new Builder(); + } - /** Allow the merchant to process iDEAL payments. */ - @SerializedName("ideal_payments") - IdealPayments idealPayments; + public static class Builder { + private Map extraParams; - /** Allow the merchant to process JCB card payments. */ - @SerializedName("jcb_payments") - JcbPayments jcbPayments; + private Protections protections; - /** Allow the merchant to process Japanese bank transfer payments. */ - @SerializedName("jp_bank_transfer_payments") - JpBankTransferPayments jpBankTransferPayments; + private Boolean requested; - /** Allow the merchant to process Kakao Pay payments. */ - @SerializedName("kakao_pay_payments") - KakaoPayPayments kakaoPayPayments; + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.PaynowPayments build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.PaynowPayments( + this.extraParams, this.protections, this.requested); + } - /** Allow the merchant to process Klarna payments. */ - @SerializedName("klarna_payments") - KlarnaPayments klarnaPayments; + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.PaynowPayments#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; + } - /** Allow the merchant to process Konbini convenience store payments. */ - @SerializedName("konbini_payments") - KonbiniPayments konbiniPayments; + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.PaynowPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - /** Allow the merchant to process Korean card payments. */ - @SerializedName("kr_card_payments") - KrCardPayments krCardPayments; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountUpdateParams.Configuration.Merchant.Capabilities.PaynowPayments.Protections + protections) { + this.protections = protections; + return this; + } - /** Allow the merchant to process Link payments. */ - @SerializedName("link_payments") - LinkPayments linkPayments; + /** + * To request a new Capability for an account, pass true. There can be a delay before + * the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } - /** Allow the merchant to process MobilePay payments. */ - @SerializedName("mobilepay_payments") - MobilepayPayments mobilepayPayments; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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; - /** Allow the merchant to process Multibanco payments. */ - @SerializedName("multibanco_payments") - MultibancoPayments multibancoPayments; + /** Required. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - /** Allow the merchant to process Mexican bank transfer payments. */ - @SerializedName("mx_bank_transfer_payments") - MxBankTransferPayments mxBankTransferPayments; + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - /** Allow the merchant to process Naver Pay payments. */ - @SerializedName("naver_pay_payments") - NaverPayPayments naverPayPayments; + public static Builder builder() { + return new Builder(); + } - /** Allow the merchant to process OXXO payments. */ - @SerializedName("oxxo_payments") - OxxoPayments oxxoPayments; + public static class Builder { + private Map extraParams; - /** Allow the merchant to process Przelewy24 (P24) payments. */ - @SerializedName("p24_payments") - P24Payments p24Payments; + private PspMigration pspMigration; - /** Allow the merchant to process Pay by Bank payments. */ - @SerializedName("pay_by_bank_payments") - PayByBankPayments payByBankPayments; + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.PaynowPayments + .Protections + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.PaynowPayments + .Protections(this.extraParams, this.pspMigration); + } - /** Allow the merchant to process PAYCO payments. */ - @SerializedName("payco_payments") - PaycoPayments paycoPayments; + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.PaynowPayments.Protections#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; + } - /** Allow the merchant to process PayNow payments. */ - @SerializedName("paynow_payments") - PaynowPayments paynowPayments; + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.PaynowPayments.Protections#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - /** Allow the merchant to process PromptPay payments. */ - @SerializedName("promptpay_payments") - PromptpayPayments promptpayPayments; + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Merchant.Capabilities.PaynowPayments.Protections + .PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } - /** Allow the merchant to process Revolut Pay payments. */ - @SerializedName("revolut_pay_payments") - RevolutPayPayments revolutPayPayments; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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; - /** Allow the merchant to process Samsung Pay payments. */ - @SerializedName("samsung_pay_payments") - SamsungPayPayments samsungPayPayments; + /** Required. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; - /** Allow the merchant to process SEPA bank transfer payments. */ - @SerializedName("sepa_bank_transfer_payments") - SepaBankTransferPayments sepaBankTransferPayments; + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } - /** Allow the merchant to process SEPA Direct Debit payments. */ - @SerializedName("sepa_debit_payments") - SepaDebitPayments sepaDebitPayments; + public static Builder builder() { + return new Builder(); + } - /** Allow the merchant to process Swish payments. */ - @SerializedName("swish_payments") - SwishPayments swishPayments; + public static class Builder { + private Map extraParams; - /** Allow the merchant to process TWINT payments. */ - @SerializedName("twint_payments") - TwintPayments twintPayments; + private Boolean requested; - /** Allow the merchant to process US bank transfer payments. */ - @SerializedName("us_bank_transfer_payments") - UsBankTransferPayments usBankTransferPayments; + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.PaynowPayments + .Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.PaynowPayments + .Protections.PspMigration(this.extraParams, this.requested); + } - /** Allow the merchant to process Zip payments. */ - @SerializedName("zip_payments") - ZipPayments zipPayments; + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.PaynowPayments.Protections.PspMigration#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; + } - private Capabilities( - AchDebitPayments achDebitPayments, - AcssDebitPayments acssDebitPayments, - AffirmPayments affirmPayments, - AfterpayClearpayPayments afterpayClearpayPayments, - AlmaPayments almaPayments, - AmazonPayPayments amazonPayPayments, - AuBecsDebitPayments auBecsDebitPayments, - BacsDebitPayments bacsDebitPayments, - BancontactPayments bancontactPayments, - BlikPayments blikPayments, - BoletoPayments boletoPayments, - CardPayments cardPayments, - CartesBancairesPayments cartesBancairesPayments, - CashappPayments cashappPayments, - EpsPayments epsPayments, - Map extraParams, - FpxPayments fpxPayments, - GbBankTransferPayments gbBankTransferPayments, - GrabpayPayments grabpayPayments, - IdealPayments idealPayments, - JcbPayments jcbPayments, - JpBankTransferPayments jpBankTransferPayments, - KakaoPayPayments kakaoPayPayments, - KlarnaPayments klarnaPayments, - KonbiniPayments konbiniPayments, - KrCardPayments krCardPayments, - LinkPayments linkPayments, - MobilepayPayments mobilepayPayments, - MultibancoPayments multibancoPayments, - MxBankTransferPayments mxBankTransferPayments, - NaverPayPayments naverPayPayments, - OxxoPayments oxxoPayments, - P24Payments p24Payments, - PayByBankPayments payByBankPayments, - PaycoPayments paycoPayments, - PaynowPayments paynowPayments, - PromptpayPayments promptpayPayments, - RevolutPayPayments revolutPayPayments, - SamsungPayPayments samsungPayPayments, - SepaBankTransferPayments sepaBankTransferPayments, - SepaDebitPayments sepaDebitPayments, - SwishPayments swishPayments, - TwintPayments twintPayments, - UsBankTransferPayments usBankTransferPayments, - ZipPayments zipPayments) { - this.achDebitPayments = achDebitPayments; - this.acssDebitPayments = acssDebitPayments; - this.affirmPayments = affirmPayments; - this.afterpayClearpayPayments = afterpayClearpayPayments; - this.almaPayments = almaPayments; - this.amazonPayPayments = amazonPayPayments; - this.auBecsDebitPayments = auBecsDebitPayments; - this.bacsDebitPayments = bacsDebitPayments; - this.bancontactPayments = bancontactPayments; - this.blikPayments = blikPayments; - this.boletoPayments = boletoPayments; - this.cardPayments = cardPayments; - this.cartesBancairesPayments = cartesBancairesPayments; - this.cashappPayments = cashappPayments; - this.epsPayments = epsPayments; - this.extraParams = extraParams; - this.fpxPayments = fpxPayments; - this.gbBankTransferPayments = gbBankTransferPayments; - this.grabpayPayments = grabpayPayments; - this.idealPayments = idealPayments; - this.jcbPayments = jcbPayments; - this.jpBankTransferPayments = jpBankTransferPayments; - this.kakaoPayPayments = kakaoPayPayments; - this.klarnaPayments = klarnaPayments; - this.konbiniPayments = konbiniPayments; - this.krCardPayments = krCardPayments; - this.linkPayments = linkPayments; - this.mobilepayPayments = mobilepayPayments; - this.multibancoPayments = multibancoPayments; - this.mxBankTransferPayments = mxBankTransferPayments; - this.naverPayPayments = naverPayPayments; - this.oxxoPayments = oxxoPayments; - this.p24Payments = p24Payments; - this.payByBankPayments = payByBankPayments; - this.paycoPayments = paycoPayments; - this.paynowPayments = paynowPayments; - this.promptpayPayments = promptpayPayments; - this.revolutPayPayments = revolutPayPayments; - this.samsungPayPayments = samsungPayPayments; - this.sepaBankTransferPayments = sepaBankTransferPayments; - this.sepaDebitPayments = sepaDebitPayments; - this.swishPayments = swishPayments; - this.twintPayments = twintPayments; - this.usBankTransferPayments = usBankTransferPayments; - this.zipPayments = zipPayments; - } + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.PaynowPayments.Protections.PspMigration#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - public static Builder builder() { - return new Builder(); + /** Required. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } } - public static class Builder { - private AchDebitPayments achDebitPayments; - - private AcssDebitPayments acssDebitPayments; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PromptpayPayments { + /** + * 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; - private AffirmPayments affirmPayments; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; - private AfterpayClearpayPayments afterpayClearpayPayments; + /** + * To request a new Capability for an account, pass true. There can be a delay before the + * requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; - private AlmaPayments almaPayments; + private PromptpayPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } - private AmazonPayPayments amazonPayPayments; + public static Builder builder() { + return new Builder(); + } - private AuBecsDebitPayments auBecsDebitPayments; + public static class Builder { + private Map extraParams; - private BacsDebitPayments bacsDebitPayments; + private Protections protections; - private BancontactPayments bancontactPayments; + private Boolean requested; - private BlikPayments blikPayments; + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.PromptpayPayments + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.PromptpayPayments( + this.extraParams, this.protections, this.requested); + } - private BoletoPayments boletoPayments; + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.PromptpayPayments#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; + } - private CardPayments cardPayments; + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.PromptpayPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - private CartesBancairesPayments cartesBancairesPayments; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountUpdateParams.Configuration.Merchant.Capabilities.PromptpayPayments + .Protections + protections) { + this.protections = protections; + return this; + } - private CashappPayments cashappPayments; + /** + * To request a new Capability for an account, pass true. There can be a delay before + * the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } - private EpsPayments epsPayments; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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; - private Map extraParams; + /** Required. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - private FpxPayments fpxPayments; + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - private GbBankTransferPayments gbBankTransferPayments; + public static Builder builder() { + return new Builder(); + } - private GrabpayPayments grabpayPayments; + public static class Builder { + private Map extraParams; - private IdealPayments idealPayments; + private PspMigration pspMigration; - private JcbPayments jcbPayments; + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.PromptpayPayments + .Protections + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.PromptpayPayments + .Protections(this.extraParams, this.pspMigration); + } - private JpBankTransferPayments jpBankTransferPayments; + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.PromptpayPayments.Protections#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; + } - private KakaoPayPayments kakaoPayPayments; + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.PromptpayPayments.Protections#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - private KlarnaPayments klarnaPayments; + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Merchant.Capabilities.PromptpayPayments + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } - private KonbiniPayments konbiniPayments; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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; - private KrCardPayments krCardPayments; + /** Required. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; - private LinkPayments linkPayments; + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } - private MobilepayPayments mobilepayPayments; + public static Builder builder() { + return new Builder(); + } - private MultibancoPayments multibancoPayments; + public static class Builder { + private Map extraParams; - private MxBankTransferPayments mxBankTransferPayments; + private Boolean requested; - private NaverPayPayments naverPayPayments; + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.PromptpayPayments + .Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities + .PromptpayPayments.Protections.PspMigration(this.extraParams, this.requested); + } - private OxxoPayments oxxoPayments; + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.PromptpayPayments.Protections.PspMigration#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; + } - private P24Payments p24Payments; + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.PromptpayPayments.Protections.PspMigration#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - private PayByBankPayments payByBankPayments; + /** Required. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } - private PaycoPayments paycoPayments; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class RevolutPayPayments { + /** + * 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; - private PaynowPayments paynowPayments; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; - private PromptpayPayments promptpayPayments; + /** + * To request a new Capability for an account, pass true. There can be a delay before the + * requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; - private RevolutPayPayments revolutPayPayments; + private RevolutPayPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } - private SamsungPayPayments samsungPayPayments; + public static Builder builder() { + return new Builder(); + } - private SepaBankTransferPayments sepaBankTransferPayments; + public static class Builder { + private Map extraParams; - private SepaDebitPayments sepaDebitPayments; + private Protections protections; - private SwishPayments swishPayments; + private Boolean requested; - private TwintPayments twintPayments; + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.RevolutPayPayments + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.RevolutPayPayments( + this.extraParams, this.protections, this.requested); + } - private UsBankTransferPayments usBankTransferPayments; + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.RevolutPayPayments#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; + } - private ZipPayments zipPayments; + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.RevolutPayPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.Capabilities build() { - return new AccountUpdateParams.Configuration.Merchant.Capabilities( - this.achDebitPayments, - this.acssDebitPayments, - this.affirmPayments, - this.afterpayClearpayPayments, - this.almaPayments, - this.amazonPayPayments, - this.auBecsDebitPayments, - this.bacsDebitPayments, - this.bancontactPayments, - this.blikPayments, - this.boletoPayments, - this.cardPayments, - this.cartesBancairesPayments, - this.cashappPayments, - this.epsPayments, - this.extraParams, - this.fpxPayments, - this.gbBankTransferPayments, - this.grabpayPayments, - this.idealPayments, - this.jcbPayments, - this.jpBankTransferPayments, - this.kakaoPayPayments, - this.klarnaPayments, - this.konbiniPayments, - this.krCardPayments, - this.linkPayments, - this.mobilepayPayments, - this.multibancoPayments, - this.mxBankTransferPayments, - this.naverPayPayments, - this.oxxoPayments, - this.p24Payments, - this.payByBankPayments, - this.paycoPayments, - this.paynowPayments, - this.promptpayPayments, - this.revolutPayPayments, - this.samsungPayPayments, - this.sepaBankTransferPayments, - this.sepaDebitPayments, - this.swishPayments, - this.twintPayments, - this.usBankTransferPayments, - this.zipPayments); - } + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountUpdateParams.Configuration.Merchant.Capabilities.RevolutPayPayments + .Protections + protections) { + this.protections = protections; + return this; + } - /** Allow the merchant to process ACH debit payments. */ - public Builder setAchDebitPayments( - AccountUpdateParams.Configuration.Merchant.Capabilities.AchDebitPayments - achDebitPayments) { - this.achDebitPayments = achDebitPayments; - return this; + /** + * To request a new Capability for an account, pass true. There can be a delay before + * the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } } - /** Allow the merchant to process ACSS debit payments. */ - public Builder setAcssDebitPayments( - AccountUpdateParams.Configuration.Merchant.Capabilities.AcssDebitPayments - acssDebitPayments) { - this.acssDebitPayments = acssDebitPayments; - return this; - } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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; - /** Allow the merchant to process Affirm payments. */ - public Builder setAffirmPayments( - AccountUpdateParams.Configuration.Merchant.Capabilities.AffirmPayments - affirmPayments) { - this.affirmPayments = affirmPayments; - return this; - } + /** Required. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - /** Allow the merchant to process Afterpay/Clearpay payments. */ - public Builder setAfterpayClearpayPayments( - AccountUpdateParams.Configuration.Merchant.Capabilities.AfterpayClearpayPayments - afterpayClearpayPayments) { - this.afterpayClearpayPayments = afterpayClearpayPayments; - return this; - } + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - /** Allow the merchant to process Alma payments. */ - public Builder setAlmaPayments( - AccountUpdateParams.Configuration.Merchant.Capabilities.AlmaPayments almaPayments) { - this.almaPayments = almaPayments; - return this; - } + public static Builder builder() { + return new Builder(); + } - /** Allow the merchant to process Amazon Pay payments. */ - public Builder setAmazonPayPayments( - AccountUpdateParams.Configuration.Merchant.Capabilities.AmazonPayPayments - amazonPayPayments) { - this.amazonPayPayments = amazonPayPayments; - return this; - } + public static class Builder { + private Map extraParams; - /** Allow the merchant to process Australian BECS Direct Debit payments. */ - public Builder setAuBecsDebitPayments( - AccountUpdateParams.Configuration.Merchant.Capabilities.AuBecsDebitPayments - auBecsDebitPayments) { - this.auBecsDebitPayments = auBecsDebitPayments; - return this; - } + private PspMigration pspMigration; - /** Allow the merchant to process BACS Direct Debit payments. */ - public Builder setBacsDebitPayments( - AccountUpdateParams.Configuration.Merchant.Capabilities.BacsDebitPayments - bacsDebitPayments) { - this.bacsDebitPayments = bacsDebitPayments; - return this; - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.RevolutPayPayments + .Protections + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities + .RevolutPayPayments.Protections(this.extraParams, this.pspMigration); + } - /** Allow the merchant to process Bancontact payments. */ - public Builder setBancontactPayments( - AccountUpdateParams.Configuration.Merchant.Capabilities.BancontactPayments - bancontactPayments) { - this.bancontactPayments = bancontactPayments; - 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.RevolutPayPayments.Protections#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; + } - /** Allow the merchant to process BLIK payments. */ - public Builder setBlikPayments( - AccountUpdateParams.Configuration.Merchant.Capabilities.BlikPayments blikPayments) { - this.blikPayments = blikPayments; - 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.RevolutPayPayments.Protections#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - /** Allow the merchant to process Boleto payments. */ - public Builder setBoletoPayments( - AccountUpdateParams.Configuration.Merchant.Capabilities.BoletoPayments - boletoPayments) { - this.boletoPayments = boletoPayments; - return this; - } + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Merchant.Capabilities.RevolutPayPayments + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } - /** Allow the merchant to collect card payments. */ - public Builder setCardPayments( - AccountUpdateParams.Configuration.Merchant.Capabilities.CardPayments cardPayments) { - this.cardPayments = cardPayments; - return this; - } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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; - /** Allow the merchant to process Cartes Bancaires payments. */ - public Builder setCartesBancairesPayments( - AccountUpdateParams.Configuration.Merchant.Capabilities.CartesBancairesPayments - cartesBancairesPayments) { - this.cartesBancairesPayments = cartesBancairesPayments; - return this; - } + /** Required. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; - /** Allow the merchant to process Cash App payments. */ - public Builder setCashappPayments( - AccountUpdateParams.Configuration.Merchant.Capabilities.CashappPayments - cashappPayments) { - this.cashappPayments = cashappPayments; - return this; - } + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } - /** Allow the merchant to process EPS payments. */ - public Builder setEpsPayments( - AccountUpdateParams.Configuration.Merchant.Capabilities.EpsPayments epsPayments) { - this.epsPayments = epsPayments; - return this; - } + public static Builder builder() { + return new Builder(); + } - /** - * 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 AccountUpdateParams.Configuration.Merchant.Capabilities#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; - } + public static class Builder { + private Map extraParams; - /** - * 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 AccountUpdateParams.Configuration.Merchant.Capabilities#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); - } - this.extraParams.putAll(map); - return this; - } + private Boolean requested; - /** Allow the merchant to process FPX payments. */ - public Builder setFpxPayments( - AccountUpdateParams.Configuration.Merchant.Capabilities.FpxPayments fpxPayments) { - this.fpxPayments = fpxPayments; - return this; - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.RevolutPayPayments + .Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities + .RevolutPayPayments.Protections.PspMigration( + this.extraParams, this.requested); + } - /** Allow the merchant to process UK bank transfer payments. */ - public Builder setGbBankTransferPayments( - AccountUpdateParams.Configuration.Merchant.Capabilities.GbBankTransferPayments - gbBankTransferPayments) { - this.gbBankTransferPayments = gbBankTransferPayments; - 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.RevolutPayPayments.Protections.PspMigration#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; + } - /** Allow the merchant to process GrabPay payments. */ - public Builder setGrabpayPayments( - AccountUpdateParams.Configuration.Merchant.Capabilities.GrabpayPayments - grabpayPayments) { - this.grabpayPayments = grabpayPayments; - 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.RevolutPayPayments.Protections.PspMigration#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - /** Allow the merchant to process iDEAL payments. */ - public Builder setIdealPayments( - AccountUpdateParams.Configuration.Merchant.Capabilities.IdealPayments idealPayments) { - this.idealPayments = idealPayments; - return this; + /** Required. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } } + } - /** Allow the merchant to process JCB card payments. */ - public Builder setJcbPayments( - AccountUpdateParams.Configuration.Merchant.Capabilities.JcbPayments jcbPayments) { - this.jcbPayments = jcbPayments; - return this; - } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class SamsungPayPayments { + /** + * 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; - /** Allow the merchant to process Japanese bank transfer payments. */ - public Builder setJpBankTransferPayments( - AccountUpdateParams.Configuration.Merchant.Capabilities.JpBankTransferPayments - jpBankTransferPayments) { - this.jpBankTransferPayments = jpBankTransferPayments; - return this; - } + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; - /** Allow the merchant to process Kakao Pay payments. */ - public Builder setKakaoPayPayments( - AccountUpdateParams.Configuration.Merchant.Capabilities.KakaoPayPayments - kakaoPayPayments) { - this.kakaoPayPayments = kakaoPayPayments; - return this; - } + /** + * To request a new Capability for an account, pass true. There can be a delay before the + * requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; - /** Allow the merchant to process Klarna payments. */ - public Builder setKlarnaPayments( - AccountUpdateParams.Configuration.Merchant.Capabilities.KlarnaPayments - klarnaPayments) { - this.klarnaPayments = klarnaPayments; - return this; + private SamsungPayPayments( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; } - /** Allow the merchant to process Konbini convenience store payments. */ - public Builder setKonbiniPayments( - AccountUpdateParams.Configuration.Merchant.Capabilities.KonbiniPayments - konbiniPayments) { - this.konbiniPayments = konbiniPayments; - return this; + public static Builder builder() { + return new Builder(); } - /** Allow the merchant to process Korean card payments. */ - public Builder setKrCardPayments( - AccountUpdateParams.Configuration.Merchant.Capabilities.KrCardPayments - krCardPayments) { - this.krCardPayments = krCardPayments; - return this; - } + public static class Builder { + private Map extraParams; - /** Allow the merchant to process Link payments. */ - public Builder setLinkPayments( - AccountUpdateParams.Configuration.Merchant.Capabilities.LinkPayments linkPayments) { - this.linkPayments = linkPayments; - return this; - } + private Protections protections; - /** Allow the merchant to process MobilePay payments. */ - public Builder setMobilepayPayments( - AccountUpdateParams.Configuration.Merchant.Capabilities.MobilepayPayments - mobilepayPayments) { - this.mobilepayPayments = mobilepayPayments; - return this; - } + private Boolean requested; - /** Allow the merchant to process Multibanco payments. */ - public Builder setMultibancoPayments( - AccountUpdateParams.Configuration.Merchant.Capabilities.MultibancoPayments - multibancoPayments) { - this.multibancoPayments = multibancoPayments; - return this; - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.SamsungPayPayments + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.SamsungPayPayments( + this.extraParams, this.protections, this.requested); + } - /** Allow the merchant to process Mexican bank transfer payments. */ - public Builder setMxBankTransferPayments( - AccountUpdateParams.Configuration.Merchant.Capabilities.MxBankTransferPayments - mxBankTransferPayments) { - this.mxBankTransferPayments = mxBankTransferPayments; - 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.SamsungPayPayments#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; + } - /** Allow the merchant to process Naver Pay payments. */ - public Builder setNaverPayPayments( - AccountUpdateParams.Configuration.Merchant.Capabilities.NaverPayPayments - naverPayPayments) { - this.naverPayPayments = naverPayPayments; - 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.SamsungPayPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - /** Allow the merchant to process OXXO payments. */ - public Builder setOxxoPayments( - AccountUpdateParams.Configuration.Merchant.Capabilities.OxxoPayments oxxoPayments) { - this.oxxoPayments = oxxoPayments; - return this; - } + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountUpdateParams.Configuration.Merchant.Capabilities.SamsungPayPayments + .Protections + protections) { + this.protections = protections; + return this; + } - /** Allow the merchant to process Przelewy24 (P24) payments. */ - public Builder setP24Payments( - AccountUpdateParams.Configuration.Merchant.Capabilities.P24Payments p24Payments) { - this.p24Payments = p24Payments; - return this; + /** + * To request a new Capability for an account, pass true. There can be a delay before + * the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } } - /** Allow the merchant to process Pay by Bank payments. */ - public Builder setPayByBankPayments( - AccountUpdateParams.Configuration.Merchant.Capabilities.PayByBankPayments - payByBankPayments) { - this.payByBankPayments = payByBankPayments; - return this; - } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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; - /** Allow the merchant to process PAYCO payments. */ - public Builder setPaycoPayments( - AccountUpdateParams.Configuration.Merchant.Capabilities.PaycoPayments paycoPayments) { - this.paycoPayments = paycoPayments; - return this; - } + /** Required. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - /** Allow the merchant to process PayNow payments. */ - public Builder setPaynowPayments( - AccountUpdateParams.Configuration.Merchant.Capabilities.PaynowPayments - paynowPayments) { - this.paynowPayments = paynowPayments; - return this; - } + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - /** Allow the merchant to process PromptPay payments. */ - public Builder setPromptpayPayments( - AccountUpdateParams.Configuration.Merchant.Capabilities.PromptpayPayments - promptpayPayments) { - this.promptpayPayments = promptpayPayments; - return this; - } + public static Builder builder() { + return new Builder(); + } - /** Allow the merchant to process Revolut Pay payments. */ - public Builder setRevolutPayPayments( - AccountUpdateParams.Configuration.Merchant.Capabilities.RevolutPayPayments - revolutPayPayments) { - this.revolutPayPayments = revolutPayPayments; - return this; - } + public static class Builder { + private Map extraParams; - /** Allow the merchant to process Samsung Pay payments. */ - public Builder setSamsungPayPayments( - AccountUpdateParams.Configuration.Merchant.Capabilities.SamsungPayPayments - samsungPayPayments) { - this.samsungPayPayments = samsungPayPayments; - return this; - } + private PspMigration pspMigration; - /** Allow the merchant to process SEPA bank transfer payments. */ - public Builder setSepaBankTransferPayments( - AccountUpdateParams.Configuration.Merchant.Capabilities.SepaBankTransferPayments - sepaBankTransferPayments) { - this.sepaBankTransferPayments = sepaBankTransferPayments; - return this; - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.SamsungPayPayments + .Protections + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities + .SamsungPayPayments.Protections(this.extraParams, this.pspMigration); + } - /** Allow the merchant to process SEPA Direct Debit payments. */ - public Builder setSepaDebitPayments( - AccountUpdateParams.Configuration.Merchant.Capabilities.SepaDebitPayments - sepaDebitPayments) { - this.sepaDebitPayments = sepaDebitPayments; - 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.SamsungPayPayments.Protections#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; + } - /** Allow the merchant to process Swish payments. */ - public Builder setSwishPayments( - AccountUpdateParams.Configuration.Merchant.Capabilities.SwishPayments swishPayments) { - this.swishPayments = swishPayments; - 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.SamsungPayPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Merchant.Capabilities.SamsungPayPayments + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.SamsungPayPayments + .Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities + .SamsungPayPayments.Protections.PspMigration( + this.extraParams, this.requested); + } - /** Allow the merchant to process TWINT payments. */ - public Builder setTwintPayments( - AccountUpdateParams.Configuration.Merchant.Capabilities.TwintPayments twintPayments) { - this.twintPayments = twintPayments; - 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.SamsungPayPayments.Protections.PspMigration#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; + } - /** Allow the merchant to process US bank transfer payments. */ - public Builder setUsBankTransferPayments( - AccountUpdateParams.Configuration.Merchant.Capabilities.UsBankTransferPayments - usBankTransferPayments) { - this.usBankTransferPayments = usBankTransferPayments; - 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.SamsungPayPayments.Protections.PspMigration#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - /** Allow the merchant to process Zip payments. */ - public Builder setZipPayments( - AccountUpdateParams.Configuration.Merchant.Capabilities.ZipPayments zipPayments) { - this.zipPayments = zipPayments; - return this; + /** Required. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } } } @Getter @EqualsAndHashCode(callSuper = false) - public static class AchDebitPayments { + public static class SepaBankTransferPayments { /** * 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. @@ -5464,6 +17666,10 @@ public static class AchDebitPayments { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + /** * To request a new Capability for an account, pass true. There can be a delay before the * requested Capability becomes active. @@ -5471,8 +17677,10 @@ public static class AchDebitPayments { @SerializedName("requested") Boolean requested; - private AchDebitPayments(Map extraParams, Boolean requested) { + private SepaBankTransferPayments( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -5483,20 +17691,22 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.Capabilities.AchDebitPayments + public AccountUpdateParams.Configuration.Merchant.Capabilities.SepaBankTransferPayments build() { - return new AccountUpdateParams.Configuration.Merchant.Capabilities.AchDebitPayments( - this.extraParams, this.requested); + return new AccountUpdateParams.Configuration.Merchant.Capabilities + .SepaBankTransferPayments(this.extraParams, this.protections, this.requested); } /** * 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.AchDebitPayments#extraParams} + * AccountUpdateParams.Configuration.Merchant.Capabilities.SepaBankTransferPayments#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -5511,7 +17721,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.AchDebitPayments#extraParams} + * AccountUpdateParams.Configuration.Merchant.Capabilities.SepaBankTransferPayments#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -5522,6 +17732,15 @@ public Builder putAllExtraParam(Map map) { return this; } + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountUpdateParams.Configuration.Merchant.Capabilities.SepaBankTransferPayments + .Protections + protections) { + this.protections = protections; + return this; + } + /** * To request a new Capability for an account, pass true. There can be a delay before * the requested Capability becomes active. @@ -5531,174 +17750,169 @@ public Builder setRequested(Boolean requested) { return this; } } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class AcssDebitPayments { - /** - * 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; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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; - /** - * To request a new Capability for an account, pass true. There can be a delay before the - * requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + /** Required. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - private AcssDebitPayments(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - public static Builder builder() { - return new Builder(); - } + public static Builder builder() { + return new Builder(); + } - public static class Builder { - private Map extraParams; + public static class Builder { + private Map extraParams; - private Boolean requested; + private PspMigration pspMigration; - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.Capabilities.AcssDebitPayments - build() { - return new AccountUpdateParams.Configuration.Merchant.Capabilities.AcssDebitPayments( - this.extraParams, this.requested); - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities + .SepaBankTransferPayments.Protections + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities + .SepaBankTransferPayments.Protections(this.extraParams, this.pspMigration); + } - /** - * 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.AcssDebitPayments#extraParams} - * for the field documentation. - */ - public Builder putExtraParam(String key, Object value) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.SepaBankTransferPayments.Protections#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; } - 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.AcssDebitPayments#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.SepaBankTransferPayments.Protections#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; } - this.extraParams.putAll(map); - return this; - } - /** - * To request a new Capability for an account, pass true. There can be a delay before - * the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Merchant.Capabilities.SepaBankTransferPayments + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } } - } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class AffirmPayments { - /** - * 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; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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; - /** - * To request a new Capability for an account, pass true. There can be a delay before the - * requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + /** Required. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; - private AffirmPayments(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } - public static Builder builder() { - return new Builder(); - } + public static Builder builder() { + return new Builder(); + } - public static class Builder { - private Map extraParams; + public static class Builder { + private Map extraParams; - private Boolean requested; + private Boolean requested; - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.Capabilities.AffirmPayments build() { - return new AccountUpdateParams.Configuration.Merchant.Capabilities.AffirmPayments( - this.extraParams, this.requested); - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities + .SepaBankTransferPayments.Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities + .SepaBankTransferPayments.Protections.PspMigration( + this.extraParams, this.requested); + } - /** - * 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.AffirmPayments#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 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.SepaBankTransferPayments.Protections.PspMigration#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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.AffirmPayments#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 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.SepaBankTransferPayments.Protections.PspMigration#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - /** - * To request a new Capability for an account, pass true. There can be a delay before - * the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; + /** Required. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } } } } @Getter @EqualsAndHashCode(callSuper = false) - public static class AfterpayClearpayPayments { + public static class SepaDebitPayments { /** * 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. @@ -5709,6 +17923,10 @@ public static class AfterpayClearpayPayments { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + /** * To request a new Capability for an account, pass true. There can be a delay before the * requested Capability becomes active. @@ -5716,8 +17934,10 @@ public static class AfterpayClearpayPayments { @SerializedName("requested") Boolean requested; - private AfterpayClearpayPayments(Map extraParams, Boolean requested) { + private SepaDebitPayments( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -5728,20 +17948,22 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.Capabilities.AfterpayClearpayPayments + public AccountUpdateParams.Configuration.Merchant.Capabilities.SepaDebitPayments build() { - return new AccountUpdateParams.Configuration.Merchant.Capabilities - .AfterpayClearpayPayments(this.extraParams, this.requested); + return new AccountUpdateParams.Configuration.Merchant.Capabilities.SepaDebitPayments( + this.extraParams, this.protections, this.requested); } /** * 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.AfterpayClearpayPayments#extraParams} + * AccountUpdateParams.Configuration.Merchant.Capabilities.SepaDebitPayments#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -5756,7 +17978,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.AfterpayClearpayPayments#extraParams} + * AccountUpdateParams.Configuration.Merchant.Capabilities.SepaDebitPayments#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -5767,6 +17989,15 @@ public Builder putAllExtraParam(Map map) { return this; } + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountUpdateParams.Configuration.Merchant.Capabilities.SepaDebitPayments + .Protections + protections) { + this.protections = protections; + return this; + } + /** * To request a new Capability for an account, pass true. There can be a delay before * the requested Capability becomes active. @@ -5776,174 +18007,168 @@ public Builder setRequested(Boolean requested) { return this; } } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class AlmaPayments { - /** - * 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; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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; - /** - * To request a new Capability for an account, pass true. There can be a delay before the - * requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + /** Required. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - private AlmaPayments(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - public static Builder builder() { - return new Builder(); - } + public static Builder builder() { + return new Builder(); + } - public static class Builder { - private Map extraParams; + public static class Builder { + private Map extraParams; - private Boolean requested; + private PspMigration pspMigration; - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.Capabilities.AlmaPayments build() { - return new AccountUpdateParams.Configuration.Merchant.Capabilities.AlmaPayments( - this.extraParams, this.requested); - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.SepaDebitPayments + .Protections + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.SepaDebitPayments + .Protections(this.extraParams, this.pspMigration); + } - /** - * 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.AlmaPayments#extraParams} for - * the field documentation. - */ - public Builder putExtraParam(String key, Object value) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.SepaDebitPayments.Protections#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; } - 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.AlmaPayments#extraParams} for - * the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.SepaDebitPayments.Protections#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; } - this.extraParams.putAll(map); - return this; - } - /** - * To request a new Capability for an account, pass true. There can be a delay before - * the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Merchant.Capabilities.SepaDebitPayments + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } } - } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class AmazonPayPayments { - /** - * 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; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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; - /** - * To request a new Capability for an account, pass true. There can be a delay before the - * requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + /** Required. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; - private AmazonPayPayments(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } - public static Builder builder() { - return new Builder(); - } + public static Builder builder() { + return new Builder(); + } - public static class Builder { - private Map extraParams; + public static class Builder { + private Map extraParams; - private Boolean requested; + private Boolean requested; - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.Capabilities.AmazonPayPayments - build() { - return new AccountUpdateParams.Configuration.Merchant.Capabilities.AmazonPayPayments( - this.extraParams, this.requested); - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.SepaDebitPayments + .Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities + .SepaDebitPayments.Protections.PspMigration(this.extraParams, this.requested); + } - /** - * 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.AmazonPayPayments#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 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.SepaDebitPayments.Protections.PspMigration#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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.AmazonPayPayments#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 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.SepaDebitPayments.Protections.PspMigration#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - /** - * To request a new Capability for an account, pass true. There can be a delay before - * the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; + /** Required. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } } } } @Getter @EqualsAndHashCode(callSuper = false) - public static class AuBecsDebitPayments { + public static class SwishPayments { /** * 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. @@ -5954,6 +18179,10 @@ public static class AuBecsDebitPayments { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + /** * To request a new Capability for an account, pass true. There can be a delay before the * requested Capability becomes active. @@ -5961,8 +18190,10 @@ public static class AuBecsDebitPayments { @SerializedName("requested") Boolean requested; - private AuBecsDebitPayments(Map extraParams, Boolean requested) { + private SwishPayments( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -5973,20 +18204,21 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.Capabilities.AuBecsDebitPayments - build() { - return new AccountUpdateParams.Configuration.Merchant.Capabilities - .AuBecsDebitPayments(this.extraParams, this.requested); + public AccountUpdateParams.Configuration.Merchant.Capabilities.SwishPayments build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.SwishPayments( + this.extraParams, this.protections, this.requested); } /** * 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.AuBecsDebitPayments#extraParams} + * AccountUpdateParams.Configuration.Merchant.Capabilities.SwishPayments#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -6001,7 +18233,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.AuBecsDebitPayments#extraParams} + * AccountUpdateParams.Configuration.Merchant.Capabilities.SwishPayments#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -6012,6 +18244,14 @@ public Builder putAllExtraParam(Map map) { return this; } + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountUpdateParams.Configuration.Merchant.Capabilities.SwishPayments.Protections + protections) { + this.protections = protections; + return this; + } + /** * To request a new Capability for an account, pass true. There can be a delay before * the requested Capability becomes active. @@ -6021,175 +18261,168 @@ public Builder setRequested(Boolean requested) { return this; } } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class BacsDebitPayments { - /** - * 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; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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; - /** - * To request a new Capability for an account, pass true. There can be a delay before the - * requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + /** Required. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - private BacsDebitPayments(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - public static Builder builder() { - return new Builder(); - } + public static Builder builder() { + return new Builder(); + } - public static class Builder { - private Map extraParams; + public static class Builder { + private Map extraParams; - private Boolean requested; + private PspMigration pspMigration; - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.Capabilities.BacsDebitPayments - build() { - return new AccountUpdateParams.Configuration.Merchant.Capabilities.BacsDebitPayments( - this.extraParams, this.requested); - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.SwishPayments + .Protections + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.SwishPayments + .Protections(this.extraParams, this.pspMigration); + } - /** - * 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.BacsDebitPayments#extraParams} - * for the field documentation. - */ - public Builder putExtraParam(String key, Object value) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.SwishPayments.Protections#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; } - 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.BacsDebitPayments#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.SwishPayments.Protections#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; } - this.extraParams.putAll(map); - return this; - } - /** - * To request a new Capability for an account, pass true. There can be a delay before - * the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Merchant.Capabilities.SwishPayments.Protections + .PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } } - } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class BancontactPayments { - /** - * 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; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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; - /** - * To request a new Capability for an account, pass true. There can be a delay before the - * requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + /** Required. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; - private BancontactPayments(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } - public static Builder builder() { - return new Builder(); - } + public static Builder builder() { + return new Builder(); + } - public static class Builder { - private Map extraParams; + public static class Builder { + private Map extraParams; - private Boolean requested; + private Boolean requested; - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.Capabilities.BancontactPayments - build() { - return new AccountUpdateParams.Configuration.Merchant.Capabilities.BancontactPayments( - this.extraParams, this.requested); - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.SwishPayments + .Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.SwishPayments + .Protections.PspMigration(this.extraParams, this.requested); + } - /** - * 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.BancontactPayments#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 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.SwishPayments.Protections.PspMigration#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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.BancontactPayments#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 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.SwishPayments.Protections.PspMigration#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - /** - * To request a new Capability for an account, pass true. There can be a delay before - * the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; + /** Required. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } } } } @Getter @EqualsAndHashCode(callSuper = false) - public static class BlikPayments { + public static class TwintPayments { /** * 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. @@ -6200,6 +18433,10 @@ public static class BlikPayments { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + /** * To request a new Capability for an account, pass true. There can be a delay before the * requested Capability becomes active. @@ -6207,8 +18444,10 @@ public static class BlikPayments { @SerializedName("requested") Boolean requested; - private BlikPayments(Map extraParams, Boolean requested) { + private TwintPayments( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -6219,20 +18458,22 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.Capabilities.BlikPayments build() { - return new AccountUpdateParams.Configuration.Merchant.Capabilities.BlikPayments( - this.extraParams, this.requested); + public AccountUpdateParams.Configuration.Merchant.Capabilities.TwintPayments build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.TwintPayments( + this.extraParams, this.protections, this.requested); } /** * 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.BlikPayments#extraParams} for - * the field documentation. + * AccountUpdateParams.Configuration.Merchant.Capabilities.TwintPayments#extraParams} + * for the field documentation. */ public Builder putExtraParam(String key, Object value) { if (this.extraParams == null) { @@ -6246,8 +18487,8 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.BlikPayments#extraParams} for - * the field documentation. + * AccountUpdateParams.Configuration.Merchant.Capabilities.TwintPayments#extraParams} + * for the field documentation. */ public Builder putAllExtraParam(Map map) { if (this.extraParams == null) { @@ -6257,6 +18498,14 @@ public Builder putAllExtraParam(Map map) { return this; } + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountUpdateParams.Configuration.Merchant.Capabilities.TwintPayments.Protections + protections) { + this.protections = protections; + return this; + } + /** * To request a new Capability for an account, pass true. There can be a delay before * the requested Capability becomes active. @@ -6266,173 +18515,168 @@ public Builder setRequested(Boolean requested) { return this; } } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class BoletoPayments { - /** - * 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; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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; - /** - * To request a new Capability for an account, pass true. There can be a delay before the - * requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + /** Required. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - private BoletoPayments(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - public static Builder builder() { - return new Builder(); - } + public static Builder builder() { + return new Builder(); + } - public static class Builder { - private Map extraParams; + public static class Builder { + private Map extraParams; - private Boolean requested; + private PspMigration pspMigration; - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.Capabilities.BoletoPayments build() { - return new AccountUpdateParams.Configuration.Merchant.Capabilities.BoletoPayments( - this.extraParams, this.requested); - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.TwintPayments + .Protections + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.TwintPayments + .Protections(this.extraParams, this.pspMigration); + } - /** - * 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.BoletoPayments#extraParams} - * for the field documentation. - */ - public Builder putExtraParam(String key, Object value) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.TwintPayments.Protections#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; } - 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.BoletoPayments#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.TwintPayments.Protections#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; } - this.extraParams.putAll(map); - return this; - } - /** - * To request a new Capability for an account, pass true. There can be a delay before - * the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Merchant.Capabilities.TwintPayments.Protections + .PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } } - } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class CardPayments { - /** - * 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; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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; - /** - * To request a new Capability for an account, pass true. There can be a delay before the - * requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + /** Required. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; - private CardPayments(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } - public static Builder builder() { - return new Builder(); - } + public static Builder builder() { + return new Builder(); + } - public static class Builder { - private Map extraParams; + public static class Builder { + private Map extraParams; - private Boolean requested; + private Boolean requested; - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.Capabilities.CardPayments build() { - return new AccountUpdateParams.Configuration.Merchant.Capabilities.CardPayments( - this.extraParams, this.requested); - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.TwintPayments + .Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.TwintPayments + .Protections.PspMigration(this.extraParams, this.requested); + } - /** - * 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.CardPayments#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 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.TwintPayments.Protections.PspMigration#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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.CardPayments#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 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.TwintPayments.Protections.PspMigration#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - /** - * To request a new Capability for an account, pass true. There can be a delay before - * the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; + /** Required. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } } } } @Getter @EqualsAndHashCode(callSuper = false) - public static class CartesBancairesPayments { + public static class UsBankTransferPayments { /** * 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. @@ -6443,6 +18687,10 @@ public static class CartesBancairesPayments { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + /** * To request a new Capability for an account, pass true. There can be a delay before the * requested Capability becomes active. @@ -6450,8 +18698,10 @@ public static class CartesBancairesPayments { @SerializedName("requested") Boolean requested; - private CartesBancairesPayments(Map extraParams, Boolean requested) { + private UsBankTransferPayments( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -6462,20 +18712,22 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.Capabilities.CartesBancairesPayments + public AccountUpdateParams.Configuration.Merchant.Capabilities.UsBankTransferPayments build() { return new AccountUpdateParams.Configuration.Merchant.Capabilities - .CartesBancairesPayments(this.extraParams, this.requested); + .UsBankTransferPayments(this.extraParams, this.protections, this.requested); } /** * 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.CartesBancairesPayments#extraParams} + * AccountUpdateParams.Configuration.Merchant.Capabilities.UsBankTransferPayments#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -6490,7 +18742,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.CartesBancairesPayments#extraParams} + * AccountUpdateParams.Configuration.Merchant.Capabilities.UsBankTransferPayments#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -6501,6 +18753,15 @@ public Builder putAllExtraParam(Map map) { return this; } + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountUpdateParams.Configuration.Merchant.Capabilities.UsBankTransferPayments + .Protections + protections) { + this.protections = protections; + return this; + } + /** * To request a new Capability for an account, pass true. There can be a delay before * the requested Capability becomes active. @@ -6510,173 +18771,169 @@ public Builder setRequested(Boolean requested) { return this; } } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class CashappPayments { - /** - * 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; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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; - /** - * To request a new Capability for an account, pass true. There can be a delay before the - * requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + /** Required. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - private CashappPayments(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - public static Builder builder() { - return new Builder(); - } + public static Builder builder() { + return new Builder(); + } - public static class Builder { - private Map extraParams; + public static class Builder { + private Map extraParams; - private Boolean requested; + private PspMigration pspMigration; - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.Capabilities.CashappPayments build() { - return new AccountUpdateParams.Configuration.Merchant.Capabilities.CashappPayments( - this.extraParams, this.requested); - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.UsBankTransferPayments + .Protections + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities + .UsBankTransferPayments.Protections(this.extraParams, this.pspMigration); + } - /** - * 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.CashappPayments#extraParams} - * for the field documentation. - */ - public Builder putExtraParam(String key, Object value) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.UsBankTransferPayments.Protections#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; } - 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.CashappPayments#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.UsBankTransferPayments.Protections#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; } - this.extraParams.putAll(map); - return this; - } - /** - * To request a new Capability for an account, pass true. There can be a delay before - * the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Merchant.Capabilities.UsBankTransferPayments + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } } - } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class EpsPayments { - /** - * 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; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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; - /** - * To request a new Capability for an account, pass true. There can be a delay before the - * requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + /** Required. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; - private EpsPayments(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } - public static Builder builder() { - return new Builder(); - } + public static Builder builder() { + return new Builder(); + } - public static class Builder { - private Map extraParams; + public static class Builder { + private Map extraParams; - private Boolean requested; + private Boolean requested; - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.Capabilities.EpsPayments build() { - return new AccountUpdateParams.Configuration.Merchant.Capabilities.EpsPayments( - this.extraParams, this.requested); - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities + .UsBankTransferPayments.Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities + .UsBankTransferPayments.Protections.PspMigration( + this.extraParams, this.requested); + } - /** - * 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.EpsPayments#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 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.UsBankTransferPayments.Protections.PspMigration#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.UsBankTransferPayments.Protections.PspMigration#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 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.EpsPayments#extraParams} for - * the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** Required. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } } - this.extraParams.putAll(map); - return this; - } - - /** - * To request a new Capability for an account, pass true. There can be a delay before - * the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; } } } @Getter @EqualsAndHashCode(callSuper = false) - public static class FpxPayments { + public static class ZipPayments { /** * 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. @@ -6687,6 +18944,10 @@ public static class FpxPayments { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + /** * To request a new Capability for an account, pass true. There can be a delay before the * requested Capability becomes active. @@ -6694,8 +18955,10 @@ public static class FpxPayments { @SerializedName("requested") Boolean requested; - private FpxPayments(Map extraParams, Boolean requested) { + private ZipPayments( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -6706,19 +18969,21 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.Capabilities.FpxPayments build() { - return new AccountUpdateParams.Configuration.Merchant.Capabilities.FpxPayments( - this.extraParams, this.requested); + public AccountUpdateParams.Configuration.Merchant.Capabilities.ZipPayments build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.ZipPayments( + this.extraParams, this.protections, this.requested); } /** * 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.FpxPayments#extraParams} for + * AccountUpdateParams.Configuration.Merchant.Capabilities.ZipPayments#extraParams} for * the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -6733,7 +18998,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.FpxPayments#extraParams} for + * AccountUpdateParams.Configuration.Merchant.Capabilities.ZipPayments#extraParams} for * the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -6744,6 +19009,14 @@ public Builder putAllExtraParam(Map map) { return this; } + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountUpdateParams.Configuration.Merchant.Capabilities.ZipPayments.Protections + protections) { + this.protections = protections; + return this; + } + /** * To request a new Capability for an account, pass true. There can be a delay before * the requested Capability becomes active. @@ -6753,11 +19026,262 @@ public Builder setRequested(Boolean requested) { return this; } } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.ZipPayments.Protections + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.ZipPayments + .Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.ZipPayments.Protections#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.ZipPayments.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Merchant.Capabilities.ZipPayments.Protections + .PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Capabilities.ZipPayments + .Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Merchant.Capabilities.ZipPayments + .Protections.PspMigration(this.extraParams, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.ZipPayments.Protections.PspMigration#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 + * AccountUpdateParams.Configuration.Merchant.Capabilities.ZipPayments.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class CardPayments { + /** + * Automatically declines certain charge types regardless of whether the card issuer + * accepted or declined the charge. + */ + @SerializedName("decline_on") + DeclineOn declineOn; + + /** + * 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; + + private CardPayments(DeclineOn declineOn, Map extraParams) { + this.declineOn = declineOn; + this.extraParams = extraParams; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private DeclineOn declineOn; + + private Map extraParams; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.CardPayments build() { + return new AccountUpdateParams.Configuration.Merchant.CardPayments( + this.declineOn, this.extraParams); + } + + /** + * Automatically declines certain charge types regardless of whether the card issuer + * accepted or declined the charge. + */ + public Builder setDeclineOn( + AccountUpdateParams.Configuration.Merchant.CardPayments.DeclineOn declineOn) { + this.declineOn = declineOn; + 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 AccountUpdateParams.Configuration.Merchant.CardPayments#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 AccountUpdateParams.Configuration.Merchant.CardPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } } @Getter @EqualsAndHashCode(callSuper = false) - public static class GbBankTransferPayments { + public static class DeclineOn { + /** + * Whether Stripe automatically declines charges with an incorrect ZIP or postal code. + * This setting only applies when a ZIP or postal code is provided and they fail bank + * verification. + */ + @SerializedName("avs_failure") + Boolean avsFailure; + + /** + * Whether Stripe automatically declines charges with an incorrect CVC. This setting only + * applies when a CVC is provided and it fails bank verification. + */ + @SerializedName("cvc_failure") + Boolean cvcFailure; + /** * 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. @@ -6768,16 +19292,11 @@ public static class GbBankTransferPayments { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** - * To request a new Capability for an account, pass true. There can be a delay before the - * requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; - - private GbBankTransferPayments(Map extraParams, Boolean requested) { + private DeclineOn( + Boolean avsFailure, Boolean cvcFailure, Map extraParams) { + this.avsFailure = avsFailure; + this.cvcFailure = cvcFailure; this.extraParams = extraParams; - this.requested = requested; } public static Builder builder() { @@ -6785,104 +19304,43 @@ public static Builder builder() { } public static class Builder { - private Map extraParams; + private Boolean avsFailure; - private Boolean requested; + private Boolean cvcFailure; - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.Capabilities.GbBankTransferPayments - build() { - return new AccountUpdateParams.Configuration.Merchant.Capabilities - .GbBankTransferPayments(this.extraParams, this.requested); - } + private Map extraParams; - /** - * 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.GbBankTransferPayments#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; + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.CardPayments.DeclineOn build() { + return new AccountUpdateParams.Configuration.Merchant.CardPayments.DeclineOn( + this.avsFailure, this.cvcFailure, this.extraParams); } /** - * 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.GbBankTransferPayments#extraParams} - * for the field documentation. + * Whether Stripe automatically declines charges with an incorrect ZIP or postal code. + * This setting only applies when a ZIP or postal code is provided and they fail bank + * verification. */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); - } - this.extraParams.putAll(map); + public Builder setAvsFailure(Boolean avsFailure) { + this.avsFailure = avsFailure; return this; } /** - * To request a new Capability for an account, pass true. There can be a delay before - * the requested Capability becomes active. + * Whether Stripe automatically declines charges with an incorrect CVC. This setting + * only applies when a CVC is provided and it fails bank verification. */ - public Builder setRequested(Boolean requested) { - this.requested = requested; + public Builder setCvcFailure(Boolean cvcFailure) { + this.cvcFailure = cvcFailure; return this; } - } - } - - @Getter - @EqualsAndHashCode(callSuper = false) - public static class GrabpayPayments { - /** - * 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; - - /** - * To request a new Capability for an account, pass true. There can be a delay before the - * requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; - - private GrabpayPayments(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } - - public static Builder builder() { - return new Builder(); - } - - public static class Builder { - private Map extraParams; - - private Boolean requested; - - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.Capabilities.GrabpayPayments build() { - return new AccountUpdateParams.Configuration.Merchant.Capabilities.GrabpayPayments( - this.extraParams, this.requested); - } /** * 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.GrabpayPayments#extraParams} - * for the field documentation. + * AccountUpdateParams.Configuration.Merchant.CardPayments.DeclineOn#extraParams} for + * the field documentation. */ public Builder putExtraParam(String key, Object value) { if (this.extraParams == null) { @@ -6896,8 +19354,8 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.GrabpayPayments#extraParams} - * for the field documentation. + * AccountUpdateParams.Configuration.Merchant.CardPayments.DeclineOn#extraParams} for + * the field documentation. */ public Builder putAllExtraParam(Map map) { if (this.extraParams == null) { @@ -6906,102 +19364,90 @@ public Builder putAllExtraParam(Map map) { this.extraParams.putAll(map); return this; } - - /** - * To request a new Capability for an account, pass true. There can be a delay before - * the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; - } } } + } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class IdealPayments { - /** - * 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; - - /** - * To request a new Capability for an account, pass true. There can be a delay before the - * requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class KonbiniPayments { + /** + * 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; - private IdealPayments(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + /** Support for Konbini payments. */ + @SerializedName("support") + Support support; - public static Builder builder() { - return new Builder(); - } + private KonbiniPayments(Map extraParams, Support support) { + this.extraParams = extraParams; + this.support = support; + } - public static class Builder { - private Map extraParams; + public static Builder builder() { + return new Builder(); + } - private Boolean requested; + public static class Builder { + private Map extraParams; - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.Capabilities.IdealPayments build() { - return new AccountUpdateParams.Configuration.Merchant.Capabilities.IdealPayments( - this.extraParams, this.requested); - } + private Support support; - /** - * 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.IdealPayments#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; - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.KonbiniPayments build() { + return new AccountUpdateParams.Configuration.Merchant.KonbiniPayments( + this.extraParams, this.support); + } - /** - * 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.IdealPayments#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 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 AccountUpdateParams.Configuration.Merchant.KonbiniPayments#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; + } - /** - * To request a new Capability for an account, pass true. There can be a delay before - * the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - 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 AccountUpdateParams.Configuration.Merchant.KonbiniPayments#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); } + this.extraParams.putAll(map); + return this; + } + + /** Support for Konbini payments. */ + public Builder setSupport( + AccountUpdateParams.Configuration.Merchant.KonbiniPayments.Support support) { + this.support = support; + return this; } } @Getter @EqualsAndHashCode(callSuper = false) - public static class JcbPayments { + public static class Support { + /** Support email address for Konbini payments. */ + @SerializedName("email") + Object email; + /** * 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. @@ -7012,16 +19458,20 @@ public static class JcbPayments { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** - * To request a new Capability for an account, pass true. There can be a delay before the - * requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + /** Support hours for Konbini payments. */ + @SerializedName("hours") + Hours hours; - private JcbPayments(Map extraParams, Boolean requested) { + /** Support phone number for Konbini payments. */ + @SerializedName("phone") + Object phone; + + private Support( + Object email, Map extraParams, Hours hours, Object phone) { + this.email = email; this.extraParams = extraParams; - this.requested = requested; + this.hours = hours; + this.phone = phone; } public static Builder builder() { @@ -7029,21 +19479,37 @@ public static Builder builder() { } public static class Builder { + private Object email; + private Map extraParams; - private Boolean requested; + private Hours hours; + + private Object phone; /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.Capabilities.JcbPayments build() { - return new AccountUpdateParams.Configuration.Merchant.Capabilities.JcbPayments( - this.extraParams, this.requested); + public AccountUpdateParams.Configuration.Merchant.KonbiniPayments.Support build() { + return new AccountUpdateParams.Configuration.Merchant.KonbiniPayments.Support( + this.email, this.extraParams, this.hours, this.phone); + } + + /** Support email address for Konbini payments. */ + public Builder setEmail(String email) { + this.email = email; + return this; + } + + /** Support email address for Konbini payments. */ + public Builder setEmail(EmptyParam email) { + this.email = email; + 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.JcbPayments#extraParams} for + * AccountUpdateParams.Configuration.Merchant.KonbiniPayments.Support#extraParams} for * the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -7058,7 +19524,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.JcbPayments#extraParams} for + * AccountUpdateParams.Configuration.Merchant.KonbiniPayments.Support#extraParams} for * the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -7069,20 +19535,253 @@ public Builder putAllExtraParam(Map map) { return this; } - /** - * To request a new Capability for an account, pass true. There can be a delay before - * the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; - } + /** Support hours for Konbini payments. */ + public Builder setHours( + AccountUpdateParams.Configuration.Merchant.KonbiniPayments.Support.Hours hours) { + this.hours = hours; + return this; + } + + /** Support phone number for Konbini payments. */ + public Builder setPhone(String phone) { + this.phone = phone; + return this; + } + + /** Support phone number for Konbini payments. */ + public Builder setPhone(EmptyParam phone) { + this.phone = phone; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Hours { + /** Support hours end time (JST time of day) for in {@code HH:MM} format. */ + @SerializedName("end_time") + Object endTime; + + /** + * 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; + + /** Support hours start time (JST time of day) for in {@code HH:MM} format. */ + @SerializedName("start_time") + Object startTime; + + private Hours(Object endTime, Map extraParams, Object startTime) { + this.endTime = endTime; + this.extraParams = extraParams; + this.startTime = startTime; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Object endTime; + + private Map extraParams; + + private Object startTime; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.KonbiniPayments.Support.Hours + build() { + return new AccountUpdateParams.Configuration.Merchant.KonbiniPayments.Support.Hours( + this.endTime, this.extraParams, this.startTime); + } + + /** Support hours end time (JST time of day) for in {@code HH:MM} format. */ + public Builder setEndTime(String endTime) { + this.endTime = endTime; + return this; + } + + /** Support hours end time (JST time of day) for in {@code HH:MM} format. */ + public Builder setEndTime(EmptyParam endTime) { + this.endTime = endTime; + 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 + * AccountUpdateParams.Configuration.Merchant.KonbiniPayments.Support.Hours#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 + * AccountUpdateParams.Configuration.Merchant.KonbiniPayments.Support.Hours#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Support hours start time (JST time of day) for in {@code HH:MM} format. */ + public Builder setStartTime(String startTime) { + this.startTime = startTime; + return this; + } + + /** Support hours start time (JST time of day) for in {@code HH:MM} format. */ + public Builder setStartTime(EmptyParam startTime) { + this.startTime = startTime; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class ScriptStatementDescriptor { + /** + * 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 Kana variation of statement_descriptor used for charges in Japan. Japanese statement + * descriptors have special + * requirements. + */ + @SerializedName("kana") + Kana kana; + + /** + * The Kanji variation of statement_descriptor used for charges in Japan. Japanese statement + * descriptors have special + * requirements. + */ + @SerializedName("kanji") + Kanji kanji; + + private ScriptStatementDescriptor(Map extraParams, Kana kana, Kanji kanji) { + this.extraParams = extraParams; + this.kana = kana; + this.kanji = kanji; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Kana kana; + + private Kanji kanji; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.ScriptStatementDescriptor build() { + return new AccountUpdateParams.Configuration.Merchant.ScriptStatementDescriptor( + this.extraParams, this.kana, this.kanji); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Merchant.ScriptStatementDescriptor#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 + * AccountUpdateParams.Configuration.Merchant.ScriptStatementDescriptor#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 Kana variation of statement_descriptor used for charges in Japan. Japanese + * statement descriptors have special + * requirements. + */ + public Builder setKana( + AccountUpdateParams.Configuration.Merchant.ScriptStatementDescriptor.Kana kana) { + this.kana = kana; + return this; + } + + /** + * The Kanji variation of statement_descriptor used for charges in Japan. Japanese + * statement descriptors have special + * requirements. + */ + public Builder setKanji( + AccountUpdateParams.Configuration.Merchant.ScriptStatementDescriptor.Kanji kanji) { + this.kanji = kanji; + return this; } } @Getter @EqualsAndHashCode(callSuper = false) - public static class JpBankTransferPayments { + public static class Kana { + /** + * The default text that appears on statements for non-card charges outside of Japan. For + * card charges, if you don’t set a statement_descriptor_prefix, this text is also used as + * the statement descriptor prefix. In that case, if concatenating the statement + * descriptor suffix causes the combined statement descriptor to exceed 22 characters, we + * truncate the statement_descriptor text to limit the full descriptor to 22 characters. + * For more information about statement descriptors and their requirements, see the + * Merchant Configuration settings documentation. + */ + @SerializedName("descriptor") + Object descriptor; + /** * 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. @@ -7094,15 +19793,20 @@ public static class JpBankTransferPayments { Map extraParams; /** - * To request a new Capability for an account, pass true. There can be a delay before the - * requested Capability becomes active. + * Default text that appears on statements for card charges outside of Japan, prefixing + * any dynamic statement_descriptor_suffix specified on the charge. To maximize space for + * the dynamic part of the descriptor, keep this text short. If you don’t specify this + * value, statement_descriptor is used as the prefix. For more information about statement + * descriptors and their requirements, see the Merchant Configuration settings + * documentation. */ - @SerializedName("requested") - Boolean requested; + @SerializedName("prefix") + Object prefix; - private JpBankTransferPayments(Map extraParams, Boolean requested) { + private Kana(Object descriptor, Map extraParams, Object prefix) { + this.descriptor = descriptor; this.extraParams = extraParams; - this.requested = requested; + this.prefix = prefix; } public static Builder builder() { @@ -7110,104 +19814,52 @@ public static Builder builder() { } public static class Builder { + private Object descriptor; + private Map extraParams; - private Boolean requested; + private Object prefix; /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.Capabilities.JpBankTransferPayments + public AccountUpdateParams.Configuration.Merchant.ScriptStatementDescriptor.Kana build() { - return new AccountUpdateParams.Configuration.Merchant.Capabilities - .JpBankTransferPayments(this.extraParams, this.requested); - } - - /** - * 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.JpBankTransferPayments#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; + return new AccountUpdateParams.Configuration.Merchant.ScriptStatementDescriptor.Kana( + this.descriptor, this.extraParams, this.prefix); } /** - * 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.JpBankTransferPayments#extraParams} - * for the field documentation. + * The default text that appears on statements for non-card charges outside of Japan. + * For card charges, if you don’t set a statement_descriptor_prefix, this text is also + * used as the statement descriptor prefix. In that case, if concatenating the statement + * descriptor suffix causes the combined statement descriptor to exceed 22 characters, + * we truncate the statement_descriptor text to limit the full descriptor to 22 + * characters. For more information about statement descriptors and their requirements, + * see the Merchant Configuration settings documentation. */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); - } - this.extraParams.putAll(map); + public Builder setDescriptor(String descriptor) { + this.descriptor = descriptor; return this; } /** - * To request a new Capability for an account, pass true. There can be a delay before - * the requested Capability becomes active. + * The default text that appears on statements for non-card charges outside of Japan. + * For card charges, if you don’t set a statement_descriptor_prefix, this text is also + * used as the statement descriptor prefix. In that case, if concatenating the statement + * descriptor suffix causes the combined statement descriptor to exceed 22 characters, + * we truncate the statement_descriptor text to limit the full descriptor to 22 + * characters. For more information about statement descriptors and their requirements, + * see the Merchant Configuration settings documentation. */ - public Builder setRequested(Boolean requested) { - this.requested = requested; + public Builder setDescriptor(EmptyParam descriptor) { + this.descriptor = descriptor; return this; } - } - } - - @Getter - @EqualsAndHashCode(callSuper = false) - public static class KakaoPayPayments { - /** - * 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; - - /** - * To request a new Capability for an account, pass true. There can be a delay before the - * requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; - - private KakaoPayPayments(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } - - public static Builder builder() { - return new Builder(); - } - - public static class Builder { - private Map extraParams; - - private Boolean requested; - - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.Capabilities.KakaoPayPayments - build() { - return new AccountUpdateParams.Configuration.Merchant.Capabilities.KakaoPayPayments( - this.extraParams, this.requested); - } /** * 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.KakaoPayPayments#extraParams} + * AccountUpdateParams.Configuration.Merchant.ScriptStatementDescriptor.Kana#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -7222,7 +19874,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.KakaoPayPayments#extraParams} + * AccountUpdateParams.Configuration.Merchant.ScriptStatementDescriptor.Kana#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -7234,11 +19886,28 @@ public Builder putAllExtraParam(Map map) { } /** - * To request a new Capability for an account, pass true. There can be a delay before - * the requested Capability becomes active. + * Default text that appears on statements for card charges outside of Japan, prefixing + * any dynamic statement_descriptor_suffix specified on the charge. To maximize space + * for the dynamic part of the descriptor, keep this text short. If you don’t specify + * this value, statement_descriptor is used as the prefix. For more information about + * statement descriptors and their requirements, see the Merchant Configuration settings + * documentation. */ - public Builder setRequested(Boolean requested) { - this.requested = requested; + public Builder setPrefix(String prefix) { + this.prefix = prefix; + return this; + } + + /** + * Default text that appears on statements for card charges outside of Japan, prefixing + * any dynamic statement_descriptor_suffix specified on the charge. To maximize space + * for the dynamic part of the descriptor, keep this text short. If you don’t specify + * this value, statement_descriptor is used as the prefix. For more information about + * statement descriptors and their requirements, see the Merchant Configuration settings + * documentation. + */ + public Builder setPrefix(EmptyParam prefix) { + this.prefix = prefix; return this; } } @@ -7246,7 +19915,19 @@ public Builder setRequested(Boolean requested) { @Getter @EqualsAndHashCode(callSuper = false) - public static class KlarnaPayments { + public static class Kanji { + /** + * The default text that appears on statements for non-card charges outside of Japan. For + * card charges, if you don’t set a statement_descriptor_prefix, this text is also used as + * the statement descriptor prefix. In that case, if concatenating the statement + * descriptor suffix causes the combined statement descriptor to exceed 22 characters, we + * truncate the statement_descriptor text to limit the full descriptor to 22 characters. + * For more information about statement descriptors and their requirements, see the + * Merchant Configuration settings documentation. + */ + @SerializedName("descriptor") + Object descriptor; + /** * 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. @@ -7258,15 +19939,20 @@ public static class KlarnaPayments { Map extraParams; /** - * To request a new Capability for an account, pass true. There can be a delay before the - * requested Capability becomes active. + * Default text that appears on statements for card charges outside of Japan, prefixing + * any dynamic statement_descriptor_suffix specified on the charge. To maximize space for + * the dynamic part of the descriptor, keep this text short. If you don’t specify this + * value, statement_descriptor is used as the prefix. For more information about statement + * descriptors and their requirements, see the Merchant Configuration settings + * documentation. */ - @SerializedName("requested") - Boolean requested; + @SerializedName("prefix") + Object prefix; - private KlarnaPayments(Map extraParams, Boolean requested) { + private Kanji(Object descriptor, Map extraParams, Object prefix) { + this.descriptor = descriptor; this.extraParams = extraParams; - this.requested = requested; + this.prefix = prefix; } public static Builder builder() { @@ -7274,21 +19960,52 @@ public static Builder builder() { } public static class Builder { + private Object descriptor; + private Map extraParams; - private Boolean requested; + private Object prefix; /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.Capabilities.KlarnaPayments build() { - return new AccountUpdateParams.Configuration.Merchant.Capabilities.KlarnaPayments( - this.extraParams, this.requested); + public AccountUpdateParams.Configuration.Merchant.ScriptStatementDescriptor.Kanji + build() { + return new AccountUpdateParams.Configuration.Merchant.ScriptStatementDescriptor.Kanji( + this.descriptor, this.extraParams, this.prefix); + } + + /** + * The default text that appears on statements for non-card charges outside of Japan. + * For card charges, if you don’t set a statement_descriptor_prefix, this text is also + * used as the statement descriptor prefix. In that case, if concatenating the statement + * descriptor suffix causes the combined statement descriptor to exceed 22 characters, + * we truncate the statement_descriptor text to limit the full descriptor to 22 + * characters. For more information about statement descriptors and their requirements, + * see the Merchant Configuration settings documentation. + */ + public Builder setDescriptor(String descriptor) { + this.descriptor = descriptor; + return this; + } + + /** + * The default text that appears on statements for non-card charges outside of Japan. + * For card charges, if you don’t set a statement_descriptor_prefix, this text is also + * used as the statement descriptor prefix. In that case, if concatenating the statement + * descriptor suffix causes the combined statement descriptor to exceed 22 characters, + * we truncate the statement_descriptor text to limit the full descriptor to 22 + * characters. For more information about statement descriptors and their requirements, + * see the Merchant Configuration settings documentation. + */ + public Builder setDescriptor(EmptyParam descriptor) { + this.descriptor = descriptor; + 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.KlarnaPayments#extraParams} + * AccountUpdateParams.Configuration.Merchant.ScriptStatementDescriptor.Kanji#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -7303,7 +20020,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.KlarnaPayments#extraParams} + * AccountUpdateParams.Configuration.Merchant.ScriptStatementDescriptor.Kanji#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -7315,19 +20032,110 @@ public Builder putAllExtraParam(Map map) { } /** - * To request a new Capability for an account, pass true. There can be a delay before - * the requested Capability becomes active. + * Default text that appears on statements for card charges outside of Japan, prefixing + * any dynamic statement_descriptor_suffix specified on the charge. To maximize space + * for the dynamic part of the descriptor, keep this text short. If you don’t specify + * this value, statement_descriptor is used as the prefix. For more information about + * statement descriptors and their requirements, see the Merchant Configuration settings + * documentation. */ - public Builder setRequested(Boolean requested) { - this.requested = requested; + public Builder setPrefix(String prefix) { + this.prefix = prefix; + return this; + } + + /** + * Default text that appears on statements for card charges outside of Japan, prefixing + * any dynamic statement_descriptor_suffix specified on the charge. To maximize space + * for the dynamic part of the descriptor, keep this text short. If you don’t specify + * this value, statement_descriptor is used as the prefix. For more information about + * statement descriptors and their requirements, see the Merchant Configuration settings + * documentation. + */ + public Builder setPrefix(EmptyParam prefix) { + this.prefix = prefix; return this; } } } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class SmartDisputes { + /** Settings for Smart Disputes auto_respond. */ + @SerializedName("auto_respond") + AutoRespond autoRespond; + + /** + * 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; + + private SmartDisputes(AutoRespond autoRespond, Map extraParams) { + this.autoRespond = autoRespond; + this.extraParams = extraParams; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private AutoRespond autoRespond; + + private Map extraParams; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.SmartDisputes build() { + return new AccountUpdateParams.Configuration.Merchant.SmartDisputes( + this.autoRespond, this.extraParams); + } + + /** Settings for Smart Disputes auto_respond. */ + public Builder setAutoRespond( + AccountUpdateParams.Configuration.Merchant.SmartDisputes.AutoRespond autoRespond) { + this.autoRespond = autoRespond; + 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 AccountUpdateParams.Configuration.Merchant.SmartDisputes#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 AccountUpdateParams.Configuration.Merchant.SmartDisputes#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + } @Getter @EqualsAndHashCode(callSuper = false) - public static class KonbiniPayments { + public static class AutoRespond { /** * 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. @@ -7338,16 +20146,13 @@ public static class KonbiniPayments { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** - * To request a new Capability for an account, pass true. There can be a delay before the - * requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + /** The preference for automatic dispute responses. */ + @SerializedName("preference") + Preference preference; - private KonbiniPayments(Map extraParams, Boolean requested) { + private AutoRespond(Map extraParams, Preference preference) { this.extraParams = extraParams; - this.requested = requested; + this.preference = preference; } public static Builder builder() { @@ -7357,20 +20162,20 @@ public static Builder builder() { public static class Builder { private Map extraParams; - private Boolean requested; + private Preference preference; /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.Capabilities.KonbiniPayments build() { - return new AccountUpdateParams.Configuration.Merchant.Capabilities.KonbiniPayments( - this.extraParams, this.requested); + public AccountUpdateParams.Configuration.Merchant.SmartDisputes.AutoRespond build() { + return new AccountUpdateParams.Configuration.Merchant.SmartDisputes.AutoRespond( + this.extraParams, this.preference); } /** * 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.KonbiniPayments#extraParams} - * for the field documentation. + * AccountUpdateParams.Configuration.Merchant.SmartDisputes.AutoRespond#extraParams} for + * the field documentation. */ public Builder putExtraParam(String key, Object value) { if (this.extraParams == null) { @@ -7384,8 +20189,8 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.KonbiniPayments#extraParams} - * for the field documentation. + * AccountUpdateParams.Configuration.Merchant.SmartDisputes.AutoRespond#extraParams} for + * the field documentation. */ public Builder putAllExtraParam(Map map) { if (this.extraParams == null) { @@ -7395,264 +20200,330 @@ public Builder putAllExtraParam(Map map) { return this; } - /** - * To request a new Capability for an account, pass true. There can be a delay before - * the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; + /** The preference for automatic dispute responses. */ + public Builder setPreference( + AccountUpdateParams.Configuration.Merchant.SmartDisputes.AutoRespond.Preference + preference) { + this.preference = preference; + return this; + } + } + + public enum Preference implements ApiRequestParams.EnumParam { + @SerializedName("inherit") + INHERIT("inherit"), + + @SerializedName("off") + OFF("off"), + + @SerializedName("on") + ON("on"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + Preference(String value) { + this.value = value; + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class StatementDescriptor { + /** + * The default text that appears on statements for non-card charges outside of Japan. For + * card charges, if you don’t set a statement_descriptor_prefix, this text is also used as + * the statement descriptor prefix. In that case, if concatenating the statement descriptor + * suffix causes the combined statement descriptor to exceed 22 characters, we truncate the + * statement_descriptor text to limit the full descriptor to 22 characters. For more + * information about statement descriptors and their requirements, see the Merchant + * Configuration settings documentation. + */ + @SerializedName("descriptor") + Object descriptor; + + /** + * 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; + + /** + * Default text that appears on statements for card charges outside of Japan, prefixing any + * dynamic statement_descriptor_suffix specified on the charge. To maximize space for the + * dynamic part of the descriptor, keep this text short. If you don’t specify this value, + * statement_descriptor is used as the prefix. For more information about statement + * descriptors and their requirements, see the Merchant Configuration settings + * documentation. + */ + @SerializedName("prefix") + Object prefix; + + private StatementDescriptor( + Object descriptor, Map extraParams, Object prefix) { + this.descriptor = descriptor; + this.extraParams = extraParams; + this.prefix = prefix; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Object descriptor; + + private Map extraParams; + + private Object prefix; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.StatementDescriptor build() { + return new AccountUpdateParams.Configuration.Merchant.StatementDescriptor( + this.descriptor, this.extraParams, this.prefix); + } + + /** + * The default text that appears on statements for non-card charges outside of Japan. For + * card charges, if you don’t set a statement_descriptor_prefix, this text is also used as + * the statement descriptor prefix. In that case, if concatenating the statement + * descriptor suffix causes the combined statement descriptor to exceed 22 characters, we + * truncate the statement_descriptor text to limit the full descriptor to 22 characters. + * For more information about statement descriptors and their requirements, see the + * Merchant Configuration settings documentation. + */ + public Builder setDescriptor(String descriptor) { + this.descriptor = descriptor; + return this; + } + + /** + * The default text that appears on statements for non-card charges outside of Japan. For + * card charges, if you don’t set a statement_descriptor_prefix, this text is also used as + * the statement descriptor prefix. In that case, if concatenating the statement + * descriptor suffix causes the combined statement descriptor to exceed 22 characters, we + * truncate the statement_descriptor text to limit the full descriptor to 22 characters. + * For more information about statement descriptors and their requirements, see the + * Merchant Configuration settings documentation. + */ + public Builder setDescriptor(EmptyParam descriptor) { + this.descriptor = descriptor; + 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 + * AccountUpdateParams.Configuration.Merchant.StatementDescriptor#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; } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class KrCardPayments { /** - * 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. + * 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 + * AccountUpdateParams.Configuration.Merchant.StatementDescriptor#extraParams} for the + * field documentation. */ - @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) - Map extraParams; + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } /** - * To request a new Capability for an account, pass true. There can be a delay before the - * requested Capability becomes active. + * Default text that appears on statements for card charges outside of Japan, prefixing + * any dynamic statement_descriptor_suffix specified on the charge. To maximize space for + * the dynamic part of the descriptor, keep this text short. If you don’t specify this + * value, statement_descriptor is used as the prefix. For more information about statement + * descriptors and their requirements, see the Merchant Configuration settings + * documentation. */ - @SerializedName("requested") - Boolean requested; - - private KrCardPayments(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; + public Builder setPrefix(String prefix) { + this.prefix = prefix; + return this; } - public static Builder builder() { - return new Builder(); + /** + * Default text that appears on statements for card charges outside of Japan, prefixing + * any dynamic statement_descriptor_suffix specified on the charge. To maximize space for + * the dynamic part of the descriptor, keep this text short. If you don’t specify this + * value, statement_descriptor is used as the prefix. For more information about statement + * descriptors and their requirements, see the Merchant Configuration settings + * documentation. + */ + public Builder setPrefix(EmptyParam prefix) { + this.prefix = prefix; + return this; } + } + } - public static class Builder { - private Map extraParams; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Support { + /** A publicly available mailing address for sending support issues to. */ + @SerializedName("address") + Address address; - private Boolean requested; + /** A publicly available email address for sending support issues to. */ + @SerializedName("email") + Object email; - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.Capabilities.KrCardPayments build() { - return new AccountUpdateParams.Configuration.Merchant.Capabilities.KrCardPayments( - this.extraParams, this.requested); - } + /** + * 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; - /** - * 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.KrCardPayments#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; - } + /** A publicly available phone number to call with support issues. */ + @SerializedName("phone") + Object phone; - /** - * 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.KrCardPayments#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 publicly available website for handling support issues. */ + @SerializedName("url") + Object url; - /** - * To request a new Capability for an account, pass true. There can be a delay before - * the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; - } - } + private Support( + Address address, + Object email, + Map extraParams, + Object phone, + Object url) { + this.address = address; + this.email = email; + this.extraParams = extraParams; + this.phone = phone; + this.url = url; } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class LinkPayments { - /** - * 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; - - /** - * To request a new Capability for an account, pass true. There can be a delay before the - * requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + public static Builder builder() { + return new Builder(); + } - private LinkPayments(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + public static class Builder { + private Address address; - public static Builder builder() { - return new Builder(); - } + private Object email; - public static class Builder { - private Map extraParams; + private Map extraParams; - private Boolean requested; + private Object phone; - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.Capabilities.LinkPayments build() { - return new AccountUpdateParams.Configuration.Merchant.Capabilities.LinkPayments( - this.extraParams, this.requested); - } + private Object url; - /** - * 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.LinkPayments#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; - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Support build() { + return new AccountUpdateParams.Configuration.Merchant.Support( + this.address, this.email, this.extraParams, this.phone, this.url); + } - /** - * 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.LinkPayments#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 publicly available mailing address for sending support issues to. */ + public Builder setAddress( + AccountUpdateParams.Configuration.Merchant.Support.Address address) { + this.address = address; + return this; + } - /** - * To request a new Capability for an account, pass true. There can be a delay before - * the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; - } + /** A publicly available email address for sending support issues to. */ + public Builder setEmail(String email) { + this.email = email; + return this; + } + + /** A publicly available email address for sending support issues to. */ + public Builder setEmail(EmptyParam email) { + this.email = email; + return this; } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class MobilepayPayments { /** - * 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. + * 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 AccountUpdateParams.Configuration.Merchant.Support#extraParams} for the + * field documentation. */ - @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) - Map extraParams; + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } /** - * To request a new Capability for an account, pass true. There can be a delay before the - * requested Capability becomes active. + * 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 AccountUpdateParams.Configuration.Merchant.Support#extraParams} for the + * field documentation. */ - @SerializedName("requested") - Boolean requested; - - private MobilepayPayments(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; } - public static Builder builder() { - return new Builder(); + /** A publicly available phone number to call with support issues. */ + public Builder setPhone(String phone) { + this.phone = phone; + return this; } - public static class Builder { - private Map extraParams; - - private Boolean requested; - - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.Capabilities.MobilepayPayments - build() { - return new AccountUpdateParams.Configuration.Merchant.Capabilities.MobilepayPayments( - this.extraParams, this.requested); - } - - /** - * 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.MobilepayPayments#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; - } + /** A publicly available phone number to call with support issues. */ + public Builder setPhone(EmptyParam phone) { + this.phone = phone; + 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.MobilepayPayments#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 publicly available website for handling support issues. */ + public Builder setUrl(String url) { + this.url = url; + return this; + } - /** - * To request a new Capability for an account, pass true. There can be a delay before - * the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; - } + /** A publicly available website for handling support issues. */ + public Builder setUrl(EmptyParam url) { + this.url = url; + return this; } } @Getter @EqualsAndHashCode(callSuper = false) - public static class MultibancoPayments { + public static class Address { + /** City, district, suburb, town, or village. */ + @SerializedName("city") + Object city; + + /** + * Two-letter country code (ISO + * 3166-1 alpha-2). + */ + @SerializedName("country") + Object country; + /** * 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. @@ -7663,16 +20534,43 @@ public static class MultibancoPayments { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** - * To request a new Capability for an account, pass true. There can be a delay before the - * requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + /** Address line 1 (e.g., street, PO Box, or company name). */ + @SerializedName("line1") + Object line1; + + /** Address line 2 (e.g., apartment, suite, unit, or building). */ + @SerializedName("line2") + Object line2; + + /** ZIP or postal code. */ + @SerializedName("postal_code") + Object postalCode; + + /** State, county, province, or region. */ + @SerializedName("state") + Object state; + + /** Town or district. */ + @SerializedName("town") + Object town; - private MultibancoPayments(Map extraParams, Boolean requested) { + private Address( + Object city, + Object country, + Map extraParams, + Object line1, + Object line2, + Object postalCode, + Object state, + Object town) { + this.city = city; + this.country = country; this.extraParams = extraParams; - this.requested = requested; + this.line1 = line1; + this.line2 = line2; + this.postalCode = postalCode; + this.state = state; + this.town = town; } public static Builder builder() { @@ -7680,105 +20578,71 @@ public static Builder builder() { } public static class Builder { - private Map extraParams; + private Object city; - private Boolean requested; + private Object country; - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.Capabilities.MultibancoPayments - build() { - return new AccountUpdateParams.Configuration.Merchant.Capabilities.MultibancoPayments( - this.extraParams, this.requested); - } + private Map extraParams; - /** - * 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.MultibancoPayments#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; - } + private Object line1; - /** - * 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.MultibancoPayments#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); - } - this.extraParams.putAll(map); - return this; - } + private Object line2; - /** - * To request a new Capability for an account, pass true. There can be a delay before - * the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; - } - } - } + private Object postalCode; - @Getter - @EqualsAndHashCode(callSuper = false) - public static class MxBankTransferPayments { - /** - * 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; + private Object state; - /** - * To request a new Capability for an account, pass true. There can be a delay before the - * requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + private Object town; - private MxBankTransferPayments(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Merchant.Support.Address build() { + return new AccountUpdateParams.Configuration.Merchant.Support.Address( + this.city, + this.country, + this.extraParams, + this.line1, + this.line2, + this.postalCode, + this.state, + this.town); + } - public static Builder builder() { - return new Builder(); - } + /** City, district, suburb, town, or village. */ + public Builder setCity(String city) { + this.city = city; + return this; + } - public static class Builder { - private Map extraParams; + /** City, district, suburb, town, or village. */ + public Builder setCity(EmptyParam city) { + this.city = city; + return this; + } - private Boolean requested; + /** + * Two-letter country code (ISO 3166-1 alpha-2). + */ + public Builder setCountry(String country) { + this.country = country; + return this; + } - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.Capabilities.MxBankTransferPayments - build() { - return new AccountUpdateParams.Configuration.Merchant.Capabilities - .MxBankTransferPayments(this.extraParams, this.requested); + /** + * Two-letter country code (ISO 3166-1 alpha-2). + */ + public Builder setCountry(EmptyParam country) { + this.country = country; + 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.MxBankTransferPayments#extraParams} - * for the field documentation. + * AccountUpdateParams.Configuration.Merchant.Support.Address#extraParams} for the field + * documentation. */ public Builder putExtraParam(String key, Object value) { if (this.extraParams == null) { @@ -7792,8 +20656,8 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.MxBankTransferPayments#extraParams} - * for the field documentation. + * AccountUpdateParams.Configuration.Merchant.Support.Address#extraParams} for the field + * documentation. */ public Builder putAllExtraParam(Map map) { if (this.extraParams == null) { @@ -7803,183 +20667,354 @@ public Builder putAllExtraParam(Map map) { return this; } - /** - * To request a new Capability for an account, pass true. There can be a delay before - * the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; - } - } + /** Address line 1 (e.g., street, PO Box, or company name). */ + public Builder setLine1(String line1) { + this.line1 = line1; + return this; + } + + /** Address line 1 (e.g., street, PO Box, or company name). */ + public Builder setLine1(EmptyParam line1) { + this.line1 = line1; + return this; + } + + /** Address line 2 (e.g., apartment, suite, unit, or building). */ + public Builder setLine2(String line2) { + this.line2 = line2; + return this; + } + + /** Address line 2 (e.g., apartment, suite, unit, or building). */ + public Builder setLine2(EmptyParam line2) { + this.line2 = line2; + return this; + } + + /** ZIP or postal code. */ + public Builder setPostalCode(String postalCode) { + this.postalCode = postalCode; + return this; + } + + /** ZIP or postal code. */ + public Builder setPostalCode(EmptyParam postalCode) { + this.postalCode = postalCode; + return this; + } + + /** State, county, province, or region. */ + public Builder setState(String state) { + this.state = state; + return this; + } + + /** State, county, province, or region. */ + public Builder setState(EmptyParam state) { + this.state = state; + return this; + } + + /** Town or district. */ + public Builder setTown(String town) { + this.town = town; + return this; + } + + /** Town or district. */ + public Builder setTown(EmptyParam town) { + this.town = town; + return this; + } + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Recipient { + /** + * Represents the state of the configuration, and can be updated to deactivate or re-apply a + * configuration. + */ + @SerializedName("applied") + Boolean applied; + + /** Capabilities to request on the Recipient Configuration. */ + @SerializedName("capabilities") + Capabilities capabilities; + + /** + * The payout method id to be used as a default outbound destination. This will allow the + * PayoutMethod to be omitted on OutboundPayments made through API or sending payouts via + * dashboard. Can also be explicitly set to {@code null} to clear the existing default + * outbound destination. For further details about creating an Outbound Destination, see Collect + * recipient's payment details. + */ + @SerializedName("default_outbound_destination") + Object defaultOutboundDestination; + + /** + * 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; + + private Recipient( + Boolean applied, + Capabilities capabilities, + Object defaultOutboundDestination, + Map extraParams) { + this.applied = applied; + this.capabilities = capabilities; + this.defaultOutboundDestination = defaultOutboundDestination; + this.extraParams = extraParams; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Boolean applied; + + private Capabilities capabilities; + + private Object defaultOutboundDestination; + + private Map extraParams; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Recipient build() { + return new AccountUpdateParams.Configuration.Recipient( + this.applied, this.capabilities, this.defaultOutboundDestination, this.extraParams); + } + + /** + * Represents the state of the configuration, and can be updated to deactivate or re-apply a + * configuration. + */ + public Builder setApplied(Boolean applied) { + this.applied = applied; + return this; + } + + /** Capabilities to request on the Recipient Configuration. */ + public Builder setCapabilities( + AccountUpdateParams.Configuration.Recipient.Capabilities capabilities) { + this.capabilities = capabilities; + return this; + } + + /** + * The payout method id to be used as a default outbound destination. This will allow the + * PayoutMethod to be omitted on OutboundPayments made through API or sending payouts via + * dashboard. Can also be explicitly set to {@code null} to clear the existing default + * outbound destination. For further details about creating an Outbound Destination, see Collect + * recipient's payment details. + */ + public Builder setDefaultOutboundDestination(String defaultOutboundDestination) { + this.defaultOutboundDestination = defaultOutboundDestination; + return this; + } + + /** + * The payout method id to be used as a default outbound destination. This will allow the + * PayoutMethod to be omitted on OutboundPayments made through API or sending payouts via + * dashboard. Can also be explicitly set to {@code null} to clear the existing default + * outbound destination. For further details about creating an Outbound Destination, see Collect + * recipient's payment details. + */ + public Builder setDefaultOutboundDestination(EmptyParam defaultOutboundDestination) { + this.defaultOutboundDestination = defaultOutboundDestination; + 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 AccountUpdateParams.Configuration.Recipient#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 AccountUpdateParams.Configuration.Recipient#extraParams} for the field + * documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Capabilities { + /** Capabilities that enable OutboundPayments to a bank account linked to this Account. */ + @SerializedName("bank_accounts") + BankAccounts bankAccounts; + + /** Capability that enable OutboundPayments to a debit card linked to this Account. */ + @SerializedName("cards") + Cards cards; + + /** Capabilities that enable OutboundPayments to a crypto wallet linked to this Account. */ + @SerializedName("crypto_wallets") + CryptoWallets cryptoWallets; + + /** + * 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; + + /** Capabilities that enable OutboundPayments via paper check. */ + @SerializedName("paper_checks") + PaperChecks paperChecks; + + /** Capabilities that enable the recipient to manage their Stripe Balance (/v1/balance). */ + @SerializedName("stripe_balance") + StripeBalance stripeBalance; + + private Capabilities( + BankAccounts bankAccounts, + Cards cards, + CryptoWallets cryptoWallets, + Map extraParams, + PaperChecks paperChecks, + StripeBalance stripeBalance) { + this.bankAccounts = bankAccounts; + this.cards = cards; + this.cryptoWallets = cryptoWallets; + this.extraParams = extraParams; + this.paperChecks = paperChecks; + this.stripeBalance = stripeBalance; } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class NaverPayPayments { - /** - * 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; + public static Builder builder() { + return new Builder(); + } - /** - * To request a new Capability for an account, pass true. There can be a delay before the - * requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + public static class Builder { + private BankAccounts bankAccounts; - private NaverPayPayments(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + private Cards cards; - public static Builder builder() { - return new Builder(); - } + private CryptoWallets cryptoWallets; - public static class Builder { - private Map extraParams; + private Map extraParams; - private Boolean requested; + private PaperChecks paperChecks; - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.Capabilities.NaverPayPayments - build() { - return new AccountUpdateParams.Configuration.Merchant.Capabilities.NaverPayPayments( - this.extraParams, this.requested); - } + private StripeBalance stripeBalance; - /** - * 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.NaverPayPayments#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; - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Recipient.Capabilities build() { + return new AccountUpdateParams.Configuration.Recipient.Capabilities( + this.bankAccounts, + this.cards, + this.cryptoWallets, + this.extraParams, + this.paperChecks, + this.stripeBalance); + } - /** - * 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.NaverPayPayments#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); - } - this.extraParams.putAll(map); - return this; - } + /** Capabilities that enable OutboundPayments to a bank account linked to this Account. */ + public Builder setBankAccounts( + AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts bankAccounts) { + this.bankAccounts = bankAccounts; + return this; + } - /** - * To request a new Capability for an account, pass true. There can be a delay before - * the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; - } + /** Capability that enable OutboundPayments to a debit card linked to this Account. */ + public Builder setCards( + AccountUpdateParams.Configuration.Recipient.Capabilities.Cards cards) { + this.cards = cards; + return this; } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class OxxoPayments { /** - * 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. + * Capabilities that enable OutboundPayments to a crypto wallet linked to this Account. */ - @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) - Map extraParams; + public Builder setCryptoWallets( + AccountUpdateParams.Configuration.Recipient.Capabilities.CryptoWallets + cryptoWallets) { + this.cryptoWallets = cryptoWallets; + return this; + } /** - * To request a new Capability for an account, pass true. There can be a delay before the - * requested Capability becomes active. + * 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 AccountUpdateParams.Configuration.Recipient.Capabilities#extraParams} + * for the field documentation. */ - @SerializedName("requested") - Boolean requested; - - private OxxoPayments(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } - - public static Builder builder() { - return new Builder(); - } - - public static class Builder { - private Map extraParams; - - private Boolean requested; - - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.Capabilities.OxxoPayments build() { - return new AccountUpdateParams.Configuration.Merchant.Capabilities.OxxoPayments( - this.extraParams, this.requested); + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); } + this.extraParams.put(key, value); + 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.OxxoPayments#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 AccountUpdateParams.Configuration.Recipient.Capabilities#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 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.OxxoPayments#extraParams} for - * the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); - } - this.extraParams.putAll(map); - return this; - } + /** Capabilities that enable OutboundPayments via paper check. */ + public Builder setPaperChecks( + AccountUpdateParams.Configuration.Recipient.Capabilities.PaperChecks paperChecks) { + this.paperChecks = paperChecks; + return this; + } - /** - * To request a new Capability for an account, pass true. There can be a delay before - * the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; - } + /** + * Capabilities that enable the recipient to manage their Stripe Balance (/v1/balance). + */ + public Builder setStripeBalance( + AccountUpdateParams.Configuration.Recipient.Capabilities.StripeBalance + stripeBalance) { + this.stripeBalance = stripeBalance; + return this; } } @Getter @EqualsAndHashCode(callSuper = false) - public static class P24Payments { + public static class BankAccounts { /** * 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. @@ -7991,15 +21026,36 @@ public static class P24Payments { Map extraParams; /** - * To request a new Capability for an account, pass true. There can be a delay before the - * requested Capability becomes active. + * Enables this Account to receive OutboundPayments to linked bank accounts over real time + * rails. */ - @SerializedName("requested") - Boolean requested; + @SerializedName("instant") + com.stripe.param.v2.core.AccountUpdateParams.Configuration.Recipient.Capabilities + .BankAccounts.Instant + instant; + + /** + * Enables this Account to receive OutboundPayments to linked bank accounts over local + * networks. + */ + @SerializedName("local") + Local local; + + /** Enables this Account to receive OutboundPayments to linked bank accounts over wire. */ + @SerializedName("wire") + Wire wire; - private P24Payments(Map extraParams, Boolean requested) { + private BankAccounts( + Map extraParams, + com.stripe.param.v2.core.AccountUpdateParams.Configuration.Recipient.Capabilities + .BankAccounts.Instant + instant, + Local local, + Wire wire) { this.extraParams = extraParams; - this.requested = requested; + this.instant = instant; + this.local = local; + this.wire = wire; } public static Builder builder() { @@ -8009,20 +21065,26 @@ public static Builder builder() { public static class Builder { private Map extraParams; - private Boolean requested; + private com.stripe.param.v2.core.AccountUpdateParams.Configuration.Recipient + .Capabilities.BankAccounts.Instant + instant; + + private Local local; + + private Wire wire; /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.Capabilities.P24Payments build() { - return new AccountUpdateParams.Configuration.Merchant.Capabilities.P24Payments( - this.extraParams, this.requested); + public AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts build() { + return new AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts( + this.extraParams, this.instant, this.local, this.wire); } /** * 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.P24Payments#extraParams} for - * the field documentation. + * AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts#extraParams} + * for the field documentation. */ public Builder putExtraParam(String key, Object value) { if (this.extraParams == null) { @@ -8036,8 +21098,8 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.P24Payments#extraParams} for - * the field documentation. + * AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts#extraParams} + * for the field documentation. */ public Builder putAllExtraParam(Map map) { if (this.extraParams == null) { @@ -8047,592 +21109,815 @@ public Builder putAllExtraParam(Map map) { return this; } + /** + * Enables this Account to receive OutboundPayments to linked bank accounts over real + * time rails. + */ + public Builder setInstant( + AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts.Instant + instant) { + this.instant = instant; + return this; + } + + /** + * Enables this Account to receive OutboundPayments to linked bank accounts over local + * networks. + */ + public Builder setLocal( + AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts.Local local) { + this.local = local; + return this; + } + + /** + * Enables this Account to receive OutboundPayments to linked bank accounts over wire. + */ + public Builder setWire( + AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts.Wire wire) { + this.wire = wire; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Instant { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + /** * To request a new Capability for an account, pass true. There can be a delay before * the requested Capability becomes active. */ - public Builder setRequested(Boolean requested) { + @SerializedName("requested") + Boolean requested; + + private Instant( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; this.requested = requested; - return this; } - } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class PayByBankPayments { - /** - * 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; + public static Builder builder() { + return new Builder(); + } - /** - * To request a new Capability for an account, pass true. There can be a delay before the - * requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + public static class Builder { + private Map extraParams; - private PayByBankPayments(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + private Protections protections; - public static Builder builder() { - return new Builder(); - } + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts.Instant + build() { + return new AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts + .Instant(this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts.Instant#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 + * AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts.Instant#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts.Instant + .Protections + protections) { + this.protections = protections; + return this; + } + + /** + * To request a new Capability for an account, pass true. There can be a delay before + * the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts.Instant + .Protections + build() { + return new AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts + .Instant.Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts.Instant.Protections#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 + * AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts.Instant.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts.Instant + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; - public static class Builder { - private Map extraParams; + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts + .Instant.Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts + .Instant.Protections.PspMigration(this.extraParams, this.requested); + } - private Boolean requested; + /** + * 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 + * AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts.Instant.Protections.PspMigration#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; + } - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.Capabilities.PayByBankPayments - build() { - return new AccountUpdateParams.Configuration.Merchant.Capabilities.PayByBankPayments( - this.extraParams, this.requested); - } + /** + * 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 + * AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts.Instant.Protections.PspMigration#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 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.PayByBankPayments#extraParams} - * for the field documentation. - */ - public Builder putExtraParam(String key, Object value) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** Required. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } } - this.extraParams.put(key, value); - return this; } + } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Local { /** - * 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.PayByBankPayments#extraParams} - * for the field documentation. + * 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. */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); - } - this.extraParams.putAll(map); - return this; - } + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; /** * To request a new Capability for an account, pass true. There can be a delay before * the requested Capability becomes active. */ - public Builder setRequested(Boolean requested) { + @SerializedName("requested") + Boolean requested; + + private Local( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; this.requested = requested; - return this; } - } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class PaycoPayments { - /** - * 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; + public static Builder builder() { + return new Builder(); + } - /** - * To request a new Capability for an account, pass true. There can be a delay before the - * requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + public static class Builder { + private Map extraParams; - private PaycoPayments(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + private Protections protections; - public static Builder builder() { - return new Builder(); - } + private Boolean requested; - public static class Builder { - private Map extraParams; + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts.Local + build() { + return new AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts + .Local(this.extraParams, this.protections, this.requested); + } - private Boolean requested; + /** + * 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 + * AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts.Local#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; + } - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.Capabilities.PaycoPayments build() { - return new AccountUpdateParams.Configuration.Merchant.Capabilities.PaycoPayments( - this.extraParams, this.requested); - } + /** + * 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 + * AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts.Local#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 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.PaycoPayments#extraParams} - * for the field documentation. - */ - public Builder putExtraParam(String key, Object value) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts.Local + .Protections + protections) { + this.protections = protections; + return this; } - 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.PaycoPayments#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** + * To request a new Capability for an account, pass true. There can be a delay before + * the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; } - this.extraParams.putAll(map); - return this; } - /** - * To request a new Capability for an account, pass true. There can be a delay before - * the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; - } - } - } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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; - @Getter - @EqualsAndHashCode(callSuper = false) - public static class PaynowPayments { - /** - * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - /** - * To request a new Capability for an account, pass true. There can be a delay before the - * requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - private PaynowPayments(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + public static Builder builder() { + return new Builder(); + } - public static Builder builder() { - return new Builder(); - } + public static class Builder { + private Map extraParams; - public static class Builder { - private Map extraParams; + private PspMigration pspMigration; - private Boolean requested; + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts.Local + .Protections + build() { + return new AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts + .Local.Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts.Local.Protections#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; + } - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.Capabilities.PaynowPayments build() { - return new AccountUpdateParams.Configuration.Merchant.Capabilities.PaynowPayments( - this.extraParams, this.requested); - } + /** + * 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 + * AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts.Local.Protections#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 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.PaynowPayments#extraParams} - * for the field documentation. - */ - public Builder putExtraParam(String key, Object value) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts.Local + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } } - 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.PaynowPayments#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); - } - this.extraParams.putAll(map); - return this; - } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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; - /** - * To request a new Capability for an account, pass true. There can be a delay before - * the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; - } - } - } + /** Required. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; - @Getter - @EqualsAndHashCode(callSuper = false) - public static class PromptpayPayments { - /** - * 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; + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } - /** - * To request a new Capability for an account, pass true. There can be a delay before the - * requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + public static Builder builder() { + return new Builder(); + } - private PromptpayPayments(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + public static class Builder { + private Map extraParams; - public static Builder builder() { - return new Builder(); - } + private Boolean requested; - public static class Builder { - private Map extraParams; + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts.Local + .Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts + .Local.Protections.PspMigration(this.extraParams, this.requested); + } - private Boolean requested; + /** + * 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 + * AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts.Local.Protections.PspMigration#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; + } - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.Capabilities.PromptpayPayments - build() { - return new AccountUpdateParams.Configuration.Merchant.Capabilities.PromptpayPayments( - this.extraParams, this.requested); - } + /** + * 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 + * AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts.Local.Protections.PspMigration#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 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.PromptpayPayments#extraParams} - * for the field documentation. - */ - public Builder putExtraParam(String key, Object value) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** Required. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } } - this.extraParams.put(key, value); - return this; } + } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Wire { /** - * 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.PromptpayPayments#extraParams} - * for the field documentation. + * 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. */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); - } - this.extraParams.putAll(map); - return this; - } + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; /** * To request a new Capability for an account, pass true. There can be a delay before * the requested Capability becomes active. */ - public Builder setRequested(Boolean requested) { + @SerializedName("requested") + Boolean requested; + + private Wire( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; this.requested = requested; - return this; } - } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class RevolutPayPayments { - /** - * 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; + public static Builder builder() { + return new Builder(); + } - /** - * To request a new Capability for an account, pass true. There can be a delay before the - * requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + public static class Builder { + private Map extraParams; - private RevolutPayPayments(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + private Protections protections; - public static Builder builder() { - return new Builder(); - } + private Boolean requested; - public static class Builder { - private Map extraParams; + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts.Wire + build() { + return new AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts + .Wire(this.extraParams, this.protections, this.requested); + } - private Boolean requested; + /** + * 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 + * AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts.Wire#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; + } - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.Capabilities.RevolutPayPayments - build() { - return new AccountUpdateParams.Configuration.Merchant.Capabilities.RevolutPayPayments( - this.extraParams, this.requested); - } + /** + * 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 + * AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts.Wire#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 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.RevolutPayPayments#extraParams} - * for the field documentation. - */ - public Builder putExtraParam(String key, Object value) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts.Wire + .Protections + protections) { + this.protections = protections; + return this; } - 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.RevolutPayPayments#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** + * To request a new Capability for an account, pass true. There can be a delay before + * the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; } - this.extraParams.putAll(map); - return this; } - /** - * To request a new Capability for an account, pass true. There can be a delay before - * the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; - } - } - } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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; - @Getter - @EqualsAndHashCode(callSuper = false) - public static class SamsungPayPayments { - /** - * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - /** - * To request a new Capability for an account, pass true. There can be a delay before the - * requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - private SamsungPayPayments(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + public static Builder builder() { + return new Builder(); + } - public static Builder builder() { - return new Builder(); - } + public static class Builder { + private Map extraParams; - public static class Builder { - private Map extraParams; + private PspMigration pspMigration; - private Boolean requested; + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts.Wire + .Protections + build() { + return new AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts + .Wire.Protections(this.extraParams, this.pspMigration); + } - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.Capabilities.SamsungPayPayments - build() { - return new AccountUpdateParams.Configuration.Merchant.Capabilities.SamsungPayPayments( - this.extraParams, this.requested); - } + /** + * 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 + * AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts.Wire.Protections#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 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.SamsungPayPayments#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 + * AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts.Wire.Protections#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 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.SamsungPayPayments#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts.Wire + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } } - this.extraParams.putAll(map); - return this; - } - /** - * To request a new Capability for an account, pass true. There can be a delay before - * the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; - } - } - } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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; - @Getter - @EqualsAndHashCode(callSuper = false) - public static class SepaBankTransferPayments { - /** - * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; - /** - * To request a new Capability for an account, pass true. There can be a delay before the - * requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } - private SepaBankTransferPayments(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + public static Builder builder() { + return new Builder(); + } - public static Builder builder() { - return new Builder(); - } + public static class Builder { + private Map extraParams; - public static class Builder { - private Map extraParams; + private Boolean requested; - private Boolean requested; + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts.Wire + .Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts + .Wire.Protections.PspMigration(this.extraParams, this.requested); + } - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.Capabilities.SepaBankTransferPayments - build() { - return new AccountUpdateParams.Configuration.Merchant.Capabilities - .SepaBankTransferPayments(this.extraParams, this.requested); - } + /** + * 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 + * AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts.Wire.Protections.PspMigration#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 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.SepaBankTransferPayments#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 + * AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts.Wire.Protections.PspMigration#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 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.SepaBankTransferPayments#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** Required. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } } - this.extraParams.putAll(map); - return this; - } - - /** - * To request a new Capability for an account, pass true. There can be a delay before - * the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; } } } @Getter @EqualsAndHashCode(callSuper = false) - public static class SepaDebitPayments { + public static class Cards { /** * 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. @@ -8643,6 +21928,10 @@ public static class SepaDebitPayments { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + /** * To request a new Capability for an account, pass true. There can be a delay before the * requested Capability becomes active. @@ -8650,8 +21939,10 @@ public static class SepaDebitPayments { @SerializedName("requested") Boolean requested; - private SepaDebitPayments(Map extraParams, Boolean requested) { + private Cards( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -8662,21 +21953,22 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.Capabilities.SepaDebitPayments - build() { - return new AccountUpdateParams.Configuration.Merchant.Capabilities.SepaDebitPayments( - this.extraParams, this.requested); + public AccountUpdateParams.Configuration.Recipient.Capabilities.Cards build() { + return new AccountUpdateParams.Configuration.Recipient.Capabilities.Cards( + this.extraParams, this.protections, this.requested); } /** * 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.SepaDebitPayments#extraParams} - * for the field documentation. + * AccountUpdateParams.Configuration.Recipient.Capabilities.Cards#extraParams} for the + * field documentation. */ public Builder putExtraParam(String key, Object value) { if (this.extraParams == null) { @@ -8690,8 +21982,8 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.SepaDebitPayments#extraParams} - * for the field documentation. + * AccountUpdateParams.Configuration.Recipient.Capabilities.Cards#extraParams} for the + * field documentation. */ public Builder putAllExtraParam(Map map) { if (this.extraParams == null) { @@ -8701,6 +21993,14 @@ public Builder putAllExtraParam(Map map) { return this; } + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountUpdateParams.Configuration.Recipient.Capabilities.Cards.Protections + protections) { + this.protections = protections; + return this; + } + /** * To request a new Capability for an account, pass true. There can be a delay before * the requested Capability becomes active. @@ -8710,173 +22010,167 @@ public Builder setRequested(Boolean requested) { return this; } } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class SwishPayments { - /** - * 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; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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; - /** - * To request a new Capability for an account, pass true. There can be a delay before the - * requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + /** Required. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - private SwishPayments(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - public static Builder builder() { - return new Builder(); - } + public static Builder builder() { + return new Builder(); + } - public static class Builder { - private Map extraParams; + public static class Builder { + private Map extraParams; - private Boolean requested; + private PspMigration pspMigration; - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.Capabilities.SwishPayments build() { - return new AccountUpdateParams.Configuration.Merchant.Capabilities.SwishPayments( - this.extraParams, this.requested); - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Recipient.Capabilities.Cards.Protections + build() { + return new AccountUpdateParams.Configuration.Recipient.Capabilities.Cards + .Protections(this.extraParams, this.pspMigration); + } - /** - * 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.SwishPayments#extraParams} - * for the field documentation. - */ - public Builder putExtraParam(String key, Object value) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** + * 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 + * AccountUpdateParams.Configuration.Recipient.Capabilities.Cards.Protections#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; } - 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.SwishPayments#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** + * 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 + * AccountUpdateParams.Configuration.Recipient.Capabilities.Cards.Protections#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; } - this.extraParams.putAll(map); - return this; - } - /** - * To request a new Capability for an account, pass true. There can be a delay before - * the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Recipient.Capabilities.Cards.Protections + .PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } } - } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class TwintPayments { - /** - * 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; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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; - /** - * To request a new Capability for an account, pass true. There can be a delay before the - * requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + /** Required. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; - private TwintPayments(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } - public static Builder builder() { - return new Builder(); - } + public static Builder builder() { + return new Builder(); + } - public static class Builder { - private Map extraParams; + public static class Builder { + private Map extraParams; - private Boolean requested; + private Boolean requested; - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.Capabilities.TwintPayments build() { - return new AccountUpdateParams.Configuration.Merchant.Capabilities.TwintPayments( - this.extraParams, this.requested); - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Recipient.Capabilities.Cards.Protections + .PspMigration + build() { + return new AccountUpdateParams.Configuration.Recipient.Capabilities.Cards + .Protections.PspMigration(this.extraParams, this.requested); + } - /** - * 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.TwintPayments#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 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 + * AccountUpdateParams.Configuration.Recipient.Capabilities.Cards.Protections.PspMigration#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 + * AccountUpdateParams.Configuration.Recipient.Capabilities.Cards.Protections.PspMigration#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 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.TwintPayments#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** Required. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } } - this.extraParams.putAll(map); - return this; - } - - /** - * To request a new Capability for an account, pass true. There can be a delay before - * the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; } } } @Getter @EqualsAndHashCode(callSuper = false) - public static class UsBankTransferPayments { + public static class CryptoWallets { /** * 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. @@ -8887,6 +22181,10 @@ public static class UsBankTransferPayments { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + /** * To request a new Capability for an account, pass true. There can be a delay before the * requested Capability becomes active. @@ -8894,8 +22192,10 @@ public static class UsBankTransferPayments { @SerializedName("requested") Boolean requested; - private UsBankTransferPayments(Map extraParams, Boolean requested) { + private CryptoWallets( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -8906,20 +22206,21 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.Capabilities.UsBankTransferPayments - build() { - return new AccountUpdateParams.Configuration.Merchant.Capabilities - .UsBankTransferPayments(this.extraParams, this.requested); + public AccountUpdateParams.Configuration.Recipient.Capabilities.CryptoWallets build() { + return new AccountUpdateParams.Configuration.Recipient.Capabilities.CryptoWallets( + this.extraParams, this.protections, this.requested); } /** * 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.UsBankTransferPayments#extraParams} + * AccountUpdateParams.Configuration.Recipient.Capabilities.CryptoWallets#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -8934,7 +22235,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.UsBankTransferPayments#extraParams} + * AccountUpdateParams.Configuration.Recipient.Capabilities.CryptoWallets#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -8945,6 +22246,14 @@ public Builder putAllExtraParam(Map map) { return this; } + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountUpdateParams.Configuration.Recipient.Capabilities.CryptoWallets.Protections + protections) { + this.protections = protections; + return this; + } + /** * To request a new Capability for an account, pass true. There can be a delay before * the requested Capability becomes active. @@ -8954,187 +22263,168 @@ public Builder setRequested(Boolean requested) { return this; } } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class ZipPayments { - /** - * 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; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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; - /** - * To request a new Capability for an account, pass true. There can be a delay before the - * requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + /** Required. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - private ZipPayments(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - public static Builder builder() { - return new Builder(); - } + public static Builder builder() { + return new Builder(); + } - public static class Builder { - private Map extraParams; + public static class Builder { + private Map extraParams; - private Boolean requested; + private PspMigration pspMigration; - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.Capabilities.ZipPayments build() { - return new AccountUpdateParams.Configuration.Merchant.Capabilities.ZipPayments( - this.extraParams, this.requested); - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Recipient.Capabilities.CryptoWallets + .Protections + build() { + return new AccountUpdateParams.Configuration.Recipient.Capabilities.CryptoWallets + .Protections(this.extraParams, this.pspMigration); + } - /** - * 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.ZipPayments#extraParams} for - * the field documentation. - */ - public Builder putExtraParam(String key, Object value) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** + * 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 + * AccountUpdateParams.Configuration.Recipient.Capabilities.CryptoWallets.Protections#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; } - 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 - * AccountUpdateParams.Configuration.Merchant.Capabilities.ZipPayments#extraParams} for - * the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** + * 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 + * AccountUpdateParams.Configuration.Recipient.Capabilities.CryptoWallets.Protections#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; } - this.extraParams.putAll(map); - return this; - } - /** - * To request a new Capability for an account, pass true. There can be a delay before - * the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Recipient.Capabilities.CryptoWallets.Protections + .PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } } - } - } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class CardPayments { - /** - * Automatically declines certain charge types regardless of whether the card issuer - * accepted or declined the charge. - */ - @SerializedName("decline_on") - DeclineOn declineOn; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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; - /** - * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; - private CardPayments(DeclineOn declineOn, Map extraParams) { - this.declineOn = declineOn; - this.extraParams = extraParams; - } + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } - public static Builder builder() { - return new Builder(); - } + public static Builder builder() { + return new Builder(); + } - public static class Builder { - private DeclineOn declineOn; + public static class Builder { + private Map extraParams; - private Map extraParams; + private Boolean requested; - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.CardPayments build() { - return new AccountUpdateParams.Configuration.Merchant.CardPayments( - this.declineOn, this.extraParams); - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Recipient.Capabilities.CryptoWallets + .Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Recipient.Capabilities.CryptoWallets + .Protections.PspMigration(this.extraParams, this.requested); + } - /** - * Automatically declines certain charge types regardless of whether the card issuer - * accepted or declined the charge. - */ - public Builder setDeclineOn( - AccountUpdateParams.Configuration.Merchant.CardPayments.DeclineOn declineOn) { - this.declineOn = declineOn; - 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 + * AccountUpdateParams.Configuration.Recipient.Capabilities.CryptoWallets.Protections.PspMigration#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 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 AccountUpdateParams.Configuration.Merchant.CardPayments#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 + * AccountUpdateParams.Configuration.Recipient.Capabilities.CryptoWallets.Protections.PspMigration#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 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 AccountUpdateParams.Configuration.Merchant.CardPayments#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** Required. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } } - this.extraParams.putAll(map); - return this; } } @Getter @EqualsAndHashCode(callSuper = false) - public static class DeclineOn { - /** - * Whether Stripe automatically declines charges with an incorrect ZIP or postal code. - * This setting only applies when a ZIP or postal code is provided and they fail bank - * verification. - */ - @SerializedName("avs_failure") - Boolean avsFailure; - - /** - * Whether Stripe automatically declines charges with an incorrect CVC. This setting only - * applies when a CVC is provided and it fails bank verification. - */ - @SerializedName("cvc_failure") - Boolean cvcFailure; - + public static class PaperChecks { /** * 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. @@ -9145,11 +22435,22 @@ public static class DeclineOn { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - private DeclineOn( - Boolean avsFailure, Boolean cvcFailure, Map extraParams) { - this.avsFailure = avsFailure; - this.cvcFailure = cvcFailure; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * To request a new Capability for an account, pass true. There can be a delay before the + * requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private PaperChecks( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; } public static Builder builder() { @@ -9157,42 +22458,23 @@ public static Builder builder() { } public static class Builder { - private Boolean avsFailure; - - private Boolean cvcFailure; - private Map extraParams; - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.CardPayments.DeclineOn build() { - return new AccountUpdateParams.Configuration.Merchant.CardPayments.DeclineOn( - this.avsFailure, this.cvcFailure, this.extraParams); - } + private Protections protections; - /** - * Whether Stripe automatically declines charges with an incorrect ZIP or postal code. - * This setting only applies when a ZIP or postal code is provided and they fail bank - * verification. - */ - public Builder setAvsFailure(Boolean avsFailure) { - this.avsFailure = avsFailure; - return this; - } + private Boolean requested; - /** - * Whether Stripe automatically declines charges with an incorrect CVC. This setting - * only applies when a CVC is provided and it fails bank verification. - */ - public Builder setCvcFailure(Boolean cvcFailure) { - this.cvcFailure = cvcFailure; - return this; + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Recipient.Capabilities.PaperChecks build() { + return new AccountUpdateParams.Configuration.Recipient.Capabilities.PaperChecks( + this.extraParams, this.protections, this.requested); } /** * 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 - * AccountUpdateParams.Configuration.Merchant.CardPayments.DeclineOn#extraParams} for + * AccountUpdateParams.Configuration.Recipient.Capabilities.PaperChecks#extraParams} for * the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -9207,7 +22489,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountUpdateParams.Configuration.Merchant.CardPayments.DeclineOn#extraParams} for + * AccountUpdateParams.Configuration.Recipient.Capabilities.PaperChecks#extraParams} for * the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -9217,90 +22499,186 @@ public Builder putAllExtraParam(Map map) { this.extraParams.putAll(map); return this; } + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + public Builder setProtections( + AccountUpdateParams.Configuration.Recipient.Capabilities.PaperChecks.Protections + protections) { + this.protections = protections; + return this; + } + + /** + * To request a new Capability for an account, pass true. There can be a delay before + * the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } } - } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class KonbiniPayments { - /** - * 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; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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; - /** Support for Konbini payments. */ - @SerializedName("support") - Support support; + /** Required. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - private KonbiniPayments(Map extraParams, Support support) { - this.extraParams = extraParams; - this.support = support; - } + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - public static Builder builder() { - return new Builder(); - } + public static Builder builder() { + return new Builder(); + } - public static class Builder { - private Map extraParams; + public static class Builder { + private Map extraParams; - private Support support; + private PspMigration pspMigration; - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.KonbiniPayments build() { - return new AccountUpdateParams.Configuration.Merchant.KonbiniPayments( - this.extraParams, this.support); - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Recipient.Capabilities.PaperChecks + .Protections + build() { + return new AccountUpdateParams.Configuration.Recipient.Capabilities.PaperChecks + .Protections(this.extraParams, this.pspMigration); + } - /** - * 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 AccountUpdateParams.Configuration.Merchant.KonbiniPayments#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 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 + * AccountUpdateParams.Configuration.Recipient.Capabilities.PaperChecks.Protections#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 AccountUpdateParams.Configuration.Merchant.KonbiniPayments#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** + * 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 + * AccountUpdateParams.Configuration.Recipient.Capabilities.PaperChecks.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Recipient.Capabilities.PaperChecks.Protections + .PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } } - this.extraParams.putAll(map); - return this; - } - /** Support for Konbini payments. */ - public Builder setSupport( - AccountUpdateParams.Configuration.Merchant.KonbiniPayments.Support support) { - this.support = support; - return this; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Recipient.Capabilities.PaperChecks + .Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Recipient.Capabilities.PaperChecks + .Protections.PspMigration(this.extraParams, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Recipient.Capabilities.PaperChecks.Protections.PspMigration#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 + * AccountUpdateParams.Configuration.Recipient.Capabilities.PaperChecks.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } } } @Getter @EqualsAndHashCode(callSuper = false) - public static class Support { - /** Support email address for Konbini payments. */ - @SerializedName("email") - Object email; - + public static class StripeBalance { /** * 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. @@ -9311,20 +22689,15 @@ public static class Support { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** Support hours for Konbini payments. */ - @SerializedName("hours") - Hours hours; - - /** Support phone number for Konbini payments. */ - @SerializedName("phone") - Object phone; + /** + * Enables this Account to receive /v1/transfers into their Stripe Balance (/v1/balance). + */ + @SerializedName("stripe_transfers") + StripeTransfers stripeTransfers; - private Support( - Object email, Map extraParams, Hours hours, Object phone) { - this.email = email; + private StripeBalance(Map extraParams, StripeTransfers stripeTransfers) { this.extraParams = extraParams; - this.hours = hours; - this.phone = phone; + this.stripeTransfers = stripeTransfers; } public static Builder builder() { @@ -9332,38 +22705,22 @@ public static Builder builder() { } public static class Builder { - private Object email; - private Map extraParams; - private Hours hours; - - private Object phone; + private StripeTransfers stripeTransfers; /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.KonbiniPayments.Support build() { - return new AccountUpdateParams.Configuration.Merchant.KonbiniPayments.Support( - this.email, this.extraParams, this.hours, this.phone); - } - - /** Support email address for Konbini payments. */ - public Builder setEmail(String email) { - this.email = email; - return this; - } - - /** Support email address for Konbini payments. */ - public Builder setEmail(EmptyParam email) { - this.email = email; - return this; + public AccountUpdateParams.Configuration.Recipient.Capabilities.StripeBalance build() { + return new AccountUpdateParams.Configuration.Recipient.Capabilities.StripeBalance( + this.extraParams, this.stripeTransfers); } /** * 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 - * AccountUpdateParams.Configuration.Merchant.KonbiniPayments.Support#extraParams} for - * the field documentation. + * AccountUpdateParams.Configuration.Recipient.Capabilities.StripeBalance#extraParams} + * for the field documentation. */ public Builder putExtraParam(String key, Object value) { if (this.extraParams == null) { @@ -9377,8 +22734,8 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountUpdateParams.Configuration.Merchant.KonbiniPayments.Support#extraParams} for - * the field documentation. + * AccountUpdateParams.Configuration.Recipient.Capabilities.StripeBalance#extraParams} + * for the field documentation. */ public Builder putAllExtraParam(Map map) { if (this.extraParams == null) { @@ -9388,33 +22745,22 @@ public Builder putAllExtraParam(Map map) { return this; } - /** Support hours for Konbini payments. */ - public Builder setHours( - AccountUpdateParams.Configuration.Merchant.KonbiniPayments.Support.Hours hours) { - this.hours = hours; - return this; - } - - /** Support phone number for Konbini payments. */ - public Builder setPhone(String phone) { - this.phone = phone; - return this; - } - - /** Support phone number for Konbini payments. */ - public Builder setPhone(EmptyParam phone) { - this.phone = phone; + /** + * Enables this Account to receive /v1/transfers into their Stripe Balance + * (/v1/balance). + */ + public Builder setStripeTransfers( + AccountUpdateParams.Configuration.Recipient.Capabilities.StripeBalance + .StripeTransfers + stripeTransfers) { + this.stripeTransfers = stripeTransfers; return this; } } @Getter @EqualsAndHashCode(callSuper = false) - public static class Hours { - /** Support hours end time (JST time of day) for in {@code HH:MM} format. */ - @SerializedName("end_time") - Object endTime; - + public static class StripeTransfers { /** * 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} @@ -9425,14 +22771,22 @@ public static class Hours { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** Support hours start time (JST time of day) for in {@code HH:MM} format. */ - @SerializedName("start_time") - Object startTime; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; - private Hours(Object endTime, Map extraParams, Object startTime) { - this.endTime = endTime; + /** + * To request a new Capability for an account, pass true. There can be a delay before + * the requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private StripeTransfers( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; - this.startTime = startTime; + this.protections = protections; + this.requested = requested; } public static Builder builder() { @@ -9440,36 +22794,25 @@ public static Builder builder() { } public static class Builder { - private Object endTime; - private Map extraParams; - private Object startTime; + private Protections protections; + + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.KonbiniPayments.Support.Hours + public AccountUpdateParams.Configuration.Recipient.Capabilities.StripeBalance + .StripeTransfers build() { - return new AccountUpdateParams.Configuration.Merchant.KonbiniPayments.Support.Hours( - this.endTime, this.extraParams, this.startTime); - } - - /** Support hours end time (JST time of day) for in {@code HH:MM} format. */ - public Builder setEndTime(String endTime) { - this.endTime = endTime; - return this; - } - - /** Support hours end time (JST time of day) for in {@code HH:MM} format. */ - public Builder setEndTime(EmptyParam endTime) { - this.endTime = endTime; - return this; + return new AccountUpdateParams.Configuration.Recipient.Capabilities.StripeBalance + .StripeTransfers(this.extraParams, this.protections, this.requested); } /** * 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 - * AccountUpdateParams.Configuration.Merchant.KonbiniPayments.Support.Hours#extraParams} + * AccountUpdateParams.Configuration.Recipient.Capabilities.StripeBalance.StripeTransfers#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -9484,7 +22827,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountUpdateParams.Configuration.Merchant.KonbiniPayments.Support.Hours#extraParams} + * AccountUpdateParams.Configuration.Recipient.Capabilities.StripeBalance.StripeTransfers#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -9495,430 +22838,492 @@ public Builder putAllExtraParam(Map map) { return this; } - /** Support hours start time (JST time of day) for in {@code HH:MM} format. */ - public Builder setStartTime(String startTime) { - this.startTime = startTime; - return this; - } + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountUpdateParams.Configuration.Recipient.Capabilities.StripeBalance + .StripeTransfers.Protections + protections) { + this.protections = protections; + return this; + } + + /** + * To request a new Capability for an account, pass true. There can be a delay before + * the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Recipient.Capabilities.StripeBalance + .StripeTransfers.Protections + build() { + return new AccountUpdateParams.Configuration.Recipient.Capabilities.StripeBalance + .StripeTransfers.Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Recipient.Capabilities.StripeBalance.StripeTransfers.Protections#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 + * AccountUpdateParams.Configuration.Recipient.Capabilities.StripeBalance.StripeTransfers.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Recipient.Capabilities.StripeBalance + .StripeTransfers.Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Recipient.Capabilities.StripeBalance + .StripeTransfers.Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Recipient.Capabilities + .StripeBalance.StripeTransfers.Protections.PspMigration( + this.extraParams, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Recipient.Capabilities.StripeBalance.StripeTransfers.Protections.PspMigration#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 + * AccountUpdateParams.Configuration.Recipient.Capabilities.StripeBalance.StripeTransfers.Protections.PspMigration#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - /** Support hours start time (JST time of day) for in {@code HH:MM} format. */ - public Builder setStartTime(EmptyParam startTime) { - this.startTime = startTime; - return this; + /** Required. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } } } } } } + } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class ScriptStatementDescriptor { - /** - * 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; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Storer { + /** + * Represents the state of the configuration, and can be updated to deactivate or re-apply a + * configuration. + */ + @SerializedName("applied") + Boolean applied; - /** - * The Kana variation of statement_descriptor used for charges in Japan. Japanese statement - * descriptors have special - * requirements. - */ - @SerializedName("kana") - Kana kana; + /** Capabilities to request on the Storer Configuration. */ + @SerializedName("capabilities") + Capabilities capabilities; - /** - * The Kanji variation of statement_descriptor used for charges in Japan. Japanese statement - * descriptors have special - * requirements. - */ - @SerializedName("kanji") - Kanji kanji; + /** + * 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; - private ScriptStatementDescriptor(Map extraParams, Kana kana, Kanji kanji) { - this.extraParams = extraParams; - this.kana = kana; - this.kanji = kanji; - } + /** List of high-risk activities the business is involved in. */ + @SerializedName("high_risk_activities") + List highRiskActivities; - public static Builder builder() { - return new Builder(); - } + /** Description of the high-risk activities the business offers. */ + @SerializedName("high_risk_activities_description") + Object highRiskActivitiesDescription; - public static class Builder { - private Map extraParams; + /** Description of the money services offered by the business. */ + @SerializedName("money_services_description") + Object moneyServicesDescription; - private Kana kana; + /** Does the business operate in any prohibited countries. */ + @SerializedName("operates_in_prohibited_countries") + Boolean operatesInProhibitedCountries; - private Kanji kanji; + /** Indicates whether the business participates in any regulated activity. */ + @SerializedName("participates_in_regulated_activity") + Boolean participatesInRegulatedActivity; - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.ScriptStatementDescriptor build() { - return new AccountUpdateParams.Configuration.Merchant.ScriptStatementDescriptor( - this.extraParams, this.kana, this.kanji); - } + /** Primary purpose of the stored funds. */ + @SerializedName("purpose_of_funds") + PurposeOfFunds purposeOfFunds; - /** - * 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 - * AccountUpdateParams.Configuration.Merchant.ScriptStatementDescriptor#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; - } + /** Description of the purpose of the stored funds. */ + @SerializedName("purpose_of_funds_description") + Object purposeOfFundsDescription; - /** - * 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 - * AccountUpdateParams.Configuration.Merchant.ScriptStatementDescriptor#extraParams} for - * the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); - } - this.extraParams.putAll(map); - return this; - } + /** Details of the regulated activity if the business participates in one. */ + @SerializedName("regulated_activity") + RegulatedActivity regulatedActivity; - /** - * The Kana variation of statement_descriptor used for charges in Japan. Japanese - * statement descriptors have special - * requirements. - */ - public Builder setKana( - AccountUpdateParams.Configuration.Merchant.ScriptStatementDescriptor.Kana kana) { - this.kana = kana; - return this; - } + /** The source of funds for the business, e.g. profits, income, venture capital, etc. */ + @SerializedName("source_of_funds") + SourceOfFunds sourceOfFunds; - /** - * The Kanji variation of statement_descriptor used for charges in Japan. Japanese - * statement descriptors have special - * requirements. - */ - public Builder setKanji( - AccountUpdateParams.Configuration.Merchant.ScriptStatementDescriptor.Kanji kanji) { - this.kanji = kanji; - return this; - } - } + /** Description of the source of funds for the business' account. */ + @SerializedName("source_of_funds_description") + Object sourceOfFundsDescription; - @Getter - @EqualsAndHashCode(callSuper = false) - public static class Kana { - /** - * The default text that appears on statements for non-card charges outside of Japan. For - * card charges, if you don’t set a statement_descriptor_prefix, this text is also used as - * the statement descriptor prefix. In that case, if concatenating the statement - * descriptor suffix causes the combined statement descriptor to exceed 22 characters, we - * truncate the statement_descriptor text to limit the full descriptor to 22 characters. - * For more information about statement descriptors and their requirements, see the - * Merchant Configuration settings documentation. - */ - @SerializedName("descriptor") - Object descriptor; + private Storer( + Boolean applied, + Capabilities capabilities, + Map extraParams, + List highRiskActivities, + Object highRiskActivitiesDescription, + Object moneyServicesDescription, + Boolean operatesInProhibitedCountries, + Boolean participatesInRegulatedActivity, + PurposeOfFunds purposeOfFunds, + Object purposeOfFundsDescription, + RegulatedActivity regulatedActivity, + SourceOfFunds sourceOfFunds, + Object sourceOfFundsDescription) { + this.applied = applied; + this.capabilities = capabilities; + this.extraParams = extraParams; + this.highRiskActivities = highRiskActivities; + this.highRiskActivitiesDescription = highRiskActivitiesDescription; + this.moneyServicesDescription = moneyServicesDescription; + this.operatesInProhibitedCountries = operatesInProhibitedCountries; + this.participatesInRegulatedActivity = participatesInRegulatedActivity; + this.purposeOfFunds = purposeOfFunds; + this.purposeOfFundsDescription = purposeOfFundsDescription; + this.regulatedActivity = regulatedActivity; + this.sourceOfFunds = sourceOfFunds; + this.sourceOfFundsDescription = sourceOfFundsDescription; + } - /** - * 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; + public static Builder builder() { + return new Builder(); + } - /** - * Default text that appears on statements for card charges outside of Japan, prefixing - * any dynamic statement_descriptor_suffix specified on the charge. To maximize space for - * the dynamic part of the descriptor, keep this text short. If you don’t specify this - * value, statement_descriptor is used as the prefix. For more information about statement - * descriptors and their requirements, see the Merchant Configuration settings - * documentation. - */ - @SerializedName("prefix") - Object prefix; + public static class Builder { + private Boolean applied; - private Kana(Object descriptor, Map extraParams, Object prefix) { - this.descriptor = descriptor; - this.extraParams = extraParams; - this.prefix = prefix; - } + private Capabilities capabilities; - public static Builder builder() { - return new Builder(); - } + private Map extraParams; - public static class Builder { - private Object descriptor; + private List highRiskActivities; - private Map extraParams; + private Object highRiskActivitiesDescription; - private Object prefix; + private Object moneyServicesDescription; - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.ScriptStatementDescriptor.Kana - build() { - return new AccountUpdateParams.Configuration.Merchant.ScriptStatementDescriptor.Kana( - this.descriptor, this.extraParams, this.prefix); - } + private Boolean operatesInProhibitedCountries; - /** - * The default text that appears on statements for non-card charges outside of Japan. - * For card charges, if you don’t set a statement_descriptor_prefix, this text is also - * used as the statement descriptor prefix. In that case, if concatenating the statement - * descriptor suffix causes the combined statement descriptor to exceed 22 characters, - * we truncate the statement_descriptor text to limit the full descriptor to 22 - * characters. For more information about statement descriptors and their requirements, - * see the Merchant Configuration settings documentation. - */ - public Builder setDescriptor(String descriptor) { - this.descriptor = descriptor; - return this; - } + private Boolean participatesInRegulatedActivity; - /** - * The default text that appears on statements for non-card charges outside of Japan. - * For card charges, if you don’t set a statement_descriptor_prefix, this text is also - * used as the statement descriptor prefix. In that case, if concatenating the statement - * descriptor suffix causes the combined statement descriptor to exceed 22 characters, - * we truncate the statement_descriptor text to limit the full descriptor to 22 - * characters. For more information about statement descriptors and their requirements, - * see the Merchant Configuration settings documentation. - */ - public Builder setDescriptor(EmptyParam descriptor) { - this.descriptor = descriptor; - return this; - } + private PurposeOfFunds purposeOfFunds; - /** - * 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 - * AccountUpdateParams.Configuration.Merchant.ScriptStatementDescriptor.Kana#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; - } + private Object purposeOfFundsDescription; - /** - * 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 - * AccountUpdateParams.Configuration.Merchant.ScriptStatementDescriptor.Kana#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); - } - this.extraParams.putAll(map); - return this; - } + private RegulatedActivity regulatedActivity; - /** - * Default text that appears on statements for card charges outside of Japan, prefixing - * any dynamic statement_descriptor_suffix specified on the charge. To maximize space - * for the dynamic part of the descriptor, keep this text short. If you don’t specify - * this value, statement_descriptor is used as the prefix. For more information about - * statement descriptors and their requirements, see the Merchant Configuration settings - * documentation. - */ - public Builder setPrefix(String prefix) { - this.prefix = prefix; - return this; - } + private SourceOfFunds sourceOfFunds; - /** - * Default text that appears on statements for card charges outside of Japan, prefixing - * any dynamic statement_descriptor_suffix specified on the charge. To maximize space - * for the dynamic part of the descriptor, keep this text short. If you don’t specify - * this value, statement_descriptor is used as the prefix. For more information about - * statement descriptors and their requirements, see the Merchant Configuration settings - * documentation. - */ - public Builder setPrefix(EmptyParam prefix) { - this.prefix = prefix; - return this; - } - } + private Object sourceOfFundsDescription; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Storer build() { + return new AccountUpdateParams.Configuration.Storer( + this.applied, + this.capabilities, + this.extraParams, + this.highRiskActivities, + this.highRiskActivitiesDescription, + this.moneyServicesDescription, + this.operatesInProhibitedCountries, + this.participatesInRegulatedActivity, + this.purposeOfFunds, + this.purposeOfFundsDescription, + this.regulatedActivity, + this.sourceOfFunds, + this.sourceOfFundsDescription); } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class Kanji { - /** - * The default text that appears on statements for non-card charges outside of Japan. For - * card charges, if you don’t set a statement_descriptor_prefix, this text is also used as - * the statement descriptor prefix. In that case, if concatenating the statement - * descriptor suffix causes the combined statement descriptor to exceed 22 characters, we - * truncate the statement_descriptor text to limit the full descriptor to 22 characters. - * For more information about statement descriptors and their requirements, see the - * Merchant Configuration settings documentation. - */ - @SerializedName("descriptor") - Object descriptor; + /** + * Represents the state of the configuration, and can be updated to deactivate or re-apply a + * configuration. + */ + public Builder setApplied(Boolean applied) { + this.applied = applied; + return this; + } - /** - * 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; + /** Capabilities to request on the Storer Configuration. */ + public Builder setCapabilities( + AccountUpdateParams.Configuration.Storer.Capabilities capabilities) { + this.capabilities = capabilities; + return this; + } - /** - * Default text that appears on statements for card charges outside of Japan, prefixing - * any dynamic statement_descriptor_suffix specified on the charge. To maximize space for - * the dynamic part of the descriptor, keep this text short. If you don’t specify this - * value, statement_descriptor is used as the prefix. For more information about statement - * descriptors and their requirements, see the Merchant Configuration settings - * documentation. - */ - @SerializedName("prefix") - Object prefix; + /** + * 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 AccountUpdateParams.Configuration.Storer#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; + } - private Kanji(Object descriptor, Map extraParams, Object prefix) { - this.descriptor = descriptor; - this.extraParams = extraParams; - this.prefix = prefix; + /** + * 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 AccountUpdateParams.Configuration.Storer#extraParams} for the field + * documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); } + this.extraParams.putAll(map); + return this; + } - public static Builder builder() { - return new Builder(); + /** + * Add an element to `highRiskActivities` list. A list is initialized for the first + * `add/addAll` call, and subsequent calls adds additional elements to the original list. + * See {@link AccountUpdateParams.Configuration.Storer#highRiskActivities} for the field + * documentation. + */ + public Builder addHighRiskActivity( + AccountUpdateParams.Configuration.Storer.HighRiskActivity element) { + if (this.highRiskActivities == null) { + this.highRiskActivities = new ArrayList<>(); } + this.highRiskActivities.add(element); + return this; + } - public static class Builder { - private Object descriptor; + /** + * Add all elements to `highRiskActivities` list. A list is initialized for the first + * `add/addAll` call, and subsequent calls adds additional elements to the original list. + * See {@link AccountUpdateParams.Configuration.Storer#highRiskActivities} for the field + * documentation. + */ + public Builder addAllHighRiskActivity( + List elements) { + if (this.highRiskActivities == null) { + this.highRiskActivities = new ArrayList<>(); + } + this.highRiskActivities.addAll(elements); + return this; + } - private Map extraParams; + /** Description of the high-risk activities the business offers. */ + public Builder setHighRiskActivitiesDescription(String highRiskActivitiesDescription) { + this.highRiskActivitiesDescription = highRiskActivitiesDescription; + return this; + } + + /** Description of the high-risk activities the business offers. */ + public Builder setHighRiskActivitiesDescription(EmptyParam highRiskActivitiesDescription) { + this.highRiskActivitiesDescription = highRiskActivitiesDescription; + return this; + } + + /** Description of the money services offered by the business. */ + public Builder setMoneyServicesDescription(String moneyServicesDescription) { + this.moneyServicesDescription = moneyServicesDescription; + return this; + } + + /** Description of the money services offered by the business. */ + public Builder setMoneyServicesDescription(EmptyParam moneyServicesDescription) { + this.moneyServicesDescription = moneyServicesDescription; + return this; + } + + /** Does the business operate in any prohibited countries. */ + public Builder setOperatesInProhibitedCountries(Boolean operatesInProhibitedCountries) { + this.operatesInProhibitedCountries = operatesInProhibitedCountries; + return this; + } - private Object prefix; + /** Indicates whether the business participates in any regulated activity. */ + public Builder setParticipatesInRegulatedActivity(Boolean participatesInRegulatedActivity) { + this.participatesInRegulatedActivity = participatesInRegulatedActivity; + return this; + } - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.ScriptStatementDescriptor.Kanji - build() { - return new AccountUpdateParams.Configuration.Merchant.ScriptStatementDescriptor.Kanji( - this.descriptor, this.extraParams, this.prefix); - } + /** Primary purpose of the stored funds. */ + public Builder setPurposeOfFunds( + AccountUpdateParams.Configuration.Storer.PurposeOfFunds purposeOfFunds) { + this.purposeOfFunds = purposeOfFunds; + return this; + } - /** - * The default text that appears on statements for non-card charges outside of Japan. - * For card charges, if you don’t set a statement_descriptor_prefix, this text is also - * used as the statement descriptor prefix. In that case, if concatenating the statement - * descriptor suffix causes the combined statement descriptor to exceed 22 characters, - * we truncate the statement_descriptor text to limit the full descriptor to 22 - * characters. For more information about statement descriptors and their requirements, - * see the Merchant Configuration settings documentation. - */ - public Builder setDescriptor(String descriptor) { - this.descriptor = descriptor; - return this; - } + /** Description of the purpose of the stored funds. */ + public Builder setPurposeOfFundsDescription(String purposeOfFundsDescription) { + this.purposeOfFundsDescription = purposeOfFundsDescription; + return this; + } - /** - * The default text that appears on statements for non-card charges outside of Japan. - * For card charges, if you don’t set a statement_descriptor_prefix, this text is also - * used as the statement descriptor prefix. In that case, if concatenating the statement - * descriptor suffix causes the combined statement descriptor to exceed 22 characters, - * we truncate the statement_descriptor text to limit the full descriptor to 22 - * characters. For more information about statement descriptors and their requirements, - * see the Merchant Configuration settings documentation. - */ - public Builder setDescriptor(EmptyParam descriptor) { - this.descriptor = descriptor; - return this; - } + /** Description of the purpose of the stored funds. */ + public Builder setPurposeOfFundsDescription(EmptyParam purposeOfFundsDescription) { + this.purposeOfFundsDescription = purposeOfFundsDescription; + 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 - * AccountUpdateParams.Configuration.Merchant.ScriptStatementDescriptor.Kanji#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; - } + /** Details of the regulated activity if the business participates in one. */ + public Builder setRegulatedActivity( + AccountUpdateParams.Configuration.Storer.RegulatedActivity regulatedActivity) { + this.regulatedActivity = regulatedActivity; + 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 - * AccountUpdateParams.Configuration.Merchant.ScriptStatementDescriptor.Kanji#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 source of funds for the business, e.g. profits, income, venture capital, etc. */ + public Builder setSourceOfFunds( + AccountUpdateParams.Configuration.Storer.SourceOfFunds sourceOfFunds) { + this.sourceOfFunds = sourceOfFunds; + return this; + } - /** - * Default text that appears on statements for card charges outside of Japan, prefixing - * any dynamic statement_descriptor_suffix specified on the charge. To maximize space - * for the dynamic part of the descriptor, keep this text short. If you don’t specify - * this value, statement_descriptor is used as the prefix. For more information about - * statement descriptors and their requirements, see the Merchant Configuration settings - * documentation. - */ - public Builder setPrefix(String prefix) { - this.prefix = prefix; - return this; - } + /** Description of the source of funds for the business' account. */ + public Builder setSourceOfFundsDescription(String sourceOfFundsDescription) { + this.sourceOfFundsDescription = sourceOfFundsDescription; + return this; + } - /** - * Default text that appears on statements for card charges outside of Japan, prefixing - * any dynamic statement_descriptor_suffix specified on the charge. To maximize space - * for the dynamic part of the descriptor, keep this text short. If you don’t specify - * this value, statement_descriptor is used as the prefix. For more information about - * statement descriptors and their requirements, see the Merchant Configuration settings - * documentation. - */ - public Builder setPrefix(EmptyParam prefix) { - this.prefix = prefix; - return this; - } - } + /** Description of the source of funds for the business' account. */ + public Builder setSourceOfFundsDescription(EmptyParam sourceOfFundsDescription) { + this.sourceOfFundsDescription = sourceOfFundsDescription; + return this; } } @Getter @EqualsAndHashCode(callSuper = false) - public static class SmartDisputes { - /** Settings for Smart Disputes auto_respond. */ - @SerializedName("auto_respond") - AutoRespond autoRespond; + public static class Capabilities { + /** Can provision a consumer financial account. */ + @SerializedName("consumer") + Consumer consumer; /** * Map of extra parameters for custom features not available in this client library. The @@ -9930,9 +23335,41 @@ public static class SmartDisputes { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - private SmartDisputes(AutoRespond autoRespond, Map extraParams) { - this.autoRespond = autoRespond; + /** Can provision a financial address to credit/debit a FinancialAccount. */ + @SerializedName("financial_addresses") + FinancialAddresses financialAddresses; + + /** Can hold storage-type funds on Stripe. */ + @SerializedName("holds_currencies") + HoldsCurrencies holdsCurrencies; + + /** Can pull funds from an external source, owned by yourself, to a FinancialAccount. */ + @SerializedName("inbound_transfers") + InboundTransfers inboundTransfers; + + /** Can send funds from a FinancialAccount to a destination owned by someone else. */ + @SerializedName("outbound_payments") + OutboundPayments outboundPayments; + + /** Can send funds from a FinancialAccount to a destination owned by yourself. */ + @SerializedName("outbound_transfers") + OutboundTransfers outboundTransfers; + + private Capabilities( + Consumer consumer, + Map extraParams, + FinancialAddresses financialAddresses, + HoldsCurrencies holdsCurrencies, + InboundTransfers inboundTransfers, + OutboundPayments outboundPayments, + OutboundTransfers outboundTransfers) { + this.consumer = consumer; this.extraParams = extraParams; + this.financialAddresses = financialAddresses; + this.holdsCurrencies = holdsCurrencies; + this.inboundTransfers = inboundTransfers; + this.outboundPayments = outboundPayments; + this.outboundTransfers = outboundTransfers; } public static Builder builder() { @@ -9940,28 +23377,44 @@ public static Builder builder() { } public static class Builder { - private AutoRespond autoRespond; + private Consumer consumer; private Map extraParams; + private FinancialAddresses financialAddresses; + + private HoldsCurrencies holdsCurrencies; + + private InboundTransfers inboundTransfers; + + private OutboundPayments outboundPayments; + + private OutboundTransfers outboundTransfers; + /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.SmartDisputes build() { - return new AccountUpdateParams.Configuration.Merchant.SmartDisputes( - this.autoRespond, this.extraParams); + public AccountUpdateParams.Configuration.Storer.Capabilities build() { + return new AccountUpdateParams.Configuration.Storer.Capabilities( + this.consumer, + this.extraParams, + this.financialAddresses, + this.holdsCurrencies, + this.inboundTransfers, + this.outboundPayments, + this.outboundTransfers); } - /** Settings for Smart Disputes auto_respond. */ - public Builder setAutoRespond( - AccountUpdateParams.Configuration.Merchant.SmartDisputes.AutoRespond autoRespond) { - this.autoRespond = autoRespond; + /** Can provision a consumer financial account. */ + public Builder setConsumer( + AccountUpdateParams.Configuration.Storer.Capabilities.Consumer consumer) { + this.consumer = consumer; 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 AccountUpdateParams.Configuration.Merchant.SmartDisputes#extraParams} - * for the field documentation. + * map. See {@link AccountUpdateParams.Configuration.Storer.Capabilities#extraParams} for + * the field documentation. */ public Builder putExtraParam(String key, Object value) { if (this.extraParams == null) { @@ -9971,24 +23424,64 @@ public Builder putExtraParam(String key, Object 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 AccountUpdateParams.Configuration.Merchant.SmartDisputes#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); - } - this.extraParams.putAll(map); + /** + * 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 AccountUpdateParams.Configuration.Storer.Capabilities#extraParams} for + * the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Can provision a financial address to credit/debit a FinancialAccount. */ + public Builder setFinancialAddresses( + AccountUpdateParams.Configuration.Storer.Capabilities.FinancialAddresses + financialAddresses) { + this.financialAddresses = financialAddresses; + return this; + } + + /** Can hold storage-type funds on Stripe. */ + public Builder setHoldsCurrencies( + AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies + holdsCurrencies) { + this.holdsCurrencies = holdsCurrencies; + return this; + } + + /** Can pull funds from an external source, owned by yourself, to a FinancialAccount. */ + public Builder setInboundTransfers( + AccountUpdateParams.Configuration.Storer.Capabilities.InboundTransfers + inboundTransfers) { + this.inboundTransfers = inboundTransfers; + return this; + } + + /** Can send funds from a FinancialAccount to a destination owned by someone else. */ + public Builder setOutboundPayments( + AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments + outboundPayments) { + this.outboundPayments = outboundPayments; + return this; + } + + /** Can send funds from a FinancialAccount to a destination owned by yourself. */ + public Builder setOutboundTransfers( + AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers + outboundTransfers) { + this.outboundTransfers = outboundTransfers; return this; } } @Getter @EqualsAndHashCode(callSuper = false) - public static class AutoRespond { + public static class Consumer { /** * 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. @@ -9999,13 +23492,13 @@ public static class AutoRespond { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** The preference for automatic dispute responses. */ - @SerializedName("preference") - Preference preference; + /** Can hold storage-type funds on Stripe in a consumer financial account. */ + @SerializedName("holds_currencies") + HoldsCurrencies holdsCurrencies; - private AutoRespond(Map extraParams, Preference preference) { + private Consumer(Map extraParams, HoldsCurrencies holdsCurrencies) { this.extraParams = extraParams; - this.preference = preference; + this.holdsCurrencies = holdsCurrencies; } public static Builder builder() { @@ -10015,20 +23508,20 @@ public static Builder builder() { public static class Builder { private Map extraParams; - private Preference preference; + private HoldsCurrencies holdsCurrencies; /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.SmartDisputes.AutoRespond build() { - return new AccountUpdateParams.Configuration.Merchant.SmartDisputes.AutoRespond( - this.extraParams, this.preference); + public AccountUpdateParams.Configuration.Storer.Capabilities.Consumer build() { + return new AccountUpdateParams.Configuration.Storer.Capabilities.Consumer( + this.extraParams, this.holdsCurrencies); } /** * 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 - * AccountUpdateParams.Configuration.Merchant.SmartDisputes.AutoRespond#extraParams} for - * the field documentation. + * AccountUpdateParams.Configuration.Storer.Capabilities.Consumer#extraParams} for the + * field documentation. */ public Builder putExtraParam(String key, Object value) { if (this.extraParams == null) { @@ -10042,8 +23535,8 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountUpdateParams.Configuration.Merchant.SmartDisputes.AutoRespond#extraParams} for - * the field documentation. + * AccountUpdateParams.Configuration.Storer.Capabilities.Consumer#extraParams} for the + * field documentation. */ public Builder putAllExtraParam(Map map) { if (this.extraParams == null) { @@ -10053,329 +23546,369 @@ public Builder putAllExtraParam(Map map) { return this; } - /** The preference for automatic dispute responses. */ - public Builder setPreference( - AccountUpdateParams.Configuration.Merchant.SmartDisputes.AutoRespond.Preference - preference) { - this.preference = preference; + /** Can hold storage-type funds on Stripe in a consumer financial account. */ + public Builder setHoldsCurrencies( + AccountUpdateParams.Configuration.Storer.Capabilities.Consumer.HoldsCurrencies + holdsCurrencies) { + this.holdsCurrencies = holdsCurrencies; return this; } } - public enum Preference implements ApiRequestParams.EnumParam { - @SerializedName("inherit") - INHERIT("inherit"), - - @SerializedName("off") - OFF("off"), + @Getter + @EqualsAndHashCode(callSuper = false) + public static class HoldsCurrencies { + /** + * 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; - @SerializedName("on") - ON("on"); + /** Can hold storage-type funds on Stripe in USD in a consumer financial account. */ + @SerializedName("usd") + Usd usd; - @Getter(onMethod_ = {@Override}) - private final String value; + private HoldsCurrencies(Map extraParams, Usd usd) { + this.extraParams = extraParams; + this.usd = usd; + } - Preference(String value) { - this.value = value; + public static Builder builder() { + return new Builder(); } - } - } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class StatementDescriptor { - /** - * The default text that appears on statements for non-card charges outside of Japan. For - * card charges, if you don’t set a statement_descriptor_prefix, this text is also used as - * the statement descriptor prefix. In that case, if concatenating the statement descriptor - * suffix causes the combined statement descriptor to exceed 22 characters, we truncate the - * statement_descriptor text to limit the full descriptor to 22 characters. For more - * information about statement descriptors and their requirements, see the Merchant - * Configuration settings documentation. - */ - @SerializedName("descriptor") - Object descriptor; + public static class Builder { + private Map extraParams; - /** - * 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; + private Usd usd; - /** - * Default text that appears on statements for card charges outside of Japan, prefixing any - * dynamic statement_descriptor_suffix specified on the charge. To maximize space for the - * dynamic part of the descriptor, keep this text short. If you don’t specify this value, - * statement_descriptor is used as the prefix. For more information about statement - * descriptors and their requirements, see the Merchant Configuration settings - * documentation. - */ - @SerializedName("prefix") - Object prefix; + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Storer.Capabilities.Consumer.HoldsCurrencies + build() { + return new AccountUpdateParams.Configuration.Storer.Capabilities.Consumer + .HoldsCurrencies(this.extraParams, this.usd); + } - private StatementDescriptor( - Object descriptor, Map extraParams, Object prefix) { - this.descriptor = descriptor; - this.extraParams = extraParams; - this.prefix = prefix; - } + /** + * 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.Consumer.HoldsCurrencies#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; + } - public static Builder builder() { - return new Builder(); - } + /** + * 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.Consumer.HoldsCurrencies#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - public static class Builder { - private Object descriptor; + /** Can hold storage-type funds on Stripe in USD in a consumer financial account. */ + public Builder setUsd( + AccountUpdateParams.Configuration.Storer.Capabilities.Consumer.HoldsCurrencies.Usd + usd) { + this.usd = usd; + return this; + } + } - private Map extraParams; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Usd { + /** + * 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; - private Object prefix; + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + @SerializedName("protections") + Protections protections; - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.StatementDescriptor build() { - return new AccountUpdateParams.Configuration.Merchant.StatementDescriptor( - this.descriptor, this.extraParams, this.prefix); - } + /** + * To request a new Capability for an account, pass true. There can be a delay before + * the requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; - /** - * The default text that appears on statements for non-card charges outside of Japan. For - * card charges, if you don’t set a statement_descriptor_prefix, this text is also used as - * the statement descriptor prefix. In that case, if concatenating the statement - * descriptor suffix causes the combined statement descriptor to exceed 22 characters, we - * truncate the statement_descriptor text to limit the full descriptor to 22 characters. - * For more information about statement descriptors and their requirements, see the - * Merchant Configuration settings documentation. - */ - public Builder setDescriptor(String descriptor) { - this.descriptor = descriptor; - return this; - } + private Usd( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } - /** - * The default text that appears on statements for non-card charges outside of Japan. For - * card charges, if you don’t set a statement_descriptor_prefix, this text is also used as - * the statement descriptor prefix. In that case, if concatenating the statement - * descriptor suffix causes the combined statement descriptor to exceed 22 characters, we - * truncate the statement_descriptor text to limit the full descriptor to 22 characters. - * For more information about statement descriptors and their requirements, see the - * Merchant Configuration settings documentation. - */ - public Builder setDescriptor(EmptyParam descriptor) { - this.descriptor = descriptor; - return this; - } + public static Builder builder() { + return new Builder(); + } - /** - * 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 - * AccountUpdateParams.Configuration.Merchant.StatementDescriptor#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; - } + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; - /** - * 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 - * AccountUpdateParams.Configuration.Merchant.StatementDescriptor#extraParams} for the - * field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); - } - this.extraParams.putAll(map); - return this; - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Storer.Capabilities.Consumer + .HoldsCurrencies.Usd + build() { + return new AccountUpdateParams.Configuration.Storer.Capabilities.Consumer + .HoldsCurrencies.Usd(this.extraParams, this.protections, this.requested); + } - /** - * Default text that appears on statements for card charges outside of Japan, prefixing - * any dynamic statement_descriptor_suffix specified on the charge. To maximize space for - * the dynamic part of the descriptor, keep this text short. If you don’t specify this - * value, statement_descriptor is used as the prefix. For more information about statement - * descriptors and their requirements, see the Merchant Configuration settings - * documentation. - */ - public Builder setPrefix(String prefix) { - this.prefix = prefix; - 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.Consumer.HoldsCurrencies.Usd#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; + } - /** - * Default text that appears on statements for card charges outside of Japan, prefixing - * any dynamic statement_descriptor_suffix specified on the charge. To maximize space for - * the dynamic part of the descriptor, keep this text short. If you don’t specify this - * value, statement_descriptor is used as the prefix. For more information about statement - * descriptors and their requirements, see the Merchant Configuration settings - * documentation. - */ - public Builder setPrefix(EmptyParam prefix) { - this.prefix = prefix; - 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.Consumer.HoldsCurrencies.Usd#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class Support { - /** A publicly available mailing address for sending support issues to. */ - @SerializedName("address") - Address address; + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountUpdateParams.Configuration.Storer.Capabilities.Consumer.HoldsCurrencies + .Usd.Protections + protections) { + this.protections = protections; + return this; + } - /** A publicly available email address for sending support issues to. */ - @SerializedName("email") - Object email; + /** + * To request a new Capability for an account, pass true. There can be a delay + * before the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } - /** - * 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; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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 publicly available phone number to call with support issues. */ - @SerializedName("phone") - Object phone; + /** Required. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - /** A publicly available website for handling support issues. */ - @SerializedName("url") - Object url; + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - private Support( - Address address, - Object email, - Map extraParams, - Object phone, - Object url) { - this.address = address; - this.email = email; - this.extraParams = extraParams; - this.phone = phone; - this.url = url; - } + public static Builder builder() { + return new Builder(); + } - public static Builder builder() { - return new Builder(); - } + public static class Builder { + private Map extraParams; - public static class Builder { - private Address address; + private PspMigration pspMigration; - private Object email; + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Storer.Capabilities.Consumer + .HoldsCurrencies.Usd.Protections + build() { + return new AccountUpdateParams.Configuration.Storer.Capabilities.Consumer + .HoldsCurrencies.Usd.Protections(this.extraParams, this.pspMigration); + } - private Map extraParams; + /** + * 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.Consumer.HoldsCurrencies.Usd.Protections#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; + } - private Object phone; + /** + * 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.Consumer.HoldsCurrencies.Usd.Protections#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - private Object url; + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Storer.Capabilities.Consumer.HoldsCurrencies + .Usd.Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.Support build() { - return new AccountUpdateParams.Configuration.Merchant.Support( - this.address, this.email, this.extraParams, this.phone, this.url); - } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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 publicly available mailing address for sending support issues to. */ - public Builder setAddress( - AccountUpdateParams.Configuration.Merchant.Support.Address address) { - this.address = address; - return this; - } + /** Required. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; - /** A publicly available email address for sending support issues to. */ - public Builder setEmail(String email) { - this.email = email; - return this; - } + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } - /** A publicly available email address for sending support issues to. */ - public Builder setEmail(EmptyParam email) { - this.email = email; - return this; - } + public static Builder builder() { + return new Builder(); + } - /** - * 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 AccountUpdateParams.Configuration.Merchant.Support#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; - } + public static class Builder { + private Map extraParams; - /** - * 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 AccountUpdateParams.Configuration.Merchant.Support#extraParams} for the - * field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); - } - this.extraParams.putAll(map); - return this; - } + private Boolean requested; - /** A publicly available phone number to call with support issues. */ - public Builder setPhone(String phone) { - this.phone = phone; - return this; - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Storer.Capabilities.Consumer + .HoldsCurrencies.Usd.Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Storer.Capabilities.Consumer + .HoldsCurrencies.Usd.Protections.PspMigration( + this.extraParams, this.requested); + } - /** A publicly available phone number to call with support issues. */ - public Builder setPhone(EmptyParam phone) { - this.phone = phone; - 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.Consumer.HoldsCurrencies.Usd.Protections.PspMigration#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; + } - /** A publicly available website for handling support issues. */ - public Builder setUrl(String url) { - this.url = url; - 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.Consumer.HoldsCurrencies.Usd.Protections.PspMigration#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 publicly available website for handling support issues. */ - public Builder setUrl(EmptyParam url) { - this.url = url; - return this; + /** Required. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } } } @Getter @EqualsAndHashCode(callSuper = false) - public static class Address { - /** City, district, suburb, town, or village. */ - @SerializedName("city") - Object city; - + public static class FinancialAddresses { /** - * Two-letter country code (ISO - * 3166-1 alpha-2). + * Can provision a bank-account-like financial address (VBAN) to credit/debit a + * FinancialAccount. */ - @SerializedName("country") - Object country; + @SerializedName("bank_accounts") + BankAccounts bankAccounts; + + /** Can provision a crypto wallet like financial address to credit a FinancialAccount. */ + @SerializedName("crypto_wallets") + CryptoWallets cryptoWallets; /** * Map of extra parameters for custom features not available in this client library. The @@ -10387,43 +23920,13 @@ public static class Address { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** Address line 1 (e.g., street, PO Box, or company name). */ - @SerializedName("line1") - Object line1; - - /** Address line 2 (e.g., apartment, suite, unit, or building). */ - @SerializedName("line2") - Object line2; - - /** ZIP or postal code. */ - @SerializedName("postal_code") - Object postalCode; - - /** State, county, province, or region. */ - @SerializedName("state") - Object state; - - /** Town or district. */ - @SerializedName("town") - Object town; - - private Address( - Object city, - Object country, - Map extraParams, - Object line1, - Object line2, - Object postalCode, - Object state, - Object town) { - this.city = city; - this.country = country; + private FinancialAddresses( + BankAccounts bankAccounts, + CryptoWallets cryptoWallets, + Map extraParams) { + this.bankAccounts = bankAccounts; + this.cryptoWallets = cryptoWallets; this.extraParams = extraParams; - this.line1 = line1; - this.line2 = line2; - this.postalCode = postalCode; - this.state = state; - this.town = town; } public static Builder builder() { @@ -10431,62 +23934,39 @@ public static Builder builder() { } public static class Builder { - private Object city; + private BankAccounts bankAccounts; - private Object country; + private CryptoWallets cryptoWallets; private Map extraParams; - private Object line1; - - private Object line2; - - private Object postalCode; - - private Object state; - - private Object town; - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Merchant.Support.Address build() { - return new AccountUpdateParams.Configuration.Merchant.Support.Address( - this.city, - this.country, - this.extraParams, - this.line1, - this.line2, - this.postalCode, - this.state, - this.town); - } - - /** City, district, suburb, town, or village. */ - public Builder setCity(String city) { - this.city = city; - return this; - } - - /** City, district, suburb, town, or village. */ - public Builder setCity(EmptyParam city) { - this.city = city; - return this; + public AccountUpdateParams.Configuration.Storer.Capabilities.FinancialAddresses + build() { + return new AccountUpdateParams.Configuration.Storer.Capabilities.FinancialAddresses( + this.bankAccounts, this.cryptoWallets, this.extraParams); } /** - * Two-letter country code (ISO 3166-1 alpha-2). + * Can provision a bank-account-like financial address (VBAN) to credit/debit a + * FinancialAccount. */ - public Builder setCountry(String country) { - this.country = country; + public Builder setBankAccounts( + AccountUpdateParams.Configuration.Storer.Capabilities.FinancialAddresses + .BankAccounts + bankAccounts) { + this.bankAccounts = bankAccounts; return this; } /** - * Two-letter country code (ISO 3166-1 alpha-2). + * Can provision a crypto wallet like financial address to credit a FinancialAccount. */ - public Builder setCountry(EmptyParam country) { - this.country = country; + public Builder setCryptoWallets( + AccountUpdateParams.Configuration.Storer.Capabilities.FinancialAddresses + .CryptoWallets + cryptoWallets) { + this.cryptoWallets = cryptoWallets; return this; } @@ -10494,8 +23974,8 @@ public Builder setCountry(EmptyParam country) { * 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 - * AccountUpdateParams.Configuration.Merchant.Support.Address#extraParams} for the field - * documentation. + * AccountUpdateParams.Configuration.Storer.Capabilities.FinancialAddresses#extraParams} + * for the field documentation. */ public Builder putExtraParam(String key, Object value) { if (this.extraParams == null) { @@ -10509,365 +23989,548 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountUpdateParams.Configuration.Merchant.Support.Address#extraParams} for the field - * documentation. + * AccountUpdateParams.Configuration.Storer.Capabilities.FinancialAddresses#extraParams} + * for the field documentation. */ public Builder putAllExtraParam(Map map) { if (this.extraParams == null) { this.extraParams = new HashMap<>(); } - this.extraParams.putAll(map); - return this; - } + this.extraParams.putAll(map); + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class BankAccounts { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * To request a new Capability for an account, pass true. There can be a delay before + * the requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private BankAccounts( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Protections protections; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Storer.Capabilities.FinancialAddresses + .BankAccounts + build() { + return new AccountUpdateParams.Configuration.Storer.Capabilities.FinancialAddresses + .BankAccounts(this.extraParams, this.protections, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.FinancialAddresses.BankAccounts#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 + * AccountUpdateParams.Configuration.Storer.Capabilities.FinancialAddresses.BankAccounts#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountUpdateParams.Configuration.Storer.Capabilities.FinancialAddresses + .BankAccounts.Protections + protections) { + this.protections = protections; + return this; + } - /** Address line 1 (e.g., street, PO Box, or company name). */ - public Builder setLine1(String line1) { - this.line1 = line1; - return this; + /** + * To request a new Capability for an account, pass true. There can be a delay before + * the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } } - /** Address line 1 (e.g., street, PO Box, or company name). */ - public Builder setLine1(EmptyParam line1) { - this.line1 = line1; - return this; - } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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; - /** Address line 2 (e.g., apartment, suite, unit, or building). */ - public Builder setLine2(String line2) { - this.line2 = line2; - return this; - } + /** Required. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - /** Address line 2 (e.g., apartment, suite, unit, or building). */ - public Builder setLine2(EmptyParam line2) { - this.line2 = line2; - return this; - } + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - /** ZIP or postal code. */ - public Builder setPostalCode(String postalCode) { - this.postalCode = postalCode; - return this; - } + public static Builder builder() { + return new Builder(); + } - /** ZIP or postal code. */ - public Builder setPostalCode(EmptyParam postalCode) { - this.postalCode = postalCode; - return this; - } + public static class Builder { + private Map extraParams; - /** State, county, province, or region. */ - public Builder setState(String state) { - this.state = state; - return this; - } + private PspMigration pspMigration; - /** State, county, province, or region. */ - public Builder setState(EmptyParam state) { - this.state = state; - return this; - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Storer.Capabilities.FinancialAddresses + .BankAccounts.Protections + build() { + return new AccountUpdateParams.Configuration.Storer.Capabilities + .FinancialAddresses.BankAccounts.Protections( + this.extraParams, this.pspMigration); + } - /** Town or district. */ - public Builder setTown(String town) { - this.town = town; - 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.FinancialAddresses.BankAccounts.Protections#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; + } - /** Town or district. */ - public Builder setTown(EmptyParam town) { - this.town = town; - 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.FinancialAddresses.BankAccounts.Protections#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class Recipient { - /** - * Represents the state of the configuration, and can be updated to deactivate or re-apply a - * configuration. - */ - @SerializedName("applied") - Boolean applied; + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Storer.Capabilities.FinancialAddresses + .BankAccounts.Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } - /** Capabilities to request on the Recipient Configuration. */ - @SerializedName("capabilities") - Capabilities capabilities; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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 payout method id to be used as a default outbound destination. This will allow the - * PayoutMethod to be omitted on OutboundPayments made through API or sending payouts via - * dashboard. Can also be explicitly set to {@code null} to clear the existing default - * outbound destination. For further details about creating an Outbound Destination, see Collect - * recipient's payment details. - */ - @SerializedName("default_outbound_destination") - Object defaultOutboundDestination; + /** Required. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; - /** - * 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; + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } - private Recipient( - Boolean applied, - Capabilities capabilities, - Object defaultOutboundDestination, - Map extraParams) { - this.applied = applied; - this.capabilities = capabilities; - this.defaultOutboundDestination = defaultOutboundDestination; - this.extraParams = extraParams; - } + public static Builder builder() { + return new Builder(); + } - public static Builder builder() { - return new Builder(); - } + public static class Builder { + private Map extraParams; - public static class Builder { - private Boolean applied; + private Boolean requested; - private Capabilities capabilities; + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Storer.Capabilities.FinancialAddresses + .BankAccounts.Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Storer.Capabilities + .FinancialAddresses.BankAccounts.Protections.PspMigration( + this.extraParams, this.requested); + } - private Object defaultOutboundDestination; + /** + * 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.FinancialAddresses.BankAccounts.Protections.PspMigration#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; + } - private Map extraParams; + /** + * 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.FinancialAddresses.BankAccounts.Protections.PspMigration#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Recipient build() { - return new AccountUpdateParams.Configuration.Recipient( - this.applied, this.capabilities, this.defaultOutboundDestination, this.extraParams); - } + /** Required. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } - /** - * Represents the state of the configuration, and can be updated to deactivate or re-apply a - * configuration. - */ - public Builder setApplied(Boolean applied) { - this.applied = applied; - return this; - } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class CryptoWallets { + /** + * 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; - /** Capabilities to request on the Recipient Configuration. */ - public Builder setCapabilities( - AccountUpdateParams.Configuration.Recipient.Capabilities capabilities) { - this.capabilities = capabilities; - return this; - } + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + + /** + * To request a new Capability for an account, pass true. There can be a delay before + * the requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private CryptoWallets( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } - /** - * The payout method id to be used as a default outbound destination. This will allow the - * PayoutMethod to be omitted on OutboundPayments made through API or sending payouts via - * dashboard. Can also be explicitly set to {@code null} to clear the existing default - * outbound destination. For further details about creating an Outbound Destination, see Collect - * recipient's payment details. - */ - public Builder setDefaultOutboundDestination(String defaultOutboundDestination) { - this.defaultOutboundDestination = defaultOutboundDestination; - return this; - } + public static Builder builder() { + return new Builder(); + } - /** - * The payout method id to be used as a default outbound destination. This will allow the - * PayoutMethod to be omitted on OutboundPayments made through API or sending payouts via - * dashboard. Can also be explicitly set to {@code null} to clear the existing default - * outbound destination. For further details about creating an Outbound Destination, see Collect - * recipient's payment details. - */ - public Builder setDefaultOutboundDestination(EmptyParam defaultOutboundDestination) { - this.defaultOutboundDestination = defaultOutboundDestination; - return this; - } + public static class Builder { + private Map extraParams; - /** - * 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 AccountUpdateParams.Configuration.Recipient#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; - } + private Protections protections; - /** - * 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 AccountUpdateParams.Configuration.Recipient#extraParams} for the field - * documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); - } - this.extraParams.putAll(map); - return this; - } - } + private Boolean requested; - @Getter - @EqualsAndHashCode(callSuper = false) - public static class Capabilities { - /** Capabilities that enable OutboundPayments to a bank account linked to this Account. */ - @SerializedName("bank_accounts") - BankAccounts bankAccounts; + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Storer.Capabilities.FinancialAddresses + .CryptoWallets + build() { + return new AccountUpdateParams.Configuration.Storer.Capabilities.FinancialAddresses + .CryptoWallets(this.extraParams, this.protections, this.requested); + } - /** Capability that enable OutboundPayments to a debit card linked to this Account. */ - @SerializedName("cards") - Cards cards; + /** + * 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.FinancialAddresses.CryptoWallets#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; + } - /** Capabilities that enable OutboundPayments to a crypto wallet linked to this Account. */ - @SerializedName("crypto_wallets") - CryptoWallets cryptoWallets; + /** + * 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.FinancialAddresses.CryptoWallets#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - /** - * 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; + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountUpdateParams.Configuration.Storer.Capabilities.FinancialAddresses + .CryptoWallets.Protections + protections) { + this.protections = protections; + return this; + } - /** Capabilities that enable OutboundPayments via paper check. */ - @SerializedName("paper_checks") - PaperChecks paperChecks; + /** + * To request a new Capability for an account, pass true. There can be a delay before + * the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } - /** Capabilities that enable the recipient to manage their Stripe Balance (/v1/balance). */ - @SerializedName("stripe_balance") - StripeBalance stripeBalance; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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; - private Capabilities( - BankAccounts bankAccounts, - Cards cards, - CryptoWallets cryptoWallets, - Map extraParams, - PaperChecks paperChecks, - StripeBalance stripeBalance) { - this.bankAccounts = bankAccounts; - this.cards = cards; - this.cryptoWallets = cryptoWallets; - this.extraParams = extraParams; - this.paperChecks = paperChecks; - this.stripeBalance = stripeBalance; - } + /** Required. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - public static Builder builder() { - return new Builder(); - } + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - public static class Builder { - private BankAccounts bankAccounts; + public static Builder builder() { + return new Builder(); + } - private Cards cards; + public static class Builder { + private Map extraParams; - private CryptoWallets cryptoWallets; + private PspMigration pspMigration; - private Map extraParams; + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Storer.Capabilities.FinancialAddresses + .CryptoWallets.Protections + build() { + return new AccountUpdateParams.Configuration.Storer.Capabilities + .FinancialAddresses.CryptoWallets.Protections( + this.extraParams, this.pspMigration); + } - private PaperChecks paperChecks; + /** + * 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.FinancialAddresses.CryptoWallets.Protections#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; + } - private StripeBalance stripeBalance; + /** + * 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.FinancialAddresses.CryptoWallets.Protections#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Recipient.Capabilities build() { - return new AccountUpdateParams.Configuration.Recipient.Capabilities( - this.bankAccounts, - this.cards, - this.cryptoWallets, - this.extraParams, - this.paperChecks, - this.stripeBalance); - } + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Storer.Capabilities.FinancialAddresses + .CryptoWallets.Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } - /** Capabilities that enable OutboundPayments to a bank account linked to this Account. */ - public Builder setBankAccounts( - AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts bankAccounts) { - this.bankAccounts = bankAccounts; - return this; - } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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; - /** Capability that enable OutboundPayments to a debit card linked to this Account. */ - public Builder setCards( - AccountUpdateParams.Configuration.Recipient.Capabilities.Cards cards) { - this.cards = cards; - return this; - } + /** Required. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; - /** - * Capabilities that enable OutboundPayments to a crypto wallet linked to this Account. - */ - public Builder setCryptoWallets( - AccountUpdateParams.Configuration.Recipient.Capabilities.CryptoWallets - cryptoWallets) { - this.cryptoWallets = cryptoWallets; - return this; - } + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } - /** - * 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 AccountUpdateParams.Configuration.Recipient.Capabilities#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; - } + public static class Builder { + private Map extraParams; - /** - * 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 AccountUpdateParams.Configuration.Recipient.Capabilities#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); - } - this.extraParams.putAll(map); - return this; - } + private Boolean requested; - /** Capabilities that enable OutboundPayments via paper check. */ - public Builder setPaperChecks( - AccountUpdateParams.Configuration.Recipient.Capabilities.PaperChecks paperChecks) { - this.paperChecks = paperChecks; - return this; - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Storer.Capabilities.FinancialAddresses + .CryptoWallets.Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Storer.Capabilities + .FinancialAddresses.CryptoWallets.Protections.PspMigration( + this.extraParams, this.requested); + } - /** - * Capabilities that enable the recipient to manage their Stripe Balance (/v1/balance). - */ - public Builder setStripeBalance( - AccountUpdateParams.Configuration.Recipient.Capabilities.StripeBalance - stripeBalance) { - this.stripeBalance = stripeBalance; - 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.FinancialAddresses.CryptoWallets.Protections.PspMigration#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 + * AccountUpdateParams.Configuration.Storer.Capabilities.FinancialAddresses.CryptoWallets.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } } } @Getter @EqualsAndHashCode(callSuper = false) - public static class BankAccounts { + public static class HoldsCurrencies { + /** Can hold storage-type funds on Stripe in EUR. */ + @SerializedName("eur") + Eur eur; + /** * 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. @@ -10878,37 +24541,25 @@ public static class BankAccounts { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** - * Enables this Account to receive OutboundPayments to linked bank accounts over real time - * rails. - */ - @SerializedName("instant") - com.stripe.param.v2.core.AccountUpdateParams.Configuration.Recipient.Capabilities - .BankAccounts.Instant - instant; + /** Can hold storage-type funds on Stripe in GBP. */ + @SerializedName("gbp") + Gbp gbp; - /** - * Enables this Account to receive OutboundPayments to linked bank accounts over local - * networks. - */ - @SerializedName("local") - Local local; + /** Can hold storage-type funds on Stripe in USD. */ + @SerializedName("usd") + Usd usd; - /** Enables this Account to receive OutboundPayments to linked bank accounts over wire. */ - @SerializedName("wire") - Wire wire; + /** Can hold storage-type funds on Stripe in USDC. */ + @SerializedName("usdc") + Usdc usdc; - private BankAccounts( - Map extraParams, - com.stripe.param.v2.core.AccountUpdateParams.Configuration.Recipient.Capabilities - .BankAccounts.Instant - instant, - Local local, - Wire wire) { + private HoldsCurrencies( + Eur eur, Map extraParams, Gbp gbp, Usd usd, Usdc usdc) { + this.eur = eur; this.extraParams = extraParams; - this.instant = instant; - this.local = local; - this.wire = wire; + this.gbp = gbp; + this.usd = usd; + this.usdc = usdc; } public static Builder builder() { @@ -10916,27 +24567,34 @@ public static Builder builder() { } public static class Builder { + private Eur eur; + private Map extraParams; - private com.stripe.param.v2.core.AccountUpdateParams.Configuration.Recipient - .Capabilities.BankAccounts.Instant - instant; + private Gbp gbp; - private Local local; + private Usd usd; - private Wire wire; + private Usdc usdc; /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts build() { - return new AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts( - this.extraParams, this.instant, this.local, this.wire); + public AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies build() { + return new AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies( + this.eur, this.extraParams, this.gbp, this.usd, this.usdc); + } + + /** Can hold storage-type funds on Stripe in EUR. */ + public Builder setEur( + AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Eur eur) { + this.eur = eur; + 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 - * AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts#extraParams} + * AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -10951,7 +24609,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts#extraParams} + * AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -10962,122 +24620,31 @@ public Builder putAllExtraParam(Map map) { return this; } - /** - * Enables this Account to receive OutboundPayments to linked bank accounts over real - * time rails. - */ - public Builder setInstant( - AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts.Instant - instant) { - this.instant = instant; - return this; - } - - /** - * Enables this Account to receive OutboundPayments to linked bank accounts over local - * networks. - */ - public Builder setLocal( - AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts.Local local) { - this.local = local; + /** Can hold storage-type funds on Stripe in GBP. */ + public Builder setGbp( + AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Gbp gbp) { + this.gbp = gbp; return this; } - /** - * Enables this Account to receive OutboundPayments to linked bank accounts over wire. - */ - public Builder setWire( - AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts.Wire wire) { - this.wire = wire; + /** Can hold storage-type funds on Stripe in USD. */ + public Builder setUsd( + AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usd usd) { + this.usd = usd; return this; - } - } - - @Getter - @EqualsAndHashCode(callSuper = false) - public static class Instant { - /** - * 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; - - /** - * To request a new Capability for an account, pass true. There can be a delay before - * the requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; - - private Instant(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } - - public static Builder builder() { - return new Builder(); - } - - public static class Builder { - private Map extraParams; - - private Boolean requested; - - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts.Instant - build() { - return new AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts - .Instant(this.extraParams, this.requested); - } - - /** - * 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 - * AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts.Instant#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 - * AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts.Instant#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); - } - this.extraParams.putAll(map); - return this; - } + } - /** - * To request a new Capability for an account, pass true. There can be a delay before - * the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; - } + /** Can hold storage-type funds on Stripe in USDC. */ + public Builder setUsdc( + AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usdc usdc) { + this.usdc = usdc; + return this; } } @Getter @EqualsAndHashCode(callSuper = false) - public static class Local { + public static class Eur { /** * 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} @@ -11088,6 +24655,10 @@ public static class Local { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + /** * To request a new Capability for an account, pass true. There can be a delay before * the requested Capability becomes active. @@ -11095,8 +24666,10 @@ public static class Local { @SerializedName("requested") Boolean requested; - private Local(Map extraParams, Boolean requested) { + private Eur( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -11107,20 +24680,22 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts.Local + public AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Eur build() { - return new AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts - .Local(this.extraParams, this.requested); + return new AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies + .Eur(this.extraParams, this.protections, this.requested); } /** * 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 - * AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts.Local#extraParams} + * AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Eur#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -11135,7 +24710,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts.Local#extraParams} + * AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Eur#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -11146,6 +24721,17 @@ public Builder putAllExtraParam(Map map) { return this; } + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Eur + .Protections + protections) { + this.protections = protections; + return this; + } + /** * To request a new Capability for an account, pass true. There can be a delay before * the requested Capability becomes active. @@ -11155,419 +24741,426 @@ public Builder setRequested(Boolean requested) { return this; } } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class Wire { - /** - * 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; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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; - /** - * To request a new Capability for an account, pass true. There can be a delay before - * the requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + /** Required. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - private Wire(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - public static Builder builder() { - return new Builder(); - } + public static Builder builder() { + return new Builder(); + } - public static class Builder { - private Map extraParams; + public static class Builder { + private Map extraParams; - private Boolean requested; + private PspMigration pspMigration; - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts.Wire - build() { - return new AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts - .Wire(this.extraParams, this.requested); - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Eur + .Protections + build() { + return new AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies + .Eur.Protections(this.extraParams, this.pspMigration); + } - /** - * 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 - * AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts.Wire#extraParams} - * for the field documentation. - */ - public Builder putExtraParam(String key, Object value) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** + * 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Eur.Protections#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; } - 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 - * AccountUpdateParams.Configuration.Recipient.Capabilities.BankAccounts.Wire#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** + * 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Eur.Protections#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; } - this.extraParams.putAll(map); - return this; - } - /** - * To request a new Capability for an account, pass true. There can be a delay before - * the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Eur + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } } - } - } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class Cards { - /** - * 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; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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; - /** - * To request a new Capability for an account, pass true. There can be a delay before the - * requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + /** Required. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; - private Cards(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } - public static Builder builder() { - return new Builder(); - } + public static Builder builder() { + return new Builder(); + } - public static class Builder { - private Map extraParams; + public static class Builder { + private Map extraParams; - private Boolean requested; + private Boolean requested; - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Recipient.Capabilities.Cards build() { - return new AccountUpdateParams.Configuration.Recipient.Capabilities.Cards( - this.extraParams, this.requested); - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Eur + .Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies + .Eur.Protections.PspMigration(this.extraParams, this.requested); + } - /** - * 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 - * AccountUpdateParams.Configuration.Recipient.Capabilities.Cards#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 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Eur.Protections.PspMigration#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 - * AccountUpdateParams.Configuration.Recipient.Capabilities.Cards#extraParams} for the - * field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** + * 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Eur.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } } - this.extraParams.putAll(map); - return this; } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Gbp { + /** + * 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; + + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; /** * To request a new Capability for an account, pass true. There can be a delay before * the requested Capability becomes active. */ - public Builder setRequested(Boolean requested) { + @SerializedName("requested") + Boolean requested; + + private Gbp( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; this.requested = requested; - return this; } - } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class CryptoWallets { - /** - * 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; + public static Builder builder() { + return new Builder(); + } - /** - * To request a new Capability for an account, pass true. There can be a delay before the - * requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + public static class Builder { + private Map extraParams; - private CryptoWallets(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + private Protections protections; - public static Builder builder() { - return new Builder(); - } + private Boolean requested; - public static class Builder { - private Map extraParams; + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Gbp + build() { + return new AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies + .Gbp(this.extraParams, this.protections, this.requested); + } - private Boolean requested; + /** + * 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Gbp#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; + } - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Recipient.Capabilities.CryptoWallets build() { - return new AccountUpdateParams.Configuration.Recipient.Capabilities.CryptoWallets( - this.extraParams, this.requested); - } + /** + * 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Gbp#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 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 - * AccountUpdateParams.Configuration.Recipient.Capabilities.CryptoWallets#extraParams} - * for the field documentation. - */ - public Builder putExtraParam(String key, Object value) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Gbp + .Protections + protections) { + this.protections = protections; + return this; } - 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 - * AccountUpdateParams.Configuration.Recipient.Capabilities.CryptoWallets#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** + * To request a new Capability for an account, pass true. There can be a delay before + * the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; } - this.extraParams.putAll(map); - return this; } - /** - * To request a new Capability for an account, pass true. There can be a delay before - * the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; - } - } - } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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; - @Getter - @EqualsAndHashCode(callSuper = false) - public static class PaperChecks { - /** - * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - /** - * To request a new Capability for an account, pass true. There can be a delay before the - * requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - private PaperChecks(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + public static Builder builder() { + return new Builder(); + } - public static Builder builder() { - return new Builder(); - } + public static class Builder { + private Map extraParams; - public static class Builder { - private Map extraParams; + private PspMigration pspMigration; - private Boolean requested; + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Gbp + .Protections + build() { + return new AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies + .Gbp.Protections(this.extraParams, this.pspMigration); + } - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Recipient.Capabilities.PaperChecks build() { - return new AccountUpdateParams.Configuration.Recipient.Capabilities.PaperChecks( - this.extraParams, this.requested); - } + /** + * 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Gbp.Protections#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 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 - * AccountUpdateParams.Configuration.Recipient.Capabilities.PaperChecks#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 + * AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Gbp.Protections#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 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 - * AccountUpdateParams.Configuration.Recipient.Capabilities.PaperChecks#extraParams} for - * the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Gbp + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } } - this.extraParams.putAll(map); - return this; - } - /** - * To request a new Capability for an account, pass true. There can be a delay before - * the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; - } - } - } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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; - @Getter - @EqualsAndHashCode(callSuper = false) - public static class StripeBalance { - /** - * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; - /** - * Enables this Account to receive /v1/transfers into their Stripe Balance (/v1/balance). - */ - @SerializedName("stripe_transfers") - StripeTransfers stripeTransfers; + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } - private StripeBalance(Map extraParams, StripeTransfers stripeTransfers) { - this.extraParams = extraParams; - this.stripeTransfers = stripeTransfers; - } + public static Builder builder() { + return new Builder(); + } - public static Builder builder() { - return new Builder(); - } + public static class Builder { + private Map extraParams; - public static class Builder { - private Map extraParams; + private Boolean requested; - private StripeTransfers stripeTransfers; + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Gbp + .Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies + .Gbp.Protections.PspMigration(this.extraParams, this.requested); + } - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Recipient.Capabilities.StripeBalance build() { - return new AccountUpdateParams.Configuration.Recipient.Capabilities.StripeBalance( - this.extraParams, this.stripeTransfers); - } + /** + * 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Gbp.Protections.PspMigration#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 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 - * AccountUpdateParams.Configuration.Recipient.Capabilities.StripeBalance#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 + * AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Gbp.Protections.PspMigration#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 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 - * AccountUpdateParams.Configuration.Recipient.Capabilities.StripeBalance#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** Required. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } } - this.extraParams.putAll(map); - return this; - } - - /** - * Enables this Account to receive /v1/transfers into their Stripe Balance - * (/v1/balance). - */ - public Builder setStripeTransfers( - AccountUpdateParams.Configuration.Recipient.Capabilities.StripeBalance - .StripeTransfers - stripeTransfers) { - this.stripeTransfers = stripeTransfers; - return this; } } @Getter @EqualsAndHashCode(callSuper = false) - public static class StripeTransfers { + public static class Usd { /** * 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} @@ -11578,6 +25171,10 @@ public static class StripeTransfers { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + /** * To request a new Capability for an account, pass true. There can be a delay before * the requested Capability becomes active. @@ -11585,8 +25182,10 @@ public static class StripeTransfers { @SerializedName("requested") Boolean requested; - private StripeTransfers(Map extraParams, Boolean requested) { + private Usd( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -11597,21 +25196,22 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Recipient.Capabilities.StripeBalance - .StripeTransfers + public AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usd build() { - return new AccountUpdateParams.Configuration.Recipient.Capabilities.StripeBalance - .StripeTransfers(this.extraParams, this.requested); + return new AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies + .Usd(this.extraParams, this.protections, this.requested); } /** * 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 - * AccountUpdateParams.Configuration.Recipient.Capabilities.StripeBalance.StripeTransfers#extraParams} + * AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usd#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -11626,492 +25226,464 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountUpdateParams.Configuration.Recipient.Capabilities.StripeBalance.StripeTransfers#extraParams} + * AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usd#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); - } - this.extraParams.putAll(map); - return this; - } - - /** - * To request a new Capability for an account, pass true. There can be a delay before - * the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; - } - } - } - } - } - } - - @Getter - @EqualsAndHashCode(callSuper = false) - public static class Storer { - /** - * Represents the state of the configuration, and can be updated to deactivate or re-apply a - * configuration. - */ - @SerializedName("applied") - Boolean applied; - - /** Capabilities to request on the Storer Configuration. */ - @SerializedName("capabilities") - Capabilities capabilities; - - /** - * 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; - - /** List of high-risk activities the business is involved in. */ - @SerializedName("high_risk_activities") - List highRiskActivities; - - /** Description of the high-risk activities the business offers. */ - @SerializedName("high_risk_activities_description") - Object highRiskActivitiesDescription; - - /** Description of the money services offered by the business. */ - @SerializedName("money_services_description") - Object moneyServicesDescription; - - /** Does the business operate in any prohibited countries. */ - @SerializedName("operates_in_prohibited_countries") - Boolean operatesInProhibitedCountries; - - /** Indicates whether the business participates in any regulated activity. */ - @SerializedName("participates_in_regulated_activity") - Boolean participatesInRegulatedActivity; - - /** Primary purpose of the stored funds. */ - @SerializedName("purpose_of_funds") - PurposeOfFunds purposeOfFunds; - - /** Description of the purpose of the stored funds. */ - @SerializedName("purpose_of_funds_description") - Object purposeOfFundsDescription; - - /** Details of the regulated activity if the business participates in one. */ - @SerializedName("regulated_activity") - RegulatedActivity regulatedActivity; - - /** The source of funds for the business, e.g. profits, income, venture capital, etc. */ - @SerializedName("source_of_funds") - SourceOfFunds sourceOfFunds; - - /** Description of the source of funds for the business' account. */ - @SerializedName("source_of_funds_description") - Object sourceOfFundsDescription; - - private Storer( - Boolean applied, - Capabilities capabilities, - Map extraParams, - List highRiskActivities, - Object highRiskActivitiesDescription, - Object moneyServicesDescription, - Boolean operatesInProhibitedCountries, - Boolean participatesInRegulatedActivity, - PurposeOfFunds purposeOfFunds, - Object purposeOfFundsDescription, - RegulatedActivity regulatedActivity, - SourceOfFunds sourceOfFunds, - Object sourceOfFundsDescription) { - this.applied = applied; - this.capabilities = capabilities; - this.extraParams = extraParams; - this.highRiskActivities = highRiskActivities; - this.highRiskActivitiesDescription = highRiskActivitiesDescription; - this.moneyServicesDescription = moneyServicesDescription; - this.operatesInProhibitedCountries = operatesInProhibitedCountries; - this.participatesInRegulatedActivity = participatesInRegulatedActivity; - this.purposeOfFunds = purposeOfFunds; - this.purposeOfFundsDescription = purposeOfFundsDescription; - this.regulatedActivity = regulatedActivity; - this.sourceOfFunds = sourceOfFunds; - this.sourceOfFundsDescription = sourceOfFundsDescription; - } - - public static Builder builder() { - return new Builder(); - } - - public static class Builder { - private Boolean applied; - - private Capabilities capabilities; - - private Map extraParams; + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - private List highRiskActivities; + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usd + .Protections + protections) { + this.protections = protections; + return this; + } - private Object highRiskActivitiesDescription; + /** + * To request a new Capability for an account, pass true. There can be a delay before + * the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } - private Object moneyServicesDescription; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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; - private Boolean operatesInProhibitedCountries; + /** Required. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - private Boolean participatesInRegulatedActivity; + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - private PurposeOfFunds purposeOfFunds; + public static Builder builder() { + return new Builder(); + } - private Object purposeOfFundsDescription; + public static class Builder { + private Map extraParams; - private RegulatedActivity regulatedActivity; + private PspMigration pspMigration; - private SourceOfFunds sourceOfFunds; + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usd + .Protections + build() { + return new AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies + .Usd.Protections(this.extraParams, this.pspMigration); + } - private Object sourceOfFundsDescription; + /** + * 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usd.Protections#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; + } - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Storer build() { - return new AccountUpdateParams.Configuration.Storer( - this.applied, - this.capabilities, - this.extraParams, - this.highRiskActivities, - this.highRiskActivitiesDescription, - this.moneyServicesDescription, - this.operatesInProhibitedCountries, - this.participatesInRegulatedActivity, - this.purposeOfFunds, - this.purposeOfFundsDescription, - this.regulatedActivity, - this.sourceOfFunds, - this.sourceOfFundsDescription); - } + /** + * 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usd.Protections#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - /** - * Represents the state of the configuration, and can be updated to deactivate or re-apply a - * configuration. - */ - public Builder setApplied(Boolean applied) { - this.applied = applied; - return this; - } + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usd + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } - /** Capabilities to request on the Storer Configuration. */ - public Builder setCapabilities( - AccountUpdateParams.Configuration.Storer.Capabilities capabilities) { - this.capabilities = capabilities; - return this; - } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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; - /** - * 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 AccountUpdateParams.Configuration.Storer#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; - } + /** Required. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; - /** - * 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 AccountUpdateParams.Configuration.Storer#extraParams} for the field - * documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); - } - this.extraParams.putAll(map); - return this; - } + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } - /** - * Add an element to `highRiskActivities` list. A list is initialized for the first - * `add/addAll` call, and subsequent calls adds additional elements to the original list. - * See {@link AccountUpdateParams.Configuration.Storer#highRiskActivities} for the field - * documentation. - */ - public Builder addHighRiskActivity( - AccountUpdateParams.Configuration.Storer.HighRiskActivity element) { - if (this.highRiskActivities == null) { - this.highRiskActivities = new ArrayList<>(); - } - this.highRiskActivities.add(element); - return this; - } + public static Builder builder() { + return new Builder(); + } - /** - * Add all elements to `highRiskActivities` list. A list is initialized for the first - * `add/addAll` call, and subsequent calls adds additional elements to the original list. - * See {@link AccountUpdateParams.Configuration.Storer#highRiskActivities} for the field - * documentation. - */ - public Builder addAllHighRiskActivity( - List elements) { - if (this.highRiskActivities == null) { - this.highRiskActivities = new ArrayList<>(); - } - this.highRiskActivities.addAll(elements); - return this; - } + public static class Builder { + private Map extraParams; - /** Description of the high-risk activities the business offers. */ - public Builder setHighRiskActivitiesDescription(String highRiskActivitiesDescription) { - this.highRiskActivitiesDescription = highRiskActivitiesDescription; - return this; - } + private Boolean requested; - /** Description of the high-risk activities the business offers. */ - public Builder setHighRiskActivitiesDescription(EmptyParam highRiskActivitiesDescription) { - this.highRiskActivitiesDescription = highRiskActivitiesDescription; - return this; - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usd + .Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies + .Usd.Protections.PspMigration(this.extraParams, this.requested); + } - /** Description of the money services offered by the business. */ - public Builder setMoneyServicesDescription(String moneyServicesDescription) { - this.moneyServicesDescription = moneyServicesDescription; - 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usd.Protections.PspMigration#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; + } - /** Description of the money services offered by the business. */ - public Builder setMoneyServicesDescription(EmptyParam moneyServicesDescription) { - this.moneyServicesDescription = moneyServicesDescription; - 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usd.Protections.PspMigration#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - /** Does the business operate in any prohibited countries. */ - public Builder setOperatesInProhibitedCountries(Boolean operatesInProhibitedCountries) { - this.operatesInProhibitedCountries = operatesInProhibitedCountries; - return this; - } + /** Required. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } + } - /** Indicates whether the business participates in any regulated activity. */ - public Builder setParticipatesInRegulatedActivity(Boolean participatesInRegulatedActivity) { - this.participatesInRegulatedActivity = participatesInRegulatedActivity; - return this; - } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Usdc { + /** + * 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; - /** Primary purpose of the stored funds. */ - public Builder setPurposeOfFunds( - AccountUpdateParams.Configuration.Storer.PurposeOfFunds purposeOfFunds) { - this.purposeOfFunds = purposeOfFunds; - return this; - } + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; - /** Description of the purpose of the stored funds. */ - public Builder setPurposeOfFundsDescription(String purposeOfFundsDescription) { - this.purposeOfFundsDescription = purposeOfFundsDescription; - return this; - } + /** + * To request a new Capability for an account, pass true. There can be a delay before + * the requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; - /** Description of the purpose of the stored funds. */ - public Builder setPurposeOfFundsDescription(EmptyParam purposeOfFundsDescription) { - this.purposeOfFundsDescription = purposeOfFundsDescription; - return this; - } + private Usdc( + Map extraParams, Protections protections, Boolean requested) { + this.extraParams = extraParams; + this.protections = protections; + this.requested = requested; + } - /** Details of the regulated activity if the business participates in one. */ - public Builder setRegulatedActivity( - AccountUpdateParams.Configuration.Storer.RegulatedActivity regulatedActivity) { - this.regulatedActivity = regulatedActivity; - return this; - } + public static Builder builder() { + return new Builder(); + } - /** The source of funds for the business, e.g. profits, income, venture capital, etc. */ - public Builder setSourceOfFunds( - AccountUpdateParams.Configuration.Storer.SourceOfFunds sourceOfFunds) { - this.sourceOfFunds = sourceOfFunds; - return this; - } + public static class Builder { + private Map extraParams; - /** Description of the source of funds for the business' account. */ - public Builder setSourceOfFundsDescription(String sourceOfFundsDescription) { - this.sourceOfFundsDescription = sourceOfFundsDescription; - return this; - } + private Protections protections; - /** Description of the source of funds for the business' account. */ - public Builder setSourceOfFundsDescription(EmptyParam sourceOfFundsDescription) { - this.sourceOfFundsDescription = sourceOfFundsDescription; - return this; - } - } + private Boolean requested; - @Getter - @EqualsAndHashCode(callSuper = false) - public static class Capabilities { - /** Can provision a consumer financial account. */ - @SerializedName("consumer") - Consumer consumer; + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usdc + build() { + return new AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies + .Usdc(this.extraParams, this.protections, this.requested); + } - /** - * 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; + /** + * 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usdc#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; + } - /** Can provision a financial address to credit/debit a FinancialAccount. */ - @SerializedName("financial_addresses") - FinancialAddresses financialAddresses; + /** + * 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usdc#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - /** Can hold storage-type funds on Stripe. */ - @SerializedName("holds_currencies") - HoldsCurrencies holdsCurrencies; + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usdc + .Protections + protections) { + this.protections = protections; + return this; + } - /** Can pull funds from an external source, owned by yourself, to a FinancialAccount. */ - @SerializedName("inbound_transfers") - InboundTransfers inboundTransfers; + /** + * To request a new Capability for an account, pass true. There can be a delay before + * the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } - /** Can send funds from a FinancialAccount to a destination owned by someone else. */ - @SerializedName("outbound_payments") - OutboundPayments outboundPayments; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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; - /** Can send funds from a FinancialAccount to a destination owned by yourself. */ - @SerializedName("outbound_transfers") - OutboundTransfers outboundTransfers; + /** Required. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - private Capabilities( - Consumer consumer, - Map extraParams, - FinancialAddresses financialAddresses, - HoldsCurrencies holdsCurrencies, - InboundTransfers inboundTransfers, - OutboundPayments outboundPayments, - OutboundTransfers outboundTransfers) { - this.consumer = consumer; - this.extraParams = extraParams; - this.financialAddresses = financialAddresses; - this.holdsCurrencies = holdsCurrencies; - this.inboundTransfers = inboundTransfers; - this.outboundPayments = outboundPayments; - this.outboundTransfers = outboundTransfers; - } + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - public static Builder builder() { - return new Builder(); - } + public static Builder builder() { + return new Builder(); + } - public static class Builder { - private Consumer consumer; + public static class Builder { + private Map extraParams; - private Map extraParams; + private PspMigration pspMigration; - private FinancialAddresses financialAddresses; + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usdc + .Protections + build() { + return new AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies + .Usdc.Protections(this.extraParams, this.pspMigration); + } - private HoldsCurrencies holdsCurrencies; + /** + * 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usdc.Protections#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; + } - private InboundTransfers inboundTransfers; + /** + * 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usdc.Protections#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - private OutboundPayments outboundPayments; + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usdc + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } - private OutboundTransfers outboundTransfers; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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; - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Storer.Capabilities build() { - return new AccountUpdateParams.Configuration.Storer.Capabilities( - this.consumer, - this.extraParams, - this.financialAddresses, - this.holdsCurrencies, - this.inboundTransfers, - this.outboundPayments, - this.outboundTransfers); - } + /** Required. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; - /** Can provision a consumer financial account. */ - public Builder setConsumer( - AccountUpdateParams.Configuration.Storer.Capabilities.Consumer consumer) { - this.consumer = consumer; - return this; - } + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } - /** - * 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 AccountUpdateParams.Configuration.Storer.Capabilities#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; - } + public static Builder builder() { + return new Builder(); + } - /** - * 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 AccountUpdateParams.Configuration.Storer.Capabilities#extraParams} for - * the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); - } - this.extraParams.putAll(map); - return this; - } + public static class Builder { + private Map extraParams; - /** Can provision a financial address to credit/debit a FinancialAccount. */ - public Builder setFinancialAddresses( - AccountUpdateParams.Configuration.Storer.Capabilities.FinancialAddresses - financialAddresses) { - this.financialAddresses = financialAddresses; - return this; - } + private Boolean requested; - /** Can hold storage-type funds on Stripe. */ - public Builder setHoldsCurrencies( - AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies - holdsCurrencies) { - this.holdsCurrencies = holdsCurrencies; - return this; - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usdc + .Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies + .Usdc.Protections.PspMigration(this.extraParams, this.requested); + } - /** Can pull funds from an external source, owned by yourself, to a FinancialAccount. */ - public Builder setInboundTransfers( - AccountUpdateParams.Configuration.Storer.Capabilities.InboundTransfers - inboundTransfers) { - this.inboundTransfers = inboundTransfers; - 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usdc.Protections.PspMigration#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; + } - /** Can send funds from a FinancialAccount to a destination owned by someone else. */ - public Builder setOutboundPayments( - AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments - outboundPayments) { - this.outboundPayments = outboundPayments; - 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usdc.Protections.PspMigration#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - /** Can send funds from a FinancialAccount to a destination owned by yourself. */ - public Builder setOutboundTransfers( - AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers - outboundTransfers) { - this.outboundTransfers = outboundTransfers; - return this; + /** Required. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } } } @Getter @EqualsAndHashCode(callSuper = false) - public static class Consumer { + public static class InboundTransfers { + /** + * Can pull funds from an external bank account owned by yourself to a FinancialAccount. + */ + @SerializedName("bank_accounts") + BankAccounts bankAccounts; + /** * 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. @@ -12122,13 +25694,9 @@ public static class Consumer { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** Can hold storage-type funds on Stripe in a consumer financial account. */ - @SerializedName("holds_currencies") - HoldsCurrencies holdsCurrencies; - - private Consumer(Map extraParams, HoldsCurrencies holdsCurrencies) { + private InboundTransfers(BankAccounts bankAccounts, Map extraParams) { + this.bankAccounts = bankAccounts; this.extraParams = extraParams; - this.holdsCurrencies = holdsCurrencies; } public static Builder builder() { @@ -12136,22 +25704,32 @@ public static Builder builder() { } public static class Builder { - private Map extraParams; + private BankAccounts bankAccounts; - private HoldsCurrencies holdsCurrencies; + private Map extraParams; /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Storer.Capabilities.Consumer build() { - return new AccountUpdateParams.Configuration.Storer.Capabilities.Consumer( - this.extraParams, this.holdsCurrencies); + public AccountUpdateParams.Configuration.Storer.Capabilities.InboundTransfers build() { + return new AccountUpdateParams.Configuration.Storer.Capabilities.InboundTransfers( + this.bankAccounts, this.extraParams); + } + + /** + * Can pull funds from an external bank account owned by yourself to a FinancialAccount. + */ + public Builder setBankAccounts( + AccountUpdateParams.Configuration.Storer.Capabilities.InboundTransfers.BankAccounts + bankAccounts) { + this.bankAccounts = bankAccounts; + 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 - * AccountUpdateParams.Configuration.Storer.Capabilities.Consumer#extraParams} for the - * field documentation. + * AccountUpdateParams.Configuration.Storer.Capabilities.InboundTransfers#extraParams} + * for the field documentation. */ public Builder putExtraParam(String key, Object value) { if (this.extraParams == null) { @@ -12165,8 +25743,8 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountUpdateParams.Configuration.Storer.Capabilities.Consumer#extraParams} for the - * field documentation. + * AccountUpdateParams.Configuration.Storer.Capabilities.InboundTransfers#extraParams} + * for the field documentation. */ public Builder putAllExtraParam(Map map) { if (this.extraParams == null) { @@ -12175,19 +25753,11 @@ public Builder putAllExtraParam(Map map) { this.extraParams.putAll(map); return this; } - - /** Can hold storage-type funds on Stripe in a consumer financial account. */ - public Builder setHoldsCurrencies( - AccountUpdateParams.Configuration.Storer.Capabilities.Consumer.HoldsCurrencies - holdsCurrencies) { - this.holdsCurrencies = holdsCurrencies; - return this; - } } @Getter @EqualsAndHashCode(callSuper = false) - public static class HoldsCurrencies { + public static class BankAccounts { /** * 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} @@ -12198,13 +25768,22 @@ public static class HoldsCurrencies { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** Can hold storage-type funds on Stripe in USD in a consumer financial account. */ - @SerializedName("usd") - Usd usd; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; - private HoldsCurrencies(Map extraParams, Usd usd) { + /** + * To request a new Capability for an account, pass true. There can be a delay before + * the requested Capability becomes active. + */ + @SerializedName("requested") + Boolean requested; + + private BankAccounts( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; - this.usd = usd; + this.protections = protections; + this.requested = requested; } public static Builder builder() { @@ -12214,20 +25793,23 @@ public static Builder builder() { public static class Builder { private Map extraParams; - private Usd usd; + private Protections protections; + + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Storer.Capabilities.Consumer.HoldsCurrencies + public AccountUpdateParams.Configuration.Storer.Capabilities.InboundTransfers + .BankAccounts build() { - return new AccountUpdateParams.Configuration.Storer.Capabilities.Consumer - .HoldsCurrencies(this.extraParams, this.usd); + return new AccountUpdateParams.Configuration.Storer.Capabilities.InboundTransfers + .BankAccounts(this.extraParams, this.protections, this.requested); } /** * 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 - * AccountUpdateParams.Configuration.Storer.Capabilities.Consumer.HoldsCurrencies#extraParams} + * AccountUpdateParams.Configuration.Storer.Capabilities.InboundTransfers.BankAccounts#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -12242,7 +25824,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountUpdateParams.Configuration.Storer.Capabilities.Consumer.HoldsCurrencies#extraParams} + * AccountUpdateParams.Configuration.Storer.Capabilities.InboundTransfers.BankAccounts#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -12253,18 +25835,30 @@ public Builder putAllExtraParam(Map map) { return this; } - /** Can hold storage-type funds on Stripe in USD in a consumer financial account. */ - public Builder setUsd( - AccountUpdateParams.Configuration.Storer.Capabilities.Consumer.HoldsCurrencies.Usd - usd) { - this.usd = usd; + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountUpdateParams.Configuration.Storer.Capabilities.InboundTransfers + .BankAccounts.Protections + protections) { + this.protections = protections; + return this; + } + + /** + * To request a new Capability for an account, pass true. There can be a delay before + * the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; return this; } } @Getter @EqualsAndHashCode(callSuper = false) - public static class Usd { + public static class Protections { /** * 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 @@ -12275,16 +25869,13 @@ public static class Usd { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** - * To request a new Capability for an account, pass true. There can be a delay before - * the requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + /** Required. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - private Usd(Map extraParams, Boolean requested) { + private Protections(Map extraParams, PspMigration pspMigration) { this.extraParams = extraParams; - this.requested = requested; + this.pspMigration = pspMigration; } public static Builder builder() { @@ -12294,21 +25885,21 @@ public static Builder builder() { public static class Builder { private Map extraParams; - private Boolean requested; + private PspMigration pspMigration; /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Storer.Capabilities.Consumer - .HoldsCurrencies.Usd + public AccountUpdateParams.Configuration.Storer.Capabilities.InboundTransfers + .BankAccounts.Protections build() { - return new AccountUpdateParams.Configuration.Storer.Capabilities.Consumer - .HoldsCurrencies.Usd(this.extraParams, this.requested); + return new AccountUpdateParams.Configuration.Storer.Capabilities.InboundTransfers + .BankAccounts.Protections(this.extraParams, this.pspMigration); } /** * 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 - * AccountUpdateParams.Configuration.Storer.Capabilities.Consumer.HoldsCurrencies.Usd#extraParams} + * AccountUpdateParams.Configuration.Storer.Capabilities.InboundTransfers.BankAccounts.Protections#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -12323,24 +25914,102 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountUpdateParams.Configuration.Storer.Capabilities.Consumer.HoldsCurrencies.Usd#extraParams} + * AccountUpdateParams.Configuration.Storer.Capabilities.InboundTransfers.BankAccounts.Protections#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { if (this.extraParams == null) { this.extraParams = new HashMap<>(); } - this.extraParams.putAll(map); - return this; - } + this.extraParams.putAll(map); + return this; + } + + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Storer.Capabilities.InboundTransfers + .BankAccounts.Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Storer.Capabilities.InboundTransfers + .BankAccounts.Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Storer.Capabilities + .InboundTransfers.BankAccounts.Protections.PspMigration( + this.extraParams, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.InboundTransfers.BankAccounts.Protections.PspMigration#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 + * AccountUpdateParams.Configuration.Storer.Capabilities.InboundTransfers.BankAccounts.Protections.PspMigration#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - /** - * To request a new Capability for an account, pass true. There can be a delay - * before the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; + /** Required. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } } } } @@ -12349,15 +26018,16 @@ public Builder setRequested(Boolean requested) { @Getter @EqualsAndHashCode(callSuper = false) - public static class FinancialAddresses { - /** - * Can provision a bank-account-like financial address (VBAN) to credit/debit a - * FinancialAccount. - */ + public static class OutboundPayments { + /** Can send funds from a FinancialAccount to a bank account owned by someone else. */ @SerializedName("bank_accounts") BankAccounts bankAccounts; - /** Can provision a crypto wallet like financial address to credit a FinancialAccount. */ + /** Can send funds from a FinancialAccount to a debit card owned by someone else. */ + @SerializedName("cards") + Cards cards; + + /** Can send funds from a FinancialAccount to a crypto wallet owned by someone else. */ @SerializedName("crypto_wallets") CryptoWallets cryptoWallets; @@ -12371,13 +26041,30 @@ public static class FinancialAddresses { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - private FinancialAddresses( + /** + * Can send funds from a FinancialAccount to another FinancialAccount owned by someone + * else. + */ + @SerializedName("financial_accounts") + FinancialAccounts financialAccounts; + + /** Can send funds from a FinancialAccount to someone else via paper check. */ + @SerializedName("paper_checks") + PaperChecks paperChecks; + + private OutboundPayments( BankAccounts bankAccounts, + Cards cards, CryptoWallets cryptoWallets, - Map extraParams) { + Map extraParams, + FinancialAccounts financialAccounts, + PaperChecks paperChecks) { this.bankAccounts = bankAccounts; + this.cards = cards; this.cryptoWallets = cryptoWallets; this.extraParams = extraParams; + this.financialAccounts = financialAccounts; + this.paperChecks = paperChecks; } public static Builder builder() { @@ -12387,35 +26074,46 @@ public static Builder builder() { public static class Builder { private BankAccounts bankAccounts; + private Cards cards; + private CryptoWallets cryptoWallets; private Map extraParams; + private FinancialAccounts financialAccounts; + + private PaperChecks paperChecks; + /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Storer.Capabilities.FinancialAddresses - build() { - return new AccountUpdateParams.Configuration.Storer.Capabilities.FinancialAddresses( - this.bankAccounts, this.cryptoWallets, this.extraParams); + public AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments build() { + return new AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments( + this.bankAccounts, + this.cards, + this.cryptoWallets, + this.extraParams, + this.financialAccounts, + this.paperChecks); } - /** - * Can provision a bank-account-like financial address (VBAN) to credit/debit a - * FinancialAccount. - */ + /** Can send funds from a FinancialAccount to a bank account owned by someone else. */ public Builder setBankAccounts( - AccountUpdateParams.Configuration.Storer.Capabilities.FinancialAddresses - .BankAccounts + AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments.BankAccounts bankAccounts) { this.bankAccounts = bankAccounts; return this; } - /** - * Can provision a crypto wallet like financial address to credit a FinancialAccount. - */ + /** Can send funds from a FinancialAccount to a debit card owned by someone else. */ + public Builder setCards( + AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments.Cards + cards) { + this.cards = cards; + return this; + } + + /** Can send funds from a FinancialAccount to a crypto wallet owned by someone else. */ public Builder setCryptoWallets( - AccountUpdateParams.Configuration.Storer.Capabilities.FinancialAddresses - .CryptoWallets + AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments.CryptoWallets cryptoWallets) { this.cryptoWallets = cryptoWallets; return this; @@ -12425,7 +26123,7 @@ public Builder setCryptoWallets( * 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 - * AccountUpdateParams.Configuration.Storer.Capabilities.FinancialAddresses#extraParams} + * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -12440,7 +26138,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountUpdateParams.Configuration.Storer.Capabilities.FinancialAddresses#extraParams} + * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -12450,6 +26148,26 @@ public Builder putAllExtraParam(Map map) { this.extraParams.putAll(map); return this; } + + /** + * Can send funds from a FinancialAccount to another FinancialAccount owned by someone + * else. + */ + public Builder setFinancialAccounts( + AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments + .FinancialAccounts + financialAccounts) { + this.financialAccounts = financialAccounts; + return this; + } + + /** Can send funds from a FinancialAccount to someone else via paper check. */ + public Builder setPaperChecks( + AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments.PaperChecks + paperChecks) { + this.paperChecks = paperChecks; + return this; + } } @Getter @@ -12465,6 +26183,10 @@ public static class BankAccounts { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + /** * To request a new Capability for an account, pass true. There can be a delay before * the requested Capability becomes active. @@ -12472,8 +26194,10 @@ public static class BankAccounts { @SerializedName("requested") Boolean requested; - private BankAccounts(Map extraParams, Boolean requested) { + private BankAccounts( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -12484,21 +26208,23 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Storer.Capabilities.FinancialAddresses + public AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments .BankAccounts build() { - return new AccountUpdateParams.Configuration.Storer.Capabilities.FinancialAddresses - .BankAccounts(this.extraParams, this.requested); + return new AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments + .BankAccounts(this.extraParams, this.protections, this.requested); } /** * 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 - * AccountUpdateParams.Configuration.Storer.Capabilities.FinancialAddresses.BankAccounts#extraParams} + * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments.BankAccounts#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -12509,35 +26235,204 @@ public Builder putExtraParam(String key, Object 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 - * AccountUpdateParams.Configuration.Storer.Capabilities.FinancialAddresses.BankAccounts#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** + * 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments.BankAccounts#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments + .BankAccounts.Protections + protections) { + this.protections = protections; + return this; + } + + /** + * To request a new Capability for an account, pass true. There can be a delay before + * the requested Capability becomes active. + */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments + .BankAccounts.Protections + build() { + return new AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments + .BankAccounts.Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments.BankAccounts.Protections#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 + * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments.BankAccounts.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments + .BankAccounts.Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments + .BankAccounts.Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Storer.Capabilities + .OutboundPayments.BankAccounts.Protections.PspMigration( + this.extraParams, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments.BankAccounts.Protections.PspMigration#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 + * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments.BankAccounts.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } } - this.extraParams.putAll(map); - return this; - } - - /** - * To request a new Capability for an account, pass true. There can be a delay before - * the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; } } } @Getter @EqualsAndHashCode(callSuper = false) - public static class CryptoWallets { + public static class Cards { /** * 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} @@ -12548,6 +26443,10 @@ public static class CryptoWallets { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + /** * To request a new Capability for an account, pass true. There can be a delay before * the requested Capability becomes active. @@ -12555,8 +26454,10 @@ public static class CryptoWallets { @SerializedName("requested") Boolean requested; - private CryptoWallets(Map extraParams, Boolean requested) { + private Cards( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -12567,21 +26468,22 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Storer.Capabilities.FinancialAddresses - .CryptoWallets + public AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments.Cards build() { - return new AccountUpdateParams.Configuration.Storer.Capabilities.FinancialAddresses - .CryptoWallets(this.extraParams, this.requested); + return new AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments + .Cards(this.extraParams, this.protections, this.requested); } /** * 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 - * AccountUpdateParams.Configuration.Storer.Capabilities.FinancialAddresses.CryptoWallets#extraParams} + * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments.Cards#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -12596,7 +26498,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountUpdateParams.Configuration.Storer.Capabilities.FinancialAddresses.CryptoWallets#extraParams} + * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments.Cards#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -12607,6 +26509,17 @@ public Builder putAllExtraParam(Map map) { return this; } + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments.Cards + .Protections + protections) { + this.protections = protections; + return this; + } + /** * To request a new Capability for an account, pass true. There can be a delay before * the requested Capability becomes active. @@ -12616,130 +26529,169 @@ public Builder setRequested(Boolean requested) { return this; } } - } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class HoldsCurrencies { - /** Can hold storage-type funds on Stripe in EUR. */ - @SerializedName("eur") - Eur eur; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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; - /** - * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - /** Can hold storage-type funds on Stripe in GBP. */ - @SerializedName("gbp") - Gbp gbp; + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - /** Can hold storage-type funds on Stripe in USD. */ - @SerializedName("usd") - Usd usd; + public static Builder builder() { + return new Builder(); + } - /** Can hold storage-type funds on Stripe in USDC. */ - @SerializedName("usdc") - Usdc usdc; + public static class Builder { + private Map extraParams; - private HoldsCurrencies( - Eur eur, Map extraParams, Gbp gbp, Usd usd, Usdc usdc) { - this.eur = eur; - this.extraParams = extraParams; - this.gbp = gbp; - this.usd = usd; - this.usdc = usdc; - } + private PspMigration pspMigration; - public static Builder builder() { - return new Builder(); - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments.Cards + .Protections + build() { + return new AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments + .Cards.Protections(this.extraParams, this.pspMigration); + } - public static class Builder { - private Eur eur; + /** + * 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments.Cards.Protections#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; + } - private Map extraParams; + /** + * 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments.Cards.Protections#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - private Gbp gbp; + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments.Cards + .Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } - private Usd usd; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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; - private Usdc usdc; + /** Required. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies build() { - return new AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies( - this.eur, this.extraParams, this.gbp, this.usd, this.usdc); - } + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } - /** Can hold storage-type funds on Stripe in EUR. */ - public Builder setEur( - AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Eur eur) { - this.eur = eur; - return this; - } + public static Builder builder() { + return new Builder(); + } - /** - * 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 - * AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies#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; - } + public static class Builder { + private Map extraParams; - /** - * 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 - * AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); - } - this.extraParams.putAll(map); - return this; - } + private Boolean requested; - /** Can hold storage-type funds on Stripe in GBP. */ - public Builder setGbp( - AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Gbp gbp) { - this.gbp = gbp; - return this; - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments + .Cards.Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Storer.Capabilities + .OutboundPayments.Cards.Protections.PspMigration( + this.extraParams, this.requested); + } - /** Can hold storage-type funds on Stripe in USD. */ - public Builder setUsd( - AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usd usd) { - this.usd = usd; - 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments.Cards.Protections.PspMigration#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; + } - /** Can hold storage-type funds on Stripe in USDC. */ - public Builder setUsdc( - AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usdc usdc) { - this.usdc = usdc; - 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments.Cards.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } } } @Getter @EqualsAndHashCode(callSuper = false) - public static class Eur { + public static class CryptoWallets { /** * 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} @@ -12750,6 +26702,10 @@ public static class Eur { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + /** * To request a new Capability for an account, pass true. There can be a delay before * the requested Capability becomes active. @@ -12757,8 +26713,10 @@ public static class Eur { @SerializedName("requested") Boolean requested; - private Eur(Map extraParams, Boolean requested) { + private CryptoWallets( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -12769,20 +26727,23 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Eur + public AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments + .CryptoWallets build() { - return new AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies - .Eur(this.extraParams, this.requested); + return new AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments + .CryptoWallets(this.extraParams, this.protections, this.requested); } /** * 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 - * AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Eur#extraParams} + * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments.CryptoWallets#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -12797,7 +26758,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Eur#extraParams} + * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments.CryptoWallets#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -12808,6 +26769,17 @@ public Builder putAllExtraParam(Map map) { return this; } + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments + .CryptoWallets.Protections + protections) { + this.protections = protections; + return this; + } + /** * To request a new Capability for an account, pass true. There can be a delay before * the requested Capability becomes active. @@ -12817,11 +26789,169 @@ public Builder setRequested(Boolean requested) { return this; } } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; + + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments + .CryptoWallets.Protections + build() { + return new AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments + .CryptoWallets.Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments.CryptoWallets.Protections#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 + * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments.CryptoWallets.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments + .CryptoWallets.Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments + .CryptoWallets.Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Storer.Capabilities + .OutboundPayments.CryptoWallets.Protections.PspMigration( + this.extraParams, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments.CryptoWallets.Protections.PspMigration#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 + * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments.CryptoWallets.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } + } } @Getter @EqualsAndHashCode(callSuper = false) - public static class Gbp { + public static class FinancialAccounts { /** * 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} @@ -12832,6 +26962,10 @@ public static class Gbp { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + /** * To request a new Capability for an account, pass true. There can be a delay before * the requested Capability becomes active. @@ -12839,8 +26973,10 @@ public static class Gbp { @SerializedName("requested") Boolean requested; - private Gbp(Map extraParams, Boolean requested) { + private FinancialAccounts( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -12851,20 +26987,23 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Gbp + public AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments + .FinancialAccounts build() { - return new AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies - .Gbp(this.extraParams, this.requested); + return new AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments + .FinancialAccounts(this.extraParams, this.protections, this.requested); } /** * 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 - * AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Gbp#extraParams} + * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments.FinancialAccounts#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -12879,7 +27018,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Gbp#extraParams} + * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments.FinancialAccounts#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -12890,6 +27029,17 @@ public Builder putAllExtraParam(Map map) { return this; } + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments + .FinancialAccounts.Protections + protections) { + this.protections = protections; + return this; + } + /** * To request a new Capability for an account, pass true. There can be a delay before * the requested Capability becomes active. @@ -12899,93 +27049,169 @@ public Builder setRequested(Boolean requested) { return this; } } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class Usd { - /** - * 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; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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; - /** - * To request a new Capability for an account, pass true. There can be a delay before - * the requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + /** Required. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - private Usd(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PspMigration pspMigration; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments + .FinancialAccounts.Protections + build() { + return new AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments + .FinancialAccounts.Protections(this.extraParams, this.pspMigration); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments.FinancialAccounts.Protections#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 + * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments.FinancialAccounts.Protections#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. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments + .FinancialAccounts.Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; + + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } - public static Builder builder() { - return new Builder(); - } + public static class Builder { + private Map extraParams; - public static class Builder { - private Map extraParams; + private Boolean requested; - private Boolean requested; + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments + .FinancialAccounts.Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Storer.Capabilities + .OutboundPayments.FinancialAccounts.Protections.PspMigration( + this.extraParams, this.requested); + } - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usd - build() { - return new AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies - .Usd(this.extraParams, this.requested); - } + /** + * 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments.FinancialAccounts.Protections.PspMigration#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 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 - * AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usd#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 + * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments.FinancialAccounts.Protections.PspMigration#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 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 - * AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usd#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** Required. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } } - this.extraParams.putAll(map); - return this; - } - - /** - * To request a new Capability for an account, pass true. There can be a delay before - * the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; } } } @Getter @EqualsAndHashCode(callSuper = false) - public static class Usdc { + public static class PaperChecks { /** * 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} @@ -12996,6 +27222,10 @@ public static class Usdc { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + /** * To request a new Capability for an account, pass true. There can be a delay before * the requested Capability becomes active. @@ -13003,8 +27233,10 @@ public static class Usdc { @SerializedName("requested") Boolean requested; - private Usdc(Map extraParams, Boolean requested) { + private PaperChecks( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -13015,20 +27247,23 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usdc + public AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments + .PaperChecks build() { - return new AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies - .Usdc(this.extraParams, this.requested); + return new AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments + .PaperChecks(this.extraParams, this.protections, this.requested); } /** * 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 - * AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usdc#extraParams} + * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments.PaperChecks#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -13043,7 +27278,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountUpdateParams.Configuration.Storer.Capabilities.HoldsCurrencies.Usdc#extraParams} + * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments.PaperChecks#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -13054,6 +27289,17 @@ public Builder putAllExtraParam(Map map) { return this; } + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments.PaperChecks + .Protections + protections) { + this.protections = protections; + return this; + } + /** * To request a new Capability for an account, pass true. There can be a delay before * the requested Capability becomes active. @@ -13063,168 +27309,162 @@ public Builder setRequested(Boolean requested) { return this; } } - } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class InboundTransfers { - /** - * Can pull funds from an external bank account owned by yourself to a FinancialAccount. - */ - @SerializedName("bank_accounts") - BankAccounts bankAccounts; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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; - /** - * 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. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - private InboundTransfers(BankAccounts bankAccounts, Map extraParams) { - this.bankAccounts = bankAccounts; - this.extraParams = extraParams; - } + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - public static Builder builder() { - return new Builder(); - } + public static Builder builder() { + return new Builder(); + } - public static class Builder { - private BankAccounts bankAccounts; + public static class Builder { + private Map extraParams; - private Map extraParams; + private PspMigration pspMigration; - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Storer.Capabilities.InboundTransfers build() { - return new AccountUpdateParams.Configuration.Storer.Capabilities.InboundTransfers( - this.bankAccounts, this.extraParams); - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments + .PaperChecks.Protections + build() { + return new AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments + .PaperChecks.Protections(this.extraParams, this.pspMigration); + } - /** - * Can pull funds from an external bank account owned by yourself to a FinancialAccount. - */ - public Builder setBankAccounts( - AccountUpdateParams.Configuration.Storer.Capabilities.InboundTransfers.BankAccounts - bankAccounts) { - this.bankAccounts = bankAccounts; - 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments.PaperChecks.Protections#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 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 - * AccountUpdateParams.Configuration.Storer.Capabilities.InboundTransfers#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 + * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments.PaperChecks.Protections#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 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 - * AccountUpdateParams.Configuration.Storer.Capabilities.InboundTransfers#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments + .PaperChecks.Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } } - this.extraParams.putAll(map); - return this; - } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class BankAccounts { - /** - * 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; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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; - /** - * To request a new Capability for an account, pass true. There can be a delay before - * the requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + /** Required. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; - private BankAccounts(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } + + public static Builder builder() { + return new Builder(); + } - public static Builder builder() { - return new Builder(); - } + public static class Builder { + private Map extraParams; - public static class Builder { - private Map extraParams; + private Boolean requested; - private Boolean requested; + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments + .PaperChecks.Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Storer.Capabilities + .OutboundPayments.PaperChecks.Protections.PspMigration( + this.extraParams, this.requested); + } - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Storer.Capabilities.InboundTransfers - .BankAccounts - build() { - return new AccountUpdateParams.Configuration.Storer.Capabilities.InboundTransfers - .BankAccounts(this.extraParams, this.requested); - } + /** + * 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments.PaperChecks.Protections.PspMigration#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 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 - * AccountUpdateParams.Configuration.Storer.Capabilities.InboundTransfers.BankAccounts#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 + * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments.PaperChecks.Protections.PspMigration#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 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 - * AccountUpdateParams.Configuration.Storer.Capabilities.InboundTransfers.BankAccounts#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** Required. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } } - this.extraParams.putAll(map); - return this; - } - - /** - * To request a new Capability for an account, pass true. There can be a delay before - * the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; } } } @@ -13232,16 +27472,12 @@ public Builder setRequested(Boolean requested) { @Getter @EqualsAndHashCode(callSuper = false) - public static class OutboundPayments { - /** Can send funds from a FinancialAccount to a bank account owned by someone else. */ + public static class OutboundTransfers { + /** Can send funds from a FinancialAccount to a bank account owned by yourself. */ @SerializedName("bank_accounts") BankAccounts bankAccounts; - /** Can send funds from a FinancialAccount to a debit card owned by someone else. */ - @SerializedName("cards") - Cards cards; - - /** Can send funds from a FinancialAccount to a crypto wallet owned by someone else. */ + /** Can send funds from a FinancialAccount to a crypto wallet owned by yourself. */ @SerializedName("crypto_wallets") CryptoWallets cryptoWallets; @@ -13256,29 +27492,20 @@ public static class OutboundPayments { Map extraParams; /** - * Can send funds from a FinancialAccount to another FinancialAccount owned by someone - * else. + * Can send funds from a FinancialAccount to another FinancialAccount owned by yourself. */ @SerializedName("financial_accounts") FinancialAccounts financialAccounts; - /** Can send funds from a FinancialAccount to someone else via paper check. */ - @SerializedName("paper_checks") - PaperChecks paperChecks; - - private OutboundPayments( + private OutboundTransfers( BankAccounts bankAccounts, - Cards cards, CryptoWallets cryptoWallets, Map extraParams, - FinancialAccounts financialAccounts, - PaperChecks paperChecks) { + FinancialAccounts financialAccounts) { this.bankAccounts = bankAccounts; - this.cards = cards; this.cryptoWallets = cryptoWallets; this.extraParams = extraParams; this.financialAccounts = financialAccounts; - this.paperChecks = paperChecks; } public static Builder builder() { @@ -13288,46 +27515,30 @@ public static Builder builder() { public static class Builder { private BankAccounts bankAccounts; - private Cards cards; - private CryptoWallets cryptoWallets; private Map extraParams; private FinancialAccounts financialAccounts; - private PaperChecks paperChecks; - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments build() { - return new AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments( - this.bankAccounts, - this.cards, - this.cryptoWallets, - this.extraParams, - this.financialAccounts, - this.paperChecks); + public AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers build() { + return new AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers( + this.bankAccounts, this.cryptoWallets, this.extraParams, this.financialAccounts); } - /** Can send funds from a FinancialAccount to a bank account owned by someone else. */ + /** Can send funds from a FinancialAccount to a bank account owned by yourself. */ public Builder setBankAccounts( - AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments.BankAccounts + AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers.BankAccounts bankAccounts) { this.bankAccounts = bankAccounts; return this; } - /** Can send funds from a FinancialAccount to a debit card owned by someone else. */ - public Builder setCards( - AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments.Cards - cards) { - this.cards = cards; - return this; - } - - /** Can send funds from a FinancialAccount to a crypto wallet owned by someone else. */ + /** Can send funds from a FinancialAccount to a crypto wallet owned by yourself. */ public Builder setCryptoWallets( - AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments.CryptoWallets + AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers + .CryptoWallets cryptoWallets) { this.cryptoWallets = cryptoWallets; return this; @@ -13336,140 +27547,48 @@ public Builder setCryptoWallets( /** * 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 - * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments#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 - * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); - } - this.extraParams.putAll(map); - return this; - } - - /** - * Can send funds from a FinancialAccount to another FinancialAccount owned by someone - * else. - */ - public Builder setFinancialAccounts( - AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments - .FinancialAccounts - financialAccounts) { - this.financialAccounts = financialAccounts; - return this; - } - - /** Can send funds from a FinancialAccount to someone else via paper check. */ - public Builder setPaperChecks( - AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments.PaperChecks - paperChecks) { - this.paperChecks = paperChecks; - return this; - } - } - - @Getter - @EqualsAndHashCode(callSuper = false) - public static class BankAccounts { - /** - * 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; - - /** - * To request a new Capability for an account, pass true. There can be a delay before - * the requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; - - private BankAccounts(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } - - public static Builder builder() { - return new Builder(); - } - - public static class Builder { - private Map extraParams; - - private Boolean requested; - - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments - .BankAccounts - build() { - return new AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments - .BankAccounts(this.extraParams, this.requested); - } - - /** - * 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 - * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments.BankAccounts#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 - * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments.BankAccounts#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); - } - this.extraParams.putAll(map); - return this; + * original map. See {@link + * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers#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; + } - /** - * To request a new Capability for an account, pass true. There can be a delay before - * the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); } + this.extraParams.putAll(map); + return this; + } + + /** + * Can send funds from a FinancialAccount to another FinancialAccount owned by yourself. + */ + public Builder setFinancialAccounts( + AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers + .FinancialAccounts + financialAccounts) { + this.financialAccounts = financialAccounts; + return this; } } @Getter @EqualsAndHashCode(callSuper = false) - public static class Cards { + public static class BankAccounts { /** * 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} @@ -13480,6 +27599,10 @@ public static class Cards { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + /** * To request a new Capability for an account, pass true. There can be a delay before * the requested Capability becomes active. @@ -13487,8 +27610,10 @@ public static class Cards { @SerializedName("requested") Boolean requested; - private Cards(Map extraParams, Boolean requested) { + private BankAccounts( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -13499,20 +27624,23 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments.Cards + public AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers + .BankAccounts build() { - return new AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments - .Cards(this.extraParams, this.requested); + return new AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers + .BankAccounts(this.extraParams, this.protections, this.requested); } /** * 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 - * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments.Cards#extraParams} + * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers.BankAccounts#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -13527,7 +27655,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments.Cards#extraParams} + * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers.BankAccounts#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -13538,6 +27666,17 @@ public Builder putAllExtraParam(Map map) { return this; } + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers + .BankAccounts.Protections + protections) { + this.protections = protections; + return this; + } + /** * To request a new Capability for an account, pass true. There can be a delay before * the requested Capability becomes active. @@ -13547,177 +27686,169 @@ public Builder setRequested(Boolean requested) { return this; } } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class CryptoWallets { - /** - * 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; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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; - /** - * To request a new Capability for an account, pass true. There can be a delay before - * the requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + /** Required. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - private CryptoWallets(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - public static Builder builder() { - return new Builder(); - } + public static Builder builder() { + return new Builder(); + } - public static class Builder { - private Map extraParams; + public static class Builder { + private Map extraParams; - private Boolean requested; + private PspMigration pspMigration; - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments - .CryptoWallets - build() { - return new AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments - .CryptoWallets(this.extraParams, this.requested); - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers + .BankAccounts.Protections + build() { + return new AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers + .BankAccounts.Protections(this.extraParams, this.pspMigration); + } - /** - * 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 - * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments.CryptoWallets#extraParams} - * for the field documentation. - */ - public Builder putExtraParam(String key, Object value) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** + * 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers.BankAccounts.Protections#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; } - 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 - * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments.CryptoWallets#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** + * 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers.BankAccounts.Protections#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; } - this.extraParams.putAll(map); - return this; - } - /** - * To request a new Capability for an account, pass true. There can be a delay before - * the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers + .BankAccounts.Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } } - } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class FinancialAccounts { - /** - * 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; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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; - /** - * To request a new Capability for an account, pass true. There can be a delay before - * the requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + /** Required. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; - private FinancialAccounts(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } - public static Builder builder() { - return new Builder(); - } + public static Builder builder() { + return new Builder(); + } - public static class Builder { - private Map extraParams; + public static class Builder { + private Map extraParams; - private Boolean requested; + private Boolean requested; - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments - .FinancialAccounts - build() { - return new AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments - .FinancialAccounts(this.extraParams, this.requested); - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers + .BankAccounts.Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Storer.Capabilities + .OutboundTransfers.BankAccounts.Protections.PspMigration( + this.extraParams, this.requested); + } - /** - * 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 - * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments.FinancialAccounts#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 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers.BankAccounts.Protections.PspMigration#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 - * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments.FinancialAccounts#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 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers.BankAccounts.Protections.PspMigration#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - /** - * To request a new Capability for an account, pass true. There can be a delay before - * the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; + /** Required. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } } } } @Getter @EqualsAndHashCode(callSuper = false) - public static class PaperChecks { + public static class CryptoWallets { /** * 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} @@ -13728,6 +27859,10 @@ public static class PaperChecks { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + /** * To request a new Capability for an account, pass true. There can be a delay before * the requested Capability becomes active. @@ -13735,8 +27870,10 @@ public static class PaperChecks { @SerializedName("requested") Boolean requested; - private PaperChecks(Map extraParams, Boolean requested) { + private CryptoWallets( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -13747,21 +27884,23 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments - .PaperChecks + public AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers + .CryptoWallets build() { - return new AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments - .PaperChecks(this.extraParams, this.requested); + return new AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers + .CryptoWallets(this.extraParams, this.protections, this.requested); } /** * 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 - * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments.PaperChecks#extraParams} + * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers.CryptoWallets#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -13776,7 +27915,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundPayments.PaperChecks#extraParams} + * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers.CryptoWallets#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -13787,6 +27926,17 @@ public Builder putAllExtraParam(Map map) { return this; } + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers + .CryptoWallets.Protections + protections) { + this.protections = protections; + return this; + } + /** * To request a new Capability for an account, pass true. There can be a delay before * the requested Capability becomes active. @@ -13796,128 +27946,169 @@ public Builder setRequested(Boolean requested) { return this; } } - } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class OutboundTransfers { - /** Can send funds from a FinancialAccount to a bank account owned by yourself. */ - @SerializedName("bank_accounts") - BankAccounts bankAccounts; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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; - /** Can send funds from a FinancialAccount to a crypto wallet owned by yourself. */ - @SerializedName("crypto_wallets") - CryptoWallets cryptoWallets; + /** Required. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - /** - * 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; + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - /** - * Can send funds from a FinancialAccount to another FinancialAccount owned by yourself. - */ - @SerializedName("financial_accounts") - FinancialAccounts financialAccounts; + public static Builder builder() { + return new Builder(); + } - private OutboundTransfers( - BankAccounts bankAccounts, - CryptoWallets cryptoWallets, - Map extraParams, - FinancialAccounts financialAccounts) { - this.bankAccounts = bankAccounts; - this.cryptoWallets = cryptoWallets; - this.extraParams = extraParams; - this.financialAccounts = financialAccounts; - } + public static class Builder { + private Map extraParams; - public static Builder builder() { - return new Builder(); - } + private PspMigration pspMigration; - public static class Builder { - private BankAccounts bankAccounts; + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers + .CryptoWallets.Protections + build() { + return new AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers + .CryptoWallets.Protections(this.extraParams, this.pspMigration); + } - private CryptoWallets cryptoWallets; + /** + * 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers.CryptoWallets.Protections#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; + } - private Map extraParams; + /** + * 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers.CryptoWallets.Protections#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - private FinancialAccounts financialAccounts; + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers + .CryptoWallets.Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } + } - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers build() { - return new AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers( - this.bankAccounts, this.cryptoWallets, this.extraParams, this.financialAccounts); - } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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; - /** Can send funds from a FinancialAccount to a bank account owned by yourself. */ - public Builder setBankAccounts( - AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers.BankAccounts - bankAccounts) { - this.bankAccounts = bankAccounts; - return this; - } + /** Required. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; - /** Can send funds from a FinancialAccount to a crypto wallet owned by yourself. */ - public Builder setCryptoWallets( - AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers - .CryptoWallets - cryptoWallets) { - this.cryptoWallets = cryptoWallets; - return this; - } + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } - /** - * 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 - * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers#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; - } + public static Builder builder() { + return new Builder(); + } - /** - * 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 - * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); - } - this.extraParams.putAll(map); - return this; - } + public static class Builder { + private Map extraParams; - /** - * Can send funds from a FinancialAccount to another FinancialAccount owned by yourself. - */ - public Builder setFinancialAccounts( - AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers - .FinancialAccounts - financialAccounts) { - this.financialAccounts = financialAccounts; - return this; + private Boolean requested; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers + .CryptoWallets.Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Storer.Capabilities + .OutboundTransfers.CryptoWallets.Protections.PspMigration( + this.extraParams, this.requested); + } + + /** + * 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers.CryptoWallets.Protections.PspMigration#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 + * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers.CryptoWallets.Protections.PspMigration#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. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } + } } } @Getter @EqualsAndHashCode(callSuper = false) - public static class BankAccounts { + public static class FinancialAccounts { /** * 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} @@ -13928,6 +28119,10 @@ public static class BankAccounts { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Protection types to request for this capability (e.g. "psp_migration"). */ + @SerializedName("protections") + Protections protections; + /** * To request a new Capability for an account, pass true. There can be a delay before * the requested Capability becomes active. @@ -13935,8 +28130,10 @@ public static class BankAccounts { @SerializedName("requested") Boolean requested; - private BankAccounts(Map extraParams, Boolean requested) { + private FinancialAccounts( + Map extraParams, Protections protections, Boolean requested) { this.extraParams = extraParams; + this.protections = protections; this.requested = requested; } @@ -13947,21 +28144,23 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Protections protections; + private Boolean requested; /** Finalize and obtain parameter instance from this builder. */ public AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers - .BankAccounts + .FinancialAccounts build() { return new AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers - .BankAccounts(this.extraParams, this.requested); + .FinancialAccounts(this.extraParams, this.protections, this.requested); } /** * 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 - * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers.BankAccounts#extraParams} + * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers.FinancialAccounts#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -13976,7 +28175,7 @@ public Builder putExtraParam(String key, Object value) { * 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 - * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers.BankAccounts#extraParams} + * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers.FinancialAccounts#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -13987,6 +28186,17 @@ public Builder putAllExtraParam(Map map) { return this; } + /** + * Protection types to request for this capability (e.g. "psp_migration"). + */ + public Builder setProtections( + AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers + .FinancialAccounts.Protections + protections) { + this.protections = protections; + return this; + } + /** * To request a new Capability for an account, pass true. There can be a delay before * the requested Capability becomes active. @@ -13996,170 +28206,162 @@ public Builder setRequested(Boolean requested) { return this; } } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class CryptoWallets { - /** - * 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; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Protections { + /** + * 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; - /** - * To request a new Capability for an account, pass true. There can be a delay before - * the requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + /** Required. Parameter to request psp_migration protection. */ + @SerializedName("psp_migration") + PspMigration pspMigration; - private CryptoWallets(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + private Protections(Map extraParams, PspMigration pspMigration) { + this.extraParams = extraParams; + this.pspMigration = pspMigration; + } - public static Builder builder() { - return new Builder(); - } + public static Builder builder() { + return new Builder(); + } - public static class Builder { - private Map extraParams; + public static class Builder { + private Map extraParams; - private Boolean requested; + private PspMigration pspMigration; - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers - .CryptoWallets - build() { - return new AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers - .CryptoWallets(this.extraParams, this.requested); - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers + .FinancialAccounts.Protections + build() { + return new AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers + .FinancialAccounts.Protections(this.extraParams, this.pspMigration); + } - /** - * 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 - * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers.CryptoWallets#extraParams} - * for the field documentation. - */ - public Builder putExtraParam(String key, Object value) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** + * 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers.FinancialAccounts.Protections#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; } - 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 - * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers.CryptoWallets#extraParams} - * for the field documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** + * 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers.FinancialAccounts.Protections#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; } - this.extraParams.putAll(map); - return this; - } - /** - * To request a new Capability for an account, pass true. There can be a delay before - * the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; + /** Required. Parameter to request psp_migration protection. */ + public Builder setPspMigration( + AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers + .FinancialAccounts.Protections.PspMigration + pspMigration) { + this.pspMigration = pspMigration; + return this; + } } - } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class FinancialAccounts { - /** - * 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; + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PspMigration { + /** + * 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; - /** - * To request a new Capability for an account, pass true. There can be a delay before - * the requested Capability becomes active. - */ - @SerializedName("requested") - Boolean requested; + /** Required. To request a protection, pass true. */ + @SerializedName("requested") + Boolean requested; - private FinancialAccounts(Map extraParams, Boolean requested) { - this.extraParams = extraParams; - this.requested = requested; - } + private PspMigration(Map extraParams, Boolean requested) { + this.extraParams = extraParams; + this.requested = requested; + } - public static Builder builder() { - return new Builder(); - } + public static Builder builder() { + return new Builder(); + } - public static class Builder { - private Map extraParams; + public static class Builder { + private Map extraParams; - private Boolean requested; + private Boolean requested; - /** Finalize and obtain parameter instance from this builder. */ - public AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers - .FinancialAccounts - build() { - return new AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers - .FinancialAccounts(this.extraParams, this.requested); - } + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers + .FinancialAccounts.Protections.PspMigration + build() { + return new AccountUpdateParams.Configuration.Storer.Capabilities + .OutboundTransfers.FinancialAccounts.Protections.PspMigration( + this.extraParams, this.requested); + } - /** - * 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 - * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers.FinancialAccounts#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 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers.FinancialAccounts.Protections.PspMigration#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 - * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers.FinancialAccounts#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 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 + * AccountUpdateParams.Configuration.Storer.Capabilities.OutboundTransfers.FinancialAccounts.Protections.PspMigration#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } - /** - * To request a new Capability for an account, pass true. There can be a delay before - * the requested Capability becomes active. - */ - public Builder setRequested(Boolean requested) { - this.requested = requested; - return this; + /** Required. To request a protection, pass true. */ + public Builder setRequested(Boolean requested) { + this.requested = requested; + return this; + } + } } } } From df4ab281c386d2299d2764c0fe615ea5e5ff7610 Mon Sep 17 00:00:00 2001 From: Stripe OpenAPI <105521251+stripe-openapi[bot]@users.noreply.github.com> Date: Fri, 12 Jun 2026 17:39:30 +0000 Subject: [PATCH 05/14] Update generated code for v2299 and 161b47dfc5d5f9332c906a572b90ce8551a2f752 --- CODEGEN_VERSION | 2 +- OPENAPI_VERSION | 2 +- src/main/java/com/stripe/model/Order.java | 9 ++++- .../java/com/stripe/model/PaymentIntent.java | 25 +++++++++++++- .../java/com/stripe/model/SetupIntent.java | 16 +++++++++ .../com/stripe/param/OrderCreateParams.java | 25 +++++++++++++- .../com/stripe/param/OrderUpdateParams.java | 34 ++++++++++++++++++- .../param/PaymentIntentConfirmParams.java | 25 +++++++++++++- .../param/PaymentIntentCreateParams.java | 25 +++++++++++++- .../param/PaymentIntentUpdateParams.java | 34 ++++++++++++++++++- 10 files changed, 188 insertions(+), 9 deletions(-) diff --git a/CODEGEN_VERSION b/CODEGEN_VERSION index 729af10e736..e2ada73c28b 100644 --- a/CODEGEN_VERSION +++ b/CODEGEN_VERSION @@ -1 +1 @@ -7665b3a0f31b86696e50b95679348d8b12dfb125 \ No newline at end of file +161b47dfc5d5f9332c906a572b90ce8551a2f752 \ No newline at end of file diff --git a/OPENAPI_VERSION b/OPENAPI_VERSION index 5e9dd1c684d..e656cda126a 100644 --- a/OPENAPI_VERSION +++ b/OPENAPI_VERSION @@ -1 +1 @@ -v2298 \ No newline at end of file +v2299 \ 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 e0f707d77bb..e88b25f1367 100644 --- a/src/main/java/com/stripe/model/Order.java +++ b/src/main/java/com/stripe/model/Order.java @@ -1524,10 +1524,17 @@ public static class WechatPay extends StripeObject { @SerializedName("app_id") String appId; + /** + * The unique buyer ID for the app ID registered with WeChat Pay. Only required when + * client is mini_program. + */ + @SerializedName("buyer_id") + String buyerId; + /** * The client type that the end customer will pay from * - *

One of {@code android}, {@code ios}, or {@code web}. + *

One of {@code android}, {@code ios}, {@code mini_program}, or {@code web}. */ @SerializedName("client") String client; diff --git a/src/main/java/com/stripe/model/PaymentIntent.java b/src/main/java/com/stripe/model/PaymentIntent.java index 263f7b4f6eb..0e81479dd0a 100644 --- a/src/main/java/com/stripe/model/PaymentIntent.java +++ b/src/main/java/com/stripe/model/PaymentIntent.java @@ -2478,6 +2478,9 @@ public static class NextAction extends StripeObject { @SerializedName("wechat_pay_display_qr_code") WechatPayDisplayQrCode wechatPayDisplayQrCode; + @SerializedName("wechat_pay_handle_app_redirect") + WechatPayHandleAppRedirect wechatPayHandleAppRedirect; + @SerializedName("wechat_pay_redirect_to_android_app") WechatPayRedirectToAndroidApp wechatPayRedirectToAndroidApp; @@ -3627,6 +3630,19 @@ public static class WechatPayDisplayQrCode extends StripeObject { String imageUrlSvg; } + /** + * For more details about WechatPayHandleAppRedirect, please refer to the API Reference. + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class WechatPayHandleAppRedirect extends StripeObject { + /** Session ID of the WeChat Pay signing session. */ + @SerializedName("session_id") + String sessionId; + } + /** * For more details about WechatPayRedirectToAndroidApp, please refer to the API Reference. @@ -8784,10 +8800,17 @@ public static class WechatPay extends StripeObject { @SerializedName("app_id") String appId; + /** + * The unique buyer ID for the app ID registered with WeChat Pay. Only required when client is + * mini_program. + */ + @SerializedName("buyer_id") + String buyerId; + /** * The client type that the end customer will pay from * - *

One of {@code android}, {@code ios}, or {@code web}. + *

One of {@code android}, {@code ios}, {@code mini_program}, or {@code web}. */ @SerializedName("client") String client; diff --git a/src/main/java/com/stripe/model/SetupIntent.java b/src/main/java/com/stripe/model/SetupIntent.java index 7cc3c61ddd8..fd667b6aeff 100644 --- a/src/main/java/com/stripe/model/SetupIntent.java +++ b/src/main/java/com/stripe/model/SetupIntent.java @@ -930,6 +930,9 @@ public static class NextAction extends StripeObject { @SerializedName("verify_with_microdeposits") VerifyWithMicrodeposits verifyWithMicrodeposits; + @SerializedName("wechat_pay_handle_app_redirect") + WechatPayHandleAppRedirect wechatPayHandleAppRedirect; + /** * For more details about BlikAuthorize, please refer to the API Reference. @@ -1105,6 +1108,19 @@ public static class VerifyWithMicrodeposits extends StripeObject { @SerializedName("microdeposit_type") String microdepositType; } + + /** + * For more details about WechatPayHandleAppRedirect, please refer to the API Reference. + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class WechatPayHandleAppRedirect extends StripeObject { + /** Session ID of the WeChat Pay signing session. */ + @SerializedName("session_id") + String sessionId; + } } /** diff --git a/src/main/java/com/stripe/param/OrderCreateParams.java b/src/main/java/com/stripe/param/OrderCreateParams.java index 2d59300ee79..e81a1f8c2cd 100644 --- a/src/main/java/com/stripe/param/OrderCreateParams.java +++ b/src/main/java/com/stripe/param/OrderCreateParams.java @@ -14149,6 +14149,13 @@ public static class WechatPay { @SerializedName("app_id") String appId; + /** + * The unique buyer ID for the app ID registered with WeChat Pay. Only required when + * client is mini_program. + */ + @SerializedName("buyer_id") + String buyerId; + /** The client type that the end customer will pay from. */ @SerializedName("client") Client client; @@ -14192,10 +14199,12 @@ public static class WechatPay { private WechatPay( String appId, + String buyerId, Client client, Map extraParams, SetupFutureUsage setupFutureUsage) { this.appId = appId; + this.buyerId = buyerId; this.client = client; this.extraParams = extraParams; this.setupFutureUsage = setupFutureUsage; @@ -14208,6 +14217,8 @@ public static Builder builder() { public static class Builder { private String appId; + private String buyerId; + private Client client; private Map extraParams; @@ -14217,7 +14228,7 @@ public static class Builder { /** Finalize and obtain parameter instance from this builder. */ public OrderCreateParams.Payment.Settings.PaymentMethodOptions.WechatPay build() { return new OrderCreateParams.Payment.Settings.PaymentMethodOptions.WechatPay( - this.appId, this.client, this.extraParams, this.setupFutureUsage); + this.appId, this.buyerId, this.client, this.extraParams, this.setupFutureUsage); } /** @@ -14228,6 +14239,15 @@ public Builder setAppId(String appId) { return this; } + /** + * The unique buyer ID for the app ID registered with WeChat Pay. Only required when + * client is mini_program. + */ + public Builder setBuyerId(String buyerId) { + this.buyerId = buyerId; + return this; + } + /** The client type that the end customer will pay from. */ public Builder setClient( OrderCreateParams.Payment.Settings.PaymentMethodOptions.WechatPay.Client client) { @@ -14304,6 +14324,9 @@ public enum Client implements ApiRequestParams.EnumParam { @SerializedName("ios") IOS("ios"), + @SerializedName("mini_program") + MINI_PROGRAM("mini_program"), + @SerializedName("web") WEB("web"); diff --git a/src/main/java/com/stripe/param/OrderUpdateParams.java b/src/main/java/com/stripe/param/OrderUpdateParams.java index 4427185ab46..f31887a949d 100644 --- a/src/main/java/com/stripe/param/OrderUpdateParams.java +++ b/src/main/java/com/stripe/param/OrderUpdateParams.java @@ -15371,6 +15371,13 @@ public static class WechatPay { @SerializedName("app_id") Object appId; + /** + * The unique buyer ID for the app ID registered with WeChat Pay. Only required when + * client is mini_program. + */ + @SerializedName("buyer_id") + Object buyerId; + /** The client type that the end customer will pay from. */ @SerializedName("client") Client client; @@ -15414,10 +15421,12 @@ public static class WechatPay { private WechatPay( Object appId, + Object buyerId, Client client, Map extraParams, SetupFutureUsage setupFutureUsage) { this.appId = appId; + this.buyerId = buyerId; this.client = client; this.extraParams = extraParams; this.setupFutureUsage = setupFutureUsage; @@ -15430,6 +15439,8 @@ public static Builder builder() { public static class Builder { private Object appId; + private Object buyerId; + private Client client; private Map extraParams; @@ -15439,7 +15450,7 @@ public static class Builder { /** Finalize and obtain parameter instance from this builder. */ public OrderUpdateParams.Payment.Settings.PaymentMethodOptions.WechatPay build() { return new OrderUpdateParams.Payment.Settings.PaymentMethodOptions.WechatPay( - this.appId, this.client, this.extraParams, this.setupFutureUsage); + this.appId, this.buyerId, this.client, this.extraParams, this.setupFutureUsage); } /** @@ -15458,6 +15469,24 @@ public Builder setAppId(EmptyParam appId) { return this; } + /** + * The unique buyer ID for the app ID registered with WeChat Pay. Only required when + * client is mini_program. + */ + public Builder setBuyerId(String buyerId) { + this.buyerId = buyerId; + return this; + } + + /** + * The unique buyer ID for the app ID registered with WeChat Pay. Only required when + * client is mini_program. + */ + public Builder setBuyerId(EmptyParam buyerId) { + this.buyerId = buyerId; + return this; + } + /** The client type that the end customer will pay from. */ public Builder setClient( OrderUpdateParams.Payment.Settings.PaymentMethodOptions.WechatPay.Client client) { @@ -15534,6 +15563,9 @@ public enum Client implements ApiRequestParams.EnumParam { @SerializedName("ios") IOS("ios"), + @SerializedName("mini_program") + MINI_PROGRAM("mini_program"), + @SerializedName("web") WEB("web"); diff --git a/src/main/java/com/stripe/param/PaymentIntentConfirmParams.java b/src/main/java/com/stripe/param/PaymentIntentConfirmParams.java index 3969974d743..0d3569b9a7f 100644 --- a/src/main/java/com/stripe/param/PaymentIntentConfirmParams.java +++ b/src/main/java/com/stripe/param/PaymentIntentConfirmParams.java @@ -48967,6 +48967,13 @@ public static class WechatPay { @SerializedName("app_id") String appId; + /** + * The unique buyer ID for the app ID registered with WeChat Pay. Only required when client is + * mini_program. + */ + @SerializedName("buyer_id") + String buyerId; + /** The client type that the end customer will pay from. */ @SerializedName("client") Client client; @@ -49008,10 +49015,12 @@ public static class WechatPay { private WechatPay( String appId, + String buyerId, Client client, Map extraParams, SetupFutureUsage setupFutureUsage) { this.appId = appId; + this.buyerId = buyerId; this.client = client; this.extraParams = extraParams; this.setupFutureUsage = setupFutureUsage; @@ -49024,6 +49033,8 @@ public static Builder builder() { public static class Builder { private String appId; + private String buyerId; + private Client client; private Map extraParams; @@ -49033,7 +49044,7 @@ public static class Builder { /** Finalize and obtain parameter instance from this builder. */ public PaymentIntentConfirmParams.PaymentMethodOptions.WechatPay build() { return new PaymentIntentConfirmParams.PaymentMethodOptions.WechatPay( - this.appId, this.client, this.extraParams, this.setupFutureUsage); + this.appId, this.buyerId, this.client, this.extraParams, this.setupFutureUsage); } /** The app ID registered with WeChat Pay. Only required when client is ios or android. */ @@ -49042,6 +49053,15 @@ public Builder setAppId(String appId) { return this; } + /** + * The unique buyer ID for the app ID registered with WeChat Pay. Only required when client + * is mini_program. + */ + public Builder setBuyerId(String buyerId) { + this.buyerId = buyerId; + return this; + } + /** The client type that the end customer will pay from. */ public Builder setClient( PaymentIntentConfirmParams.PaymentMethodOptions.WechatPay.Client client) { @@ -49116,6 +49136,9 @@ public enum Client implements ApiRequestParams.EnumParam { @SerializedName("ios") IOS("ios"), + @SerializedName("mini_program") + MINI_PROGRAM("mini_program"), + @SerializedName("web") WEB("web"); diff --git a/src/main/java/com/stripe/param/PaymentIntentCreateParams.java b/src/main/java/com/stripe/param/PaymentIntentCreateParams.java index d06184a565e..a2e0e1f6b5e 100644 --- a/src/main/java/com/stripe/param/PaymentIntentCreateParams.java +++ b/src/main/java/com/stripe/param/PaymentIntentCreateParams.java @@ -49422,6 +49422,13 @@ public static class WechatPay { @SerializedName("app_id") String appId; + /** + * The unique buyer ID for the app ID registered with WeChat Pay. Only required when client is + * mini_program. + */ + @SerializedName("buyer_id") + String buyerId; + /** The client type that the end customer will pay from. */ @SerializedName("client") Client client; @@ -49463,10 +49470,12 @@ public static class WechatPay { private WechatPay( String appId, + String buyerId, Client client, Map extraParams, SetupFutureUsage setupFutureUsage) { this.appId = appId; + this.buyerId = buyerId; this.client = client; this.extraParams = extraParams; this.setupFutureUsage = setupFutureUsage; @@ -49479,6 +49488,8 @@ public static Builder builder() { public static class Builder { private String appId; + private String buyerId; + private Client client; private Map extraParams; @@ -49488,7 +49499,7 @@ public static class Builder { /** Finalize and obtain parameter instance from this builder. */ public PaymentIntentCreateParams.PaymentMethodOptions.WechatPay build() { return new PaymentIntentCreateParams.PaymentMethodOptions.WechatPay( - this.appId, this.client, this.extraParams, this.setupFutureUsage); + this.appId, this.buyerId, this.client, this.extraParams, this.setupFutureUsage); } /** The app ID registered with WeChat Pay. Only required when client is ios or android. */ @@ -49497,6 +49508,15 @@ public Builder setAppId(String appId) { return this; } + /** + * The unique buyer ID for the app ID registered with WeChat Pay. Only required when client + * is mini_program. + */ + public Builder setBuyerId(String buyerId) { + this.buyerId = buyerId; + return this; + } + /** The client type that the end customer will pay from. */ public Builder setClient( PaymentIntentCreateParams.PaymentMethodOptions.WechatPay.Client client) { @@ -49571,6 +49591,9 @@ public enum Client implements ApiRequestParams.EnumParam { @SerializedName("ios") IOS("ios"), + @SerializedName("mini_program") + MINI_PROGRAM("mini_program"), + @SerializedName("web") WEB("web"); diff --git a/src/main/java/com/stripe/param/PaymentIntentUpdateParams.java b/src/main/java/com/stripe/param/PaymentIntentUpdateParams.java index 8b277689edf..c1dd12c051f 100644 --- a/src/main/java/com/stripe/param/PaymentIntentUpdateParams.java +++ b/src/main/java/com/stripe/param/PaymentIntentUpdateParams.java @@ -51618,6 +51618,13 @@ public static class WechatPay { @SerializedName("app_id") Object appId; + /** + * The unique buyer ID for the app ID registered with WeChat Pay. Only required when client is + * mini_program. + */ + @SerializedName("buyer_id") + Object buyerId; + /** The client type that the end customer will pay from. */ @SerializedName("client") Client client; @@ -51659,10 +51666,12 @@ public static class WechatPay { private WechatPay( Object appId, + Object buyerId, Client client, Map extraParams, SetupFutureUsage setupFutureUsage) { this.appId = appId; + this.buyerId = buyerId; this.client = client; this.extraParams = extraParams; this.setupFutureUsage = setupFutureUsage; @@ -51675,6 +51684,8 @@ public static Builder builder() { public static class Builder { private Object appId; + private Object buyerId; + private Client client; private Map extraParams; @@ -51684,7 +51695,7 @@ public static class Builder { /** Finalize and obtain parameter instance from this builder. */ public PaymentIntentUpdateParams.PaymentMethodOptions.WechatPay build() { return new PaymentIntentUpdateParams.PaymentMethodOptions.WechatPay( - this.appId, this.client, this.extraParams, this.setupFutureUsage); + this.appId, this.buyerId, this.client, this.extraParams, this.setupFutureUsage); } /** The app ID registered with WeChat Pay. Only required when client is ios or android. */ @@ -51699,6 +51710,24 @@ public Builder setAppId(EmptyParam appId) { return this; } + /** + * The unique buyer ID for the app ID registered with WeChat Pay. Only required when client + * is mini_program. + */ + public Builder setBuyerId(String buyerId) { + this.buyerId = buyerId; + return this; + } + + /** + * The unique buyer ID for the app ID registered with WeChat Pay. Only required when client + * is mini_program. + */ + public Builder setBuyerId(EmptyParam buyerId) { + this.buyerId = buyerId; + return this; + } + /** The client type that the end customer will pay from. */ public Builder setClient( PaymentIntentUpdateParams.PaymentMethodOptions.WechatPay.Client client) { @@ -51773,6 +51802,9 @@ public enum Client implements ApiRequestParams.EnumParam { @SerializedName("ios") IOS("ios"), + @SerializedName("mini_program") + MINI_PROGRAM("mini_program"), + @SerializedName("web") WEB("web"); From a7b32ef3548902ac2693c788b92de3f3769a76d7 Mon Sep 17 00:00:00 2001 From: Stripe OpenAPI <105521251+stripe-openapi[bot]@users.noreply.github.com> Date: Fri, 12 Jun 2026 18:09:44 +0000 Subject: [PATCH 06/14] Update generated code for v2300 and 310a8f6be0f5ff9f63d26e1cfac9d08b21c3d2b3 --- CODEGEN_VERSION | 2 +- OPENAPI_VERSION | 2 +- ...ntAttemptRecordReportGuaranteedParams.java | 378 +++++++++++++++++ ...dReportPaymentAttemptGuaranteedParams.java | 383 ++++++++++++++++++ 4 files changed, 763 insertions(+), 2 deletions(-) diff --git a/CODEGEN_VERSION b/CODEGEN_VERSION index e2ada73c28b..5612479c86d 100644 --- a/CODEGEN_VERSION +++ b/CODEGEN_VERSION @@ -1 +1 @@ -161b47dfc5d5f9332c906a572b90ce8551a2f752 \ No newline at end of file +310a8f6be0f5ff9f63d26e1cfac9d08b21c3d2b3 \ No newline at end of file diff --git a/OPENAPI_VERSION b/OPENAPI_VERSION index e656cda126a..5d75b903042 100644 --- a/OPENAPI_VERSION +++ b/OPENAPI_VERSION @@ -1 +1 @@ -v2299 \ No newline at end of file +v2300 \ No newline at end of file diff --git a/src/main/java/com/stripe/param/PaymentAttemptRecordReportGuaranteedParams.java b/src/main/java/com/stripe/param/PaymentAttemptRecordReportGuaranteedParams.java index 0297d5d80bc..4c003caf674 100644 --- a/src/main/java/com/stripe/param/PaymentAttemptRecordReportGuaranteedParams.java +++ b/src/main/java/com/stripe/param/PaymentAttemptRecordReportGuaranteedParams.java @@ -44,6 +44,10 @@ public class PaymentAttemptRecordReportGuaranteedParams extends ApiRequestParams @SerializedName("payment_evaluations") List paymentEvaluations; + /** Information about the Payment Method debited for this payment. */ + @SerializedName("payment_method_details") + PaymentMethodDetails paymentMethodDetails; + /** Processor information for this payment. */ @SerializedName("processor_details") ProcessorDetails processorDetails; @@ -54,12 +58,14 @@ private PaymentAttemptRecordReportGuaranteedParams( Long guaranteedAt, Object metadata, List paymentEvaluations, + PaymentMethodDetails paymentMethodDetails, ProcessorDetails processorDetails) { this.expand = expand; this.extraParams = extraParams; this.guaranteedAt = guaranteedAt; this.metadata = metadata; this.paymentEvaluations = paymentEvaluations; + this.paymentMethodDetails = paymentMethodDetails; this.processorDetails = processorDetails; } @@ -78,6 +84,8 @@ public static class Builder { private List paymentEvaluations; + private PaymentMethodDetails paymentMethodDetails; + private ProcessorDetails processorDetails; /** Finalize and obtain parameter instance from this builder. */ @@ -88,6 +96,7 @@ public PaymentAttemptRecordReportGuaranteedParams build() { this.guaranteedAt, this.metadata, this.paymentEvaluations, + this.paymentMethodDetails, this.processorDetails); } @@ -227,6 +236,13 @@ public Builder addAllPaymentEvaluation(List elements) { return this; } + /** Information about the Payment Method debited for this payment. */ + public Builder setPaymentMethodDetails( + PaymentAttemptRecordReportGuaranteedParams.PaymentMethodDetails paymentMethodDetails) { + this.paymentMethodDetails = paymentMethodDetails; + return this; + } + /** Processor information for this payment. */ public Builder setProcessorDetails( PaymentAttemptRecordReportGuaranteedParams.ProcessorDetails processorDetails) { @@ -235,6 +251,368 @@ public Builder setProcessorDetails( } } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PaymentMethodDetails { + /** Information about the card payment method used to make this payment. */ + @SerializedName("card") + Card card; + + /** + * 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. The type of the payment method details. An additional hash is + * included on the payment_method_details with a name matching this value. It contains + * additional information specific to the type. + */ + @SerializedName("type") + Type type; + + private PaymentMethodDetails(Card card, Map extraParams, Type type) { + this.card = card; + this.extraParams = extraParams; + this.type = type; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Card card; + + private Map extraParams; + + private Type type; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentAttemptRecordReportGuaranteedParams.PaymentMethodDetails build() { + return new PaymentAttemptRecordReportGuaranteedParams.PaymentMethodDetails( + this.card, this.extraParams, this.type); + } + + /** Information about the card payment method used to make this payment. */ + public Builder setCard( + PaymentAttemptRecordReportGuaranteedParams.PaymentMethodDetails.Card card) { + this.card = card; + 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 + * PaymentAttemptRecordReportGuaranteedParams.PaymentMethodDetails#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 PaymentAttemptRecordReportGuaranteedParams.PaymentMethodDetails#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. The type of the payment method details. An additional hash is + * included on the payment_method_details with a name matching this value. It contains + * additional information specific to the type. + */ + public Builder setType( + PaymentAttemptRecordReportGuaranteedParams.PaymentMethodDetails.Type type) { + this.type = type; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Card { + /** Verification checks performed on the card. */ + @SerializedName("checks") + Checks checks; + + /** + * 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; + + private Card(Checks checks, Map extraParams) { + this.checks = checks; + this.extraParams = extraParams; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Checks checks; + + private Map extraParams; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentAttemptRecordReportGuaranteedParams.PaymentMethodDetails.Card build() { + return new PaymentAttemptRecordReportGuaranteedParams.PaymentMethodDetails.Card( + this.checks, this.extraParams); + } + + /** Verification checks performed on the card. */ + public Builder setChecks( + PaymentAttemptRecordReportGuaranteedParams.PaymentMethodDetails.Card.Checks checks) { + this.checks = checks; + 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 + * PaymentAttemptRecordReportGuaranteedParams.PaymentMethodDetails.Card#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 + * PaymentAttemptRecordReportGuaranteedParams.PaymentMethodDetails.Card#extraParams} for the + * field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Checks { + /** The result of the check on the cardholder's address line 1. */ + @SerializedName("address_line1_check") + AddressLine1Check addressLine1Check; + + /** The result of the check on the cardholder's postal code. */ + @SerializedName("address_postal_code_check") + AddressPostalCodeCheck addressPostalCodeCheck; + + /** The result of the check on the card's CVC. */ + @SerializedName("cvc_check") + CvcCheck cvcCheck; + + /** + * 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; + + private Checks( + AddressLine1Check addressLine1Check, + AddressPostalCodeCheck addressPostalCodeCheck, + CvcCheck cvcCheck, + Map extraParams) { + this.addressLine1Check = addressLine1Check; + this.addressPostalCodeCheck = addressPostalCodeCheck; + this.cvcCheck = cvcCheck; + this.extraParams = extraParams; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private AddressLine1Check addressLine1Check; + + private AddressPostalCodeCheck addressPostalCodeCheck; + + private CvcCheck cvcCheck; + + private Map extraParams; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentAttemptRecordReportGuaranteedParams.PaymentMethodDetails.Card.Checks + build() { + return new PaymentAttemptRecordReportGuaranteedParams.PaymentMethodDetails.Card.Checks( + this.addressLine1Check, + this.addressPostalCodeCheck, + this.cvcCheck, + this.extraParams); + } + + /** The result of the check on the cardholder's address line 1. */ + public Builder setAddressLine1Check( + PaymentAttemptRecordReportGuaranteedParams.PaymentMethodDetails.Card.Checks + .AddressLine1Check + addressLine1Check) { + this.addressLine1Check = addressLine1Check; + return this; + } + + /** The result of the check on the cardholder's postal code. */ + public Builder setAddressPostalCodeCheck( + PaymentAttemptRecordReportGuaranteedParams.PaymentMethodDetails.Card.Checks + .AddressPostalCodeCheck + addressPostalCodeCheck) { + this.addressPostalCodeCheck = addressPostalCodeCheck; + return this; + } + + /** The result of the check on the card's CVC. */ + public Builder setCvcCheck( + PaymentAttemptRecordReportGuaranteedParams.PaymentMethodDetails.Card.Checks.CvcCheck + cvcCheck) { + this.cvcCheck = cvcCheck; + 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 + * PaymentAttemptRecordReportGuaranteedParams.PaymentMethodDetails.Card.Checks#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 + * PaymentAttemptRecordReportGuaranteedParams.PaymentMethodDetails.Card.Checks#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + } + + public enum AddressLine1Check implements ApiRequestParams.EnumParam { + @SerializedName("fail") + FAIL("fail"), + + @SerializedName("pass") + PASS("pass"), + + @SerializedName("unavailable") + UNAVAILABLE("unavailable"), + + @SerializedName("unchecked") + UNCHECKED("unchecked"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + AddressLine1Check(String value) { + this.value = value; + } + } + + public enum AddressPostalCodeCheck implements ApiRequestParams.EnumParam { + @SerializedName("fail") + FAIL("fail"), + + @SerializedName("pass") + PASS("pass"), + + @SerializedName("unavailable") + UNAVAILABLE("unavailable"), + + @SerializedName("unchecked") + UNCHECKED("unchecked"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + AddressPostalCodeCheck(String value) { + this.value = value; + } + } + + public enum CvcCheck implements ApiRequestParams.EnumParam { + @SerializedName("fail") + FAIL("fail"), + + @SerializedName("pass") + PASS("pass"), + + @SerializedName("unavailable") + UNAVAILABLE("unavailable"), + + @SerializedName("unchecked") + UNCHECKED("unchecked"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + CvcCheck(String value) { + this.value = value; + } + } + } + } + + public enum Type implements ApiRequestParams.EnumParam { + @SerializedName("card") + CARD("card"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + Type(String value) { + this.value = value; + } + } + } + @Getter @EqualsAndHashCode(callSuper = false) public static class ProcessorDetails { diff --git a/src/main/java/com/stripe/param/PaymentRecordReportPaymentAttemptGuaranteedParams.java b/src/main/java/com/stripe/param/PaymentRecordReportPaymentAttemptGuaranteedParams.java index 1c0d8223e65..545991592b0 100644 --- a/src/main/java/com/stripe/param/PaymentRecordReportPaymentAttemptGuaranteedParams.java +++ b/src/main/java/com/stripe/param/PaymentRecordReportPaymentAttemptGuaranteedParams.java @@ -44,6 +44,10 @@ public class PaymentRecordReportPaymentAttemptGuaranteedParams extends ApiReques @SerializedName("payment_evaluations") List paymentEvaluations; + /** Information about the Payment Method debited for this payment. */ + @SerializedName("payment_method_details") + PaymentMethodDetails paymentMethodDetails; + /** Processor information for this payment. */ @SerializedName("processor_details") ProcessorDetails processorDetails; @@ -54,12 +58,14 @@ private PaymentRecordReportPaymentAttemptGuaranteedParams( Long guaranteedAt, Object metadata, List paymentEvaluations, + PaymentMethodDetails paymentMethodDetails, ProcessorDetails processorDetails) { this.expand = expand; this.extraParams = extraParams; this.guaranteedAt = guaranteedAt; this.metadata = metadata; this.paymentEvaluations = paymentEvaluations; + this.paymentMethodDetails = paymentMethodDetails; this.processorDetails = processorDetails; } @@ -78,6 +84,8 @@ public static class Builder { private List paymentEvaluations; + private PaymentMethodDetails paymentMethodDetails; + private ProcessorDetails processorDetails; /** Finalize and obtain parameter instance from this builder. */ @@ -88,6 +96,7 @@ public PaymentRecordReportPaymentAttemptGuaranteedParams build() { this.guaranteedAt, this.metadata, this.paymentEvaluations, + this.paymentMethodDetails, this.processorDetails); } @@ -229,6 +238,14 @@ public Builder addAllPaymentEvaluation(List elements) { return this; } + /** Information about the Payment Method debited for this payment. */ + public Builder setPaymentMethodDetails( + PaymentRecordReportPaymentAttemptGuaranteedParams.PaymentMethodDetails + paymentMethodDetails) { + this.paymentMethodDetails = paymentMethodDetails; + return this; + } + /** Processor information for this payment. */ public Builder setProcessorDetails( PaymentRecordReportPaymentAttemptGuaranteedParams.ProcessorDetails processorDetails) { @@ -237,6 +254,372 @@ public Builder setProcessorDetails( } } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PaymentMethodDetails { + /** Information about the card payment method used to make this payment. */ + @SerializedName("card") + Card card; + + /** + * 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. The type of the payment method details. An additional hash is + * included on the payment_method_details with a name matching this value. It contains + * additional information specific to the type. + */ + @SerializedName("type") + Type type; + + private PaymentMethodDetails(Card card, Map extraParams, Type type) { + this.card = card; + this.extraParams = extraParams; + this.type = type; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Card card; + + private Map extraParams; + + private Type type; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentRecordReportPaymentAttemptGuaranteedParams.PaymentMethodDetails build() { + return new PaymentRecordReportPaymentAttemptGuaranteedParams.PaymentMethodDetails( + this.card, this.extraParams, this.type); + } + + /** Information about the card payment method used to make this payment. */ + public Builder setCard( + PaymentRecordReportPaymentAttemptGuaranteedParams.PaymentMethodDetails.Card card) { + this.card = card; + 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 + * PaymentRecordReportPaymentAttemptGuaranteedParams.PaymentMethodDetails#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 + * PaymentRecordReportPaymentAttemptGuaranteedParams.PaymentMethodDetails#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. The type of the payment method details. An additional hash is + * included on the payment_method_details with a name matching this value. It contains + * additional information specific to the type. + */ + public Builder setType( + PaymentRecordReportPaymentAttemptGuaranteedParams.PaymentMethodDetails.Type type) { + this.type = type; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Card { + /** Verification checks performed on the card. */ + @SerializedName("checks") + Checks checks; + + /** + * 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; + + private Card(Checks checks, Map extraParams) { + this.checks = checks; + this.extraParams = extraParams; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Checks checks; + + private Map extraParams; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentRecordReportPaymentAttemptGuaranteedParams.PaymentMethodDetails.Card build() { + return new PaymentRecordReportPaymentAttemptGuaranteedParams.PaymentMethodDetails.Card( + this.checks, this.extraParams); + } + + /** Verification checks performed on the card. */ + public Builder setChecks( + PaymentRecordReportPaymentAttemptGuaranteedParams.PaymentMethodDetails.Card.Checks + checks) { + this.checks = checks; + 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 + * PaymentRecordReportPaymentAttemptGuaranteedParams.PaymentMethodDetails.Card#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 + * PaymentRecordReportPaymentAttemptGuaranteedParams.PaymentMethodDetails.Card#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Checks { + /** The result of the check on the cardholder's address line 1. */ + @SerializedName("address_line1_check") + AddressLine1Check addressLine1Check; + + /** The result of the check on the cardholder's postal code. */ + @SerializedName("address_postal_code_check") + AddressPostalCodeCheck addressPostalCodeCheck; + + /** The result of the check on the card's CVC. */ + @SerializedName("cvc_check") + CvcCheck cvcCheck; + + /** + * 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; + + private Checks( + AddressLine1Check addressLine1Check, + AddressPostalCodeCheck addressPostalCodeCheck, + CvcCheck cvcCheck, + Map extraParams) { + this.addressLine1Check = addressLine1Check; + this.addressPostalCodeCheck = addressPostalCodeCheck; + this.cvcCheck = cvcCheck; + this.extraParams = extraParams; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private AddressLine1Check addressLine1Check; + + private AddressPostalCodeCheck addressPostalCodeCheck; + + private CvcCheck cvcCheck; + + private Map extraParams; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentRecordReportPaymentAttemptGuaranteedParams.PaymentMethodDetails.Card.Checks + build() { + return new PaymentRecordReportPaymentAttemptGuaranteedParams.PaymentMethodDetails.Card + .Checks( + this.addressLine1Check, + this.addressPostalCodeCheck, + this.cvcCheck, + this.extraParams); + } + + /** The result of the check on the cardholder's address line 1. */ + public Builder setAddressLine1Check( + PaymentRecordReportPaymentAttemptGuaranteedParams.PaymentMethodDetails.Card.Checks + .AddressLine1Check + addressLine1Check) { + this.addressLine1Check = addressLine1Check; + return this; + } + + /** The result of the check on the cardholder's postal code. */ + public Builder setAddressPostalCodeCheck( + PaymentRecordReportPaymentAttemptGuaranteedParams.PaymentMethodDetails.Card.Checks + .AddressPostalCodeCheck + addressPostalCodeCheck) { + this.addressPostalCodeCheck = addressPostalCodeCheck; + return this; + } + + /** The result of the check on the card's CVC. */ + public Builder setCvcCheck( + PaymentRecordReportPaymentAttemptGuaranteedParams.PaymentMethodDetails.Card.Checks + .CvcCheck + cvcCheck) { + this.cvcCheck = cvcCheck; + 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 + * PaymentRecordReportPaymentAttemptGuaranteedParams.PaymentMethodDetails.Card.Checks#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 + * PaymentRecordReportPaymentAttemptGuaranteedParams.PaymentMethodDetails.Card.Checks#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + } + + public enum AddressLine1Check implements ApiRequestParams.EnumParam { + @SerializedName("fail") + FAIL("fail"), + + @SerializedName("pass") + PASS("pass"), + + @SerializedName("unavailable") + UNAVAILABLE("unavailable"), + + @SerializedName("unchecked") + UNCHECKED("unchecked"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + AddressLine1Check(String value) { + this.value = value; + } + } + + public enum AddressPostalCodeCheck implements ApiRequestParams.EnumParam { + @SerializedName("fail") + FAIL("fail"), + + @SerializedName("pass") + PASS("pass"), + + @SerializedName("unavailable") + UNAVAILABLE("unavailable"), + + @SerializedName("unchecked") + UNCHECKED("unchecked"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + AddressPostalCodeCheck(String value) { + this.value = value; + } + } + + public enum CvcCheck implements ApiRequestParams.EnumParam { + @SerializedName("fail") + FAIL("fail"), + + @SerializedName("pass") + PASS("pass"), + + @SerializedName("unavailable") + UNAVAILABLE("unavailable"), + + @SerializedName("unchecked") + UNCHECKED("unchecked"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + CvcCheck(String value) { + this.value = value; + } + } + } + } + + public enum Type implements ApiRequestParams.EnumParam { + @SerializedName("card") + CARD("card"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + Type(String value) { + this.value = value; + } + } + } + @Getter @EqualsAndHashCode(callSuper = false) public static class ProcessorDetails { From 561277ef4f5ecbedbf0901673b20cd724b0b435b Mon Sep 17 00:00:00 2001 From: Stripe OpenAPI <105521251+stripe-openapi[bot]@users.noreply.github.com> Date: Fri, 12 Jun 2026 18:28:15 +0000 Subject: [PATCH 07/14] Update generated code for v2301 and c20e0e5333d06539a914faeb375b14916986233a --- CODEGEN_VERSION | 2 +- OPENAPI_VERSION | 2 +- src/main/java/com/stripe/model/GiftCard.java | 7 +++++++ 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/CODEGEN_VERSION b/CODEGEN_VERSION index 5612479c86d..8f1b730c8bd 100644 --- a/CODEGEN_VERSION +++ b/CODEGEN_VERSION @@ -1 +1 @@ -310a8f6be0f5ff9f63d26e1cfac9d08b21c3d2b3 \ No newline at end of file +c20e0e5333d06539a914faeb375b14916986233a \ No newline at end of file diff --git a/OPENAPI_VERSION b/OPENAPI_VERSION index 5d75b903042..8f7f7dd6fbf 100644 --- a/OPENAPI_VERSION +++ b/OPENAPI_VERSION @@ -1 +1 @@ -v2300 \ No newline at end of file +v2301 \ No newline at end of file diff --git a/src/main/java/com/stripe/model/GiftCard.java b/src/main/java/com/stripe/model/GiftCard.java index 820f6b6dc12..84a882c6151 100644 --- a/src/main/java/com/stripe/model/GiftCard.java +++ b/src/main/java/com/stripe/model/GiftCard.java @@ -42,6 +42,13 @@ public class GiftCard extends ApiResource implements HasId { @SerializedName("exp_year") Long expYear; + /** + * Uniquely identifies this particular gift card number. You can use this attribute to check + * whether two gift cards are the same. + */ + @SerializedName("fingerprint") + String fingerprint; + /** Unique identifier for the object. */ @Getter(onMethod_ = {@Override}) @SerializedName("id") From 4b48a655e8b65f0a01b3656d0e4cf11ba29acbb3 Mon Sep 17 00:00:00 2001 From: Stripe OpenAPI <105521251+stripe-openapi[bot]@users.noreply.github.com> Date: Fri, 12 Jun 2026 22:41:25 +0000 Subject: [PATCH 08/14] Update generated code for v2302 and 10e358891bc1660a5bd7a6e82a6c7b3df671d751 --- CODEGEN_VERSION | 2 +- OPENAPI_VERSION | 2 +- .../param/checkout/SessionCreateParams.java | 116 ++++++++++++++++++ 3 files changed, 118 insertions(+), 2 deletions(-) diff --git a/CODEGEN_VERSION b/CODEGEN_VERSION index 8f1b730c8bd..2fbfd2b9944 100644 --- a/CODEGEN_VERSION +++ b/CODEGEN_VERSION @@ -1 +1 @@ -c20e0e5333d06539a914faeb375b14916986233a \ No newline at end of file +10e358891bc1660a5bd7a6e82a6c7b3df671d751 \ No newline at end of file diff --git a/OPENAPI_VERSION b/OPENAPI_VERSION index 8f7f7dd6fbf..2238fb7dcfc 100644 --- a/OPENAPI_VERSION +++ b/OPENAPI_VERSION @@ -1 +1 @@ -v2301 \ No newline at end of file +v2302 \ No newline at end of file diff --git a/src/main/java/com/stripe/param/checkout/SessionCreateParams.java b/src/main/java/com/stripe/param/checkout/SessionCreateParams.java index 4c4fc1834cd..17e9ade3edf 100644 --- a/src/main/java/com/stripe/param/checkout/SessionCreateParams.java +++ b/src/main/java/com/stripe/param/checkout/SessionCreateParams.java @@ -239,6 +239,10 @@ public class SessionCreateParams extends ApiRequestParams { @SerializedName("invoice_creation") InvoiceCreation invoiceCreation; + /** A list of items the customer will purchase. */ + @SerializedName("items") + List items; + /** * A list of items the customer is purchasing. Use this parameter to pass one-time or recurring Prices. The parameter is required for {@code @@ -511,6 +515,7 @@ private SessionCreateParams( Map extraParams, String integrationIdentifier, InvoiceCreation invoiceCreation, + List items, List lineItems, Locale locale, ManagedPayments managedPayments, @@ -567,6 +572,7 @@ private SessionCreateParams( this.extraParams = extraParams; this.integrationIdentifier = integrationIdentifier; this.invoiceCreation = invoiceCreation; + this.items = items; this.lineItems = lineItems; this.locale = locale; this.managedPayments = managedPayments; @@ -658,6 +664,8 @@ public static class Builder { private InvoiceCreation invoiceCreation; + private List items; + private List lineItems; private Locale locale; @@ -745,6 +753,7 @@ public SessionCreateParams build() { this.extraParams, this.integrationIdentifier, this.invoiceCreation, + this.items, this.lineItems, this.locale, this.managedPayments, @@ -1175,6 +1184,32 @@ public Builder setInvoiceCreation(SessionCreateParams.InvoiceCreation invoiceCre return this; } + /** + * Add an element to `items` list. A list is initialized for the first `add/addAll` call, and + * subsequent calls adds additional elements to the original list. See {@link + * SessionCreateParams#items} for the field documentation. + */ + public Builder addItem(SessionCreateParams.Item element) { + if (this.items == null) { + this.items = new ArrayList<>(); + } + this.items.add(element); + return this; + } + + /** + * Add all elements to `items` list. A list is initialized for the first `add/addAll` call, and + * subsequent calls adds additional elements to the original list. See {@link + * SessionCreateParams#items} for the field documentation. + */ + public Builder addAllItem(List elements) { + if (this.items == null) { + this.items = new ArrayList<>(); + } + this.items.addAll(elements); + return this; + } + /** * Add an element to `lineItems` list. A list is initialized for the first `add/addAll` call, * and subsequent calls adds additional elements to the original list. See {@link @@ -5959,6 +5994,87 @@ public enum AmountTaxDisplay implements ApiRequestParams.EnumParam { } } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Item { + /** + * 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. The type of item. */ + @SerializedName("type") + Type type; + + private Item(Map extraParams, Type type) { + this.extraParams = extraParams; + this.type = type; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Type type; + + /** Finalize and obtain parameter instance from this builder. */ + public SessionCreateParams.Item build() { + return new SessionCreateParams.Item(this.extraParams, 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 + * SessionCreateParams.Item#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 SessionCreateParams.Item#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. The type of item. */ + public Builder setType(SessionCreateParams.Item.Type type) { + this.type = type; + return this; + } + } + + public enum Type implements ApiRequestParams.EnumParam { + @SerializedName("subscription") + SUBSCRIPTION("subscription"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + Type(String value) { + this.value = value; + } + } + } + @Getter @EqualsAndHashCode(callSuper = false) public static class LineItem { From 0f01f70d7beb30454f538d8effa23eb09cda0844 Mon Sep 17 00:00:00 2001 From: Stripe OpenAPI <105521251+stripe-openapi[bot]@users.noreply.github.com> Date: Fri, 12 Jun 2026 23:07:48 +0000 Subject: [PATCH 09/14] Update generated code for v2303 and 368e28dbde85e762b031f0eadf904591cfd86a7e --- CODEGEN_VERSION | 2 +- OPENAPI_VERSION | 2 +- src/main/java/com/stripe/model/ConfirmationToken.java | 4 ---- src/main/java/com/stripe/model/PaymentMethod.java | 4 ---- .../java/com/stripe/model/sharedpayment/GrantedToken.java | 4 ---- 5 files changed, 2 insertions(+), 14 deletions(-) diff --git a/CODEGEN_VERSION b/CODEGEN_VERSION index 2fbfd2b9944..67f43c3de6f 100644 --- a/CODEGEN_VERSION +++ b/CODEGEN_VERSION @@ -1 +1 @@ -10e358891bc1660a5bd7a6e82a6c7b3df671d751 \ No newline at end of file +368e28dbde85e762b031f0eadf904591cfd86a7e \ No newline at end of file diff --git a/OPENAPI_VERSION b/OPENAPI_VERSION index 2238fb7dcfc..30c32b25776 100644 --- a/OPENAPI_VERSION +++ b/OPENAPI_VERSION @@ -1 +1 @@ -v2302 \ No newline at end of file +v2303 \ No newline at end of file diff --git a/src/main/java/com/stripe/model/ConfirmationToken.java b/src/main/java/com/stripe/model/ConfirmationToken.java index 79360b7b18d..d44bf3db279 100644 --- a/src/main/java/com/stripe/model/ConfirmationToken.java +++ b/src/main/java/com/stripe/model/ConfirmationToken.java @@ -1808,10 +1808,6 @@ public static class GiftCard extends StripeObject { @SerializedName("fingerprint") String fingerprint; - /** The first six digits of the gift card number. */ - @SerializedName("first6") - String first6; - /** The last four digits of the gift card number. */ @SerializedName("last4") String last4; diff --git a/src/main/java/com/stripe/model/PaymentMethod.java b/src/main/java/com/stripe/model/PaymentMethod.java index 67ab14e9ee7..34a89293e6b 100644 --- a/src/main/java/com/stripe/model/PaymentMethod.java +++ b/src/main/java/com/stripe/model/PaymentMethod.java @@ -2133,10 +2133,6 @@ public static class GiftCard extends StripeObject { @SerializedName("fingerprint") String fingerprint; - /** The first six digits of the gift card number. */ - @SerializedName("first6") - String first6; - /** The last four digits of the gift card number. */ @SerializedName("last4") String last4; diff --git a/src/main/java/com/stripe/model/sharedpayment/GrantedToken.java b/src/main/java/com/stripe/model/sharedpayment/GrantedToken.java index 0075ca25462..7b5ed4c5727 100644 --- a/src/main/java/com/stripe/model/sharedpayment/GrantedToken.java +++ b/src/main/java/com/stripe/model/sharedpayment/GrantedToken.java @@ -1204,10 +1204,6 @@ public static class GiftCard extends StripeObject { @SerializedName("fingerprint") String fingerprint; - /** The first six digits of the gift card number. */ - @SerializedName("first6") - String first6; - /** The last four digits of the gift card number. */ @SerializedName("last4") String last4; From b87b35e81470e9aec1d6f6c4f9086a078b7c3f6e Mon Sep 17 00:00:00 2001 From: jar-stripe Date: Fri, 12 Jun 2026 16:47:06 -0700 Subject: [PATCH 10/14] Remove retired manual API tests covered by GeneratedExamplesTest (#2236) Committed-By-Agent: claude Co-authored-by: Claude Sonnet 4.6 --- .../stripe/functional/AccountLinkTest.java | 27 ----- .../stripe/functional/ApplePayDomainTest.java | 67 ----------- .../stripe/functional/ApplicationFeeTest.java | 35 ------ .../com/stripe/functional/BalanceTest.java | 19 --- .../functional/BalanceTransactionTest.java | 36 ------ .../stripe/functional/CountrySpecTest.java | 36 ------ .../com/stripe/functional/CouponTest.java | 82 ------------- .../com/stripe/functional/CustomerTest.java | 102 ---------------- .../com/stripe/functional/DisputeTest.java | 68 ----------- .../stripe/functional/ExchangeRateTest.java | 35 ------ .../com/stripe/functional/FeeRefundTest.java | 113 ------------------ .../com/stripe/functional/FileLinkTest.java | 71 ----------- .../stripe/functional/InvoiceItemTest.java | 73 ----------- .../com/stripe/functional/LoginLinkTest.java | 35 ------ .../com/stripe/functional/MandateTest.java | 21 ---- .../stripe/functional/PaymentMethodTest.java | 100 ---------------- .../com/stripe/functional/PayoutTest.java | 91 -------------- .../com/stripe/functional/PersonTest.java | 108 ----------------- .../java/com/stripe/functional/PriceTest.java | 75 ------------ .../com/stripe/functional/ProductTest.java | 89 -------------- .../com/stripe/functional/RefundTest.java | 68 ----------- .../com/stripe/functional/ReversalTest.java | 93 -------------- .../com/stripe/functional/ReviewTest.java | 51 -------- .../stripe/functional/SetupAttemptTest.java | 25 ---- .../functional/SubscriptionItemTest.java | 88 -------------- .../functional/SubscriptionScheduleTest.java | 103 ---------------- .../stripe/functional/SubscriptionTest.java | 101 ---------------- .../com/stripe/functional/TaxCodeTest.java | 39 ------ .../java/com/stripe/functional/TopupTest.java | 87 -------------- .../com/stripe/functional/TransferTest.java | 72 ----------- .../billingportal/ConfigurationTest.java | 95 --------------- .../functional/billingportal/SessionTest.java | 32 ----- .../functional/checkout/SessionTest.java | 44 ------- .../identity/VerificationReportTest.java | 39 ------ .../identity/VerificationSessionTest.java | 99 --------------- .../functional/issuing/AuthorizationTest.java | 82 ------------- .../stripe/functional/issuing/CardTest.java | 65 ---------- .../functional/issuing/CardholderTest.java | 76 ------------ .../functional/issuing/DisputeTest.java | 83 ------------- .../functional/issuing/TransactionTest.java | 55 --------- .../functional/radar/ValueListItemTest.java | 71 ----------- .../functional/radar/ValueListTest.java | 86 ------------- .../functional/reporting/ReportRunTest.java | 50 -------- .../functional/reporting/ReportTypeTest.java | 37 ------ .../sigma/ScheduledQueryRunTest.java | 37 ------ .../terminal/ConnectionTokenTest.java | 24 ---- .../functional/terminal/LocationTest.java | 84 ------------- .../functional/terminal/ReaderTest.java | 89 -------------- 48 files changed, 3158 deletions(-) delete mode 100644 src/test/java/com/stripe/functional/AccountLinkTest.java delete mode 100644 src/test/java/com/stripe/functional/ApplePayDomainTest.java delete mode 100644 src/test/java/com/stripe/functional/ApplicationFeeTest.java delete mode 100644 src/test/java/com/stripe/functional/BalanceTest.java delete mode 100644 src/test/java/com/stripe/functional/BalanceTransactionTest.java delete mode 100644 src/test/java/com/stripe/functional/CountrySpecTest.java delete mode 100644 src/test/java/com/stripe/functional/CouponTest.java delete mode 100644 src/test/java/com/stripe/functional/CustomerTest.java delete mode 100644 src/test/java/com/stripe/functional/DisputeTest.java delete mode 100644 src/test/java/com/stripe/functional/ExchangeRateTest.java delete mode 100644 src/test/java/com/stripe/functional/FeeRefundTest.java delete mode 100644 src/test/java/com/stripe/functional/FileLinkTest.java delete mode 100644 src/test/java/com/stripe/functional/InvoiceItemTest.java delete mode 100644 src/test/java/com/stripe/functional/LoginLinkTest.java delete mode 100644 src/test/java/com/stripe/functional/MandateTest.java delete mode 100644 src/test/java/com/stripe/functional/PaymentMethodTest.java delete mode 100644 src/test/java/com/stripe/functional/PayoutTest.java delete mode 100644 src/test/java/com/stripe/functional/PersonTest.java delete mode 100644 src/test/java/com/stripe/functional/PriceTest.java delete mode 100644 src/test/java/com/stripe/functional/ProductTest.java delete mode 100644 src/test/java/com/stripe/functional/RefundTest.java delete mode 100644 src/test/java/com/stripe/functional/ReversalTest.java delete mode 100644 src/test/java/com/stripe/functional/ReviewTest.java delete mode 100644 src/test/java/com/stripe/functional/SetupAttemptTest.java delete mode 100644 src/test/java/com/stripe/functional/SubscriptionItemTest.java delete mode 100644 src/test/java/com/stripe/functional/SubscriptionScheduleTest.java delete mode 100644 src/test/java/com/stripe/functional/SubscriptionTest.java delete mode 100644 src/test/java/com/stripe/functional/TaxCodeTest.java delete mode 100644 src/test/java/com/stripe/functional/TopupTest.java delete mode 100644 src/test/java/com/stripe/functional/TransferTest.java delete mode 100644 src/test/java/com/stripe/functional/billingportal/ConfigurationTest.java delete mode 100644 src/test/java/com/stripe/functional/billingportal/SessionTest.java delete mode 100644 src/test/java/com/stripe/functional/checkout/SessionTest.java delete mode 100644 src/test/java/com/stripe/functional/identity/VerificationReportTest.java delete mode 100644 src/test/java/com/stripe/functional/identity/VerificationSessionTest.java delete mode 100644 src/test/java/com/stripe/functional/issuing/AuthorizationTest.java delete mode 100644 src/test/java/com/stripe/functional/issuing/CardTest.java delete mode 100644 src/test/java/com/stripe/functional/issuing/CardholderTest.java delete mode 100644 src/test/java/com/stripe/functional/issuing/DisputeTest.java delete mode 100644 src/test/java/com/stripe/functional/issuing/TransactionTest.java delete mode 100644 src/test/java/com/stripe/functional/radar/ValueListItemTest.java delete mode 100644 src/test/java/com/stripe/functional/radar/ValueListTest.java delete mode 100644 src/test/java/com/stripe/functional/reporting/ReportRunTest.java delete mode 100644 src/test/java/com/stripe/functional/reporting/ReportTypeTest.java delete mode 100644 src/test/java/com/stripe/functional/sigma/ScheduledQueryRunTest.java delete mode 100644 src/test/java/com/stripe/functional/terminal/ConnectionTokenTest.java delete mode 100644 src/test/java/com/stripe/functional/terminal/LocationTest.java delete mode 100644 src/test/java/com/stripe/functional/terminal/ReaderTest.java diff --git a/src/test/java/com/stripe/functional/AccountLinkTest.java b/src/test/java/com/stripe/functional/AccountLinkTest.java deleted file mode 100644 index f1d7c48798c..00000000000 --- a/src/test/java/com/stripe/functional/AccountLinkTest.java +++ /dev/null @@ -1,27 +0,0 @@ -package com.stripe.functional; - -import static org.junit.jupiter.api.Assertions.assertNotNull; - -import com.stripe.BaseStripeTest; -import com.stripe.exception.StripeException; -import com.stripe.model.AccountLink; -import com.stripe.net.ApiResource; -import java.util.HashMap; -import java.util.Map; -import org.junit.jupiter.api.Test; - -public class AccountLinkTest extends BaseStripeTest { - @Test - public void testCreate() throws StripeException { - final Map params = new HashMap(); - params.put("account", "acct_123"); - params.put("refresh_url", "https://stripe.com/refresh"); - params.put("return_url", "https://stripe.com/return"); - params.put("type", "account_onboarding"); - - final AccountLink accountLink = AccountLink.create(params); - - assertNotNull(accountLink); - verifyRequest(ApiResource.RequestMethod.POST, String.format("/v1/account_links"), params); - } -} diff --git a/src/test/java/com/stripe/functional/ApplePayDomainTest.java b/src/test/java/com/stripe/functional/ApplePayDomainTest.java deleted file mode 100644 index 08683a13285..00000000000 --- a/src/test/java/com/stripe/functional/ApplePayDomainTest.java +++ /dev/null @@ -1,67 +0,0 @@ -package com.stripe.functional; - -import static org.junit.jupiter.api.Assertions.assertNotNull; -import static org.junit.jupiter.api.Assertions.assertTrue; - -import com.stripe.BaseStripeTest; -import com.stripe.exception.StripeException; -import com.stripe.model.ApplePayDomain; -import com.stripe.model.ApplePayDomainCollection; -import com.stripe.net.ApiResource; -import java.util.HashMap; -import java.util.Map; -import org.junit.jupiter.api.Test; - -public class ApplePayDomainTest extends BaseStripeTest { - public static final String DOMAIN_ID = "apftw_123"; - - private ApplePayDomain getDomainFixture() throws StripeException { - final ApplePayDomain domain = ApplePayDomain.retrieve(DOMAIN_ID); - resetNetworkSpy(); - return domain; - } - - @Test - public void testCreate() throws StripeException { - final Map params = new HashMap<>(); - params.put("domain_name", "stripe.com"); - - final ApplePayDomain domain = ApplePayDomain.create(params); - - assertNotNull(domain); - verifyRequest(ApiResource.RequestMethod.POST, String.format("/v1/apple_pay/domains"), params); - } - - @Test - public void testRetrieve() throws StripeException { - final ApplePayDomain domain = ApplePayDomain.retrieve(DOMAIN_ID); - - assertNotNull(domain); - verifyRequest( - ApiResource.RequestMethod.GET, String.format("/v1/apple_pay/domains/%s", DOMAIN_ID)); - } - - @Test - public void testList() throws StripeException { - final Map params = new HashMap<>(); - params.put("limit", 1); - - final ApplePayDomainCollection domains = ApplePayDomain.list(params); - - assertNotNull(domains); - verifyRequest(ApiResource.RequestMethod.GET, String.format("/v1/apple_pay/domains"), params); - } - - @Test - public void testDelete() throws StripeException { - final ApplePayDomain domain = getDomainFixture(); - - final ApplePayDomain deletedDomain = domain.delete(); - - assertNotNull(deletedDomain); - assertTrue(deletedDomain.getDeleted()); - verifyRequest( - ApiResource.RequestMethod.DELETE, - String.format("/v1/apple_pay/domains/%s", domain.getId())); - } -} diff --git a/src/test/java/com/stripe/functional/ApplicationFeeTest.java b/src/test/java/com/stripe/functional/ApplicationFeeTest.java deleted file mode 100644 index 8b2c6df4b86..00000000000 --- a/src/test/java/com/stripe/functional/ApplicationFeeTest.java +++ /dev/null @@ -1,35 +0,0 @@ -package com.stripe.functional; - -import static org.junit.jupiter.api.Assertions.assertNotNull; - -import com.stripe.BaseStripeTest; -import com.stripe.exception.StripeException; -import com.stripe.model.ApplicationFee; -import com.stripe.model.ApplicationFeeCollection; -import com.stripe.net.ApiResource; -import java.util.HashMap; -import java.util.Map; -import org.junit.jupiter.api.Test; - -public class ApplicationFeeTest extends BaseStripeTest { - public static final String FEE_ID = "fee_123"; - - @Test - public void testRetrieve() throws StripeException { - final ApplicationFee fee = ApplicationFee.retrieve(FEE_ID); - - assertNotNull(fee); - verifyRequest(ApiResource.RequestMethod.GET, String.format("/v1/application_fees/%s", FEE_ID)); - } - - @Test - public void testList() throws StripeException { - final Map params = new HashMap<>(); - params.put("limit", 1); - - final ApplicationFeeCollection fees = ApplicationFee.list(params); - - assertNotNull(fees); - verifyRequest(ApiResource.RequestMethod.GET, String.format("/v1/application_fees"), params); - } -} diff --git a/src/test/java/com/stripe/functional/BalanceTest.java b/src/test/java/com/stripe/functional/BalanceTest.java deleted file mode 100644 index 3fb2b54a203..00000000000 --- a/src/test/java/com/stripe/functional/BalanceTest.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.stripe.functional; - -import static org.junit.jupiter.api.Assertions.assertNotNull; - -import com.stripe.BaseStripeTest; -import com.stripe.exception.StripeException; -import com.stripe.model.Balance; -import com.stripe.net.ApiResource; -import org.junit.jupiter.api.Test; - -public class BalanceTest extends BaseStripeTest { - @Test - public void testRetrieve() throws StripeException { - final Balance balance = Balance.retrieve(); - - assertNotNull(balance); - verifyRequest(ApiResource.RequestMethod.GET, String.format("/v1/balance")); - } -} diff --git a/src/test/java/com/stripe/functional/BalanceTransactionTest.java b/src/test/java/com/stripe/functional/BalanceTransactionTest.java deleted file mode 100644 index e8bfe910699..00000000000 --- a/src/test/java/com/stripe/functional/BalanceTransactionTest.java +++ /dev/null @@ -1,36 +0,0 @@ -package com.stripe.functional; - -import static org.junit.jupiter.api.Assertions.assertNotNull; - -import com.stripe.BaseStripeTest; -import com.stripe.exception.StripeException; -import com.stripe.model.BalanceTransaction; -import com.stripe.model.BalanceTransactionCollection; -import com.stripe.net.ApiResource; -import java.util.HashMap; -import java.util.Map; -import org.junit.jupiter.api.Test; - -public class BalanceTransactionTest extends BaseStripeTest { - public static final String RESOURCE_ID = "bt_123"; - - @Test - public void testRetrieve() throws StripeException { - final BalanceTransaction balanceTransaction = BalanceTransaction.retrieve(RESOURCE_ID); - - assertNotNull(balanceTransaction); - verifyRequest( - ApiResource.RequestMethod.GET, String.format("/v1/balance_transactions/%s", RESOURCE_ID)); - } - - @Test - public void testList() throws StripeException { - final Map params = new HashMap<>(); - params.put("limit", 1); - - final BalanceTransactionCollection balanceTransactions = BalanceTransaction.list(params); - - assertNotNull(balanceTransactions); - verifyRequest(ApiResource.RequestMethod.GET, String.format("/v1/balance_transactions"), params); - } -} diff --git a/src/test/java/com/stripe/functional/CountrySpecTest.java b/src/test/java/com/stripe/functional/CountrySpecTest.java deleted file mode 100644 index 18a556f03fc..00000000000 --- a/src/test/java/com/stripe/functional/CountrySpecTest.java +++ /dev/null @@ -1,36 +0,0 @@ -package com.stripe.functional; - -import static org.junit.jupiter.api.Assertions.assertNotNull; - -import com.stripe.BaseStripeTest; -import com.stripe.exception.StripeException; -import com.stripe.model.CountrySpec; -import com.stripe.model.CountrySpecCollection; -import com.stripe.net.ApiResource; -import java.util.HashMap; -import java.util.Map; -import org.junit.jupiter.api.Test; - -public class CountrySpecTest extends BaseStripeTest { - public static final String COUNTRY_SPEC_ID = "US"; - - @Test - public void testRetrieve() throws StripeException { - final CountrySpec countrySpec = CountrySpec.retrieve(COUNTRY_SPEC_ID); - - assertNotNull(countrySpec); - verifyRequest( - ApiResource.RequestMethod.GET, String.format("/v1/country_specs/%s", COUNTRY_SPEC_ID)); - } - - @Test - public void testList() throws StripeException { - final Map params = new HashMap<>(); - params.put("limit", 1); - - CountrySpecCollection countrySpecs = CountrySpec.list(params); - - assertNotNull(countrySpecs); - verifyRequest(ApiResource.RequestMethod.GET, String.format("/v1/country_specs"), params); - } -} diff --git a/src/test/java/com/stripe/functional/CouponTest.java b/src/test/java/com/stripe/functional/CouponTest.java deleted file mode 100644 index 2fd614b653f..00000000000 --- a/src/test/java/com/stripe/functional/CouponTest.java +++ /dev/null @@ -1,82 +0,0 @@ -package com.stripe.functional; - -import static org.junit.jupiter.api.Assertions.assertNotNull; -import static org.junit.jupiter.api.Assertions.assertTrue; - -import com.stripe.BaseStripeTest; -import com.stripe.exception.StripeException; -import com.stripe.model.Coupon; -import com.stripe.model.CouponCollection; -import com.stripe.net.ApiResource; -import java.util.HashMap; -import java.util.Map; -import org.junit.jupiter.api.Test; - -public class CouponTest extends BaseStripeTest { - public static final String COUPON_ID = "COUPON_ID"; - - private Coupon getCouponFixture() throws StripeException { - final Coupon coupon = Coupon.retrieve(COUPON_ID); - resetNetworkSpy(); - return coupon; - } - - @Test - public void testCreate() throws StripeException { - final Map params = new HashMap<>(); - params.put("percent_off", 25); - params.put("duration", "forever"); - - final Coupon coupon = Coupon.create(params); - - assertNotNull(coupon); - verifyRequest(ApiResource.RequestMethod.POST, String.format("/v1/coupons"), params); - } - - @Test - public void testRetrieve() throws StripeException { - final Coupon coupon = Coupon.retrieve(COUPON_ID); - - assertNotNull(coupon); - verifyRequest(ApiResource.RequestMethod.GET, String.format("/v1/coupons/%s", COUPON_ID)); - } - - @Test - public void testUpdate() throws StripeException { - final Coupon coupon = getCouponFixture(); - - final Map metadata = new HashMap<>(); - metadata.put("key", "value"); - final Map params = new HashMap<>(); - params.put("metadata", metadata); - - final Coupon updatedCoupon = coupon.update(params); - - assertNotNull(updatedCoupon); - verifyRequest( - ApiResource.RequestMethod.POST, String.format("/v1/coupons/%s", coupon.getId()), params); - } - - @Test - public void testList() throws StripeException { - final Map params = new HashMap<>(); - params.put("limit", 1); - - final CouponCollection coupons = Coupon.list(params); - - assertNotNull(coupons); - verifyRequest(ApiResource.RequestMethod.GET, String.format("/v1/coupons")); - } - - @Test - public void testDelete() throws StripeException { - final Coupon coupon = getCouponFixture(); - - final Coupon deletedCoupon = coupon.delete(); - - assertNotNull(deletedCoupon); - assertTrue(deletedCoupon.getDeleted()); - verifyRequest( - ApiResource.RequestMethod.DELETE, String.format("/v1/coupons/%s", coupon.getId())); - } -} diff --git a/src/test/java/com/stripe/functional/CustomerTest.java b/src/test/java/com/stripe/functional/CustomerTest.java deleted file mode 100644 index b4642d82f3e..00000000000 --- a/src/test/java/com/stripe/functional/CustomerTest.java +++ /dev/null @@ -1,102 +0,0 @@ -package com.stripe.functional; - -import static org.junit.jupiter.api.Assertions.assertNotNull; -import static org.junit.jupiter.api.Assertions.assertTrue; - -import com.stripe.BaseStripeTest; -import com.stripe.exception.StripeException; -import com.stripe.model.Customer; -import com.stripe.model.CustomerCollection; -import com.stripe.model.Discount; -import com.stripe.net.ApiResource; -import java.util.HashMap; -import java.util.Map; -import org.junit.jupiter.api.Test; - -public class CustomerTest extends BaseStripeTest { - public static final String CUSTOMER_ID = "cus_123"; - - private Customer getCustomerFixture() throws StripeException { - final Customer customer = Customer.retrieve(CUSTOMER_ID); - resetNetworkSpy(); - return customer; - } - - @Test - public void testCreate() throws StripeException { - final Map params = new HashMap<>(); - - final Customer customer = Customer.create(params); - - assertNotNull(customer); - verifyRequest(ApiResource.RequestMethod.POST, String.format("/v1/customers"), params); - } - - @Test - public void testRetrieve() throws StripeException { - final Customer customer = Customer.retrieve(CUSTOMER_ID); - - assertNotNull(customer); - verifyRequest(ApiResource.RequestMethod.GET, String.format("/v1/customers/%s", CUSTOMER_ID)); - } - - @Test - public void testUpdate() throws StripeException { - final Customer customer = getCustomerFixture(); - - final Map metadata = new HashMap<>(); - metadata.put("key", "value"); - Map params = new HashMap<>(); - params.put("metadata", metadata); - - final Customer updatedCustomer = customer.update(params); - - assertNotNull(updatedCustomer); - verifyRequest( - ApiResource.RequestMethod.POST, - String.format("/v1/customers/%s", customer.getId()), - params); - } - - @Test - public void testList() throws StripeException { - final Map params = new HashMap<>(); - params.put("limit", 1); - - final CustomerCollection customers = Customer.list(params); - - assertNotNull(customers); - verifyRequest(ApiResource.RequestMethod.GET, String.format("/v1/customers"), params); - } - - @Test - public void testDelete() throws StripeException { - final Customer customer = getCustomerFixture(); - - final Customer deletedCustomer = customer.delete(); - - assertNotNull(deletedCustomer); - assertTrue(deletedCustomer.getDeleted()); - verifyRequest( - ApiResource.RequestMethod.DELETE, String.format("/v1/customers/%s", customer.getId())); - } - - @Test - public void testDeleteDiscount() throws StripeException { - final Customer customer = getCustomerFixture(); - - // stripe-mock does not support /v1/customers/%s/discount endpoint, so we stub the request - stubRequest( - ApiResource.RequestMethod.DELETE, - String.format("/v1/customers/%s/discount", customer.getId()), - null, - Discount.class, - null); - - customer.deleteDiscount(); - - verifyRequest( - ApiResource.RequestMethod.DELETE, - String.format("/v1/customers/%s/discount", customer.getId())); - } -} diff --git a/src/test/java/com/stripe/functional/DisputeTest.java b/src/test/java/com/stripe/functional/DisputeTest.java deleted file mode 100644 index f343369dbc5..00000000000 --- a/src/test/java/com/stripe/functional/DisputeTest.java +++ /dev/null @@ -1,68 +0,0 @@ -package com.stripe.functional; - -import static org.junit.jupiter.api.Assertions.assertNotNull; - -import com.stripe.BaseStripeTest; -import com.stripe.exception.StripeException; -import com.stripe.model.Dispute; -import com.stripe.model.DisputeCollection; -import com.stripe.net.ApiResource; -import java.util.HashMap; -import java.util.Map; -import org.junit.jupiter.api.Test; - -public class DisputeTest extends BaseStripeTest { - public static final String DISPUTE_ID = "dp_123"; - - private Dispute getDisputeFixture() throws StripeException { - final Dispute dispute = Dispute.retrieve(DISPUTE_ID); - resetNetworkSpy(); - return dispute; - } - - @Test - public void testRetrieve() throws StripeException { - final Dispute dispute = Dispute.retrieve(DISPUTE_ID); - - assertNotNull(dispute); - verifyRequest(ApiResource.RequestMethod.GET, String.format("/v1/disputes/%s", DISPUTE_ID)); - } - - @Test - public void testUpdate() throws StripeException { - final Dispute dispute = getDisputeFixture(); - - final Map metadata = new HashMap<>(); - metadata.put("key", "value"); - final Map params = new HashMap<>(); - params.put("metadata", metadata); - - final Dispute updatedDispute = dispute.update(params); - - assertNotNull(updatedDispute); - verifyRequest( - ApiResource.RequestMethod.POST, String.format("/v1/disputes/%s", dispute.getId()), params); - } - - @Test - public void testList() throws StripeException { - final Map params = new HashMap<>(); - params.put("limit", 1); - - final DisputeCollection disputes = Dispute.list(params); - - assertNotNull(disputes); - verifyRequest(ApiResource.RequestMethod.GET, String.format("/v1/disputes"), params); - } - - @Test - public void testClose() throws StripeException { - final Dispute dispute = getDisputeFixture(); - - final Dispute closedDispute = dispute.close(); - - assertNotNull(closedDispute); - verifyRequest( - ApiResource.RequestMethod.POST, String.format("/v1/disputes/%s/close", dispute.getId())); - } -} diff --git a/src/test/java/com/stripe/functional/ExchangeRateTest.java b/src/test/java/com/stripe/functional/ExchangeRateTest.java deleted file mode 100644 index 74df34e9658..00000000000 --- a/src/test/java/com/stripe/functional/ExchangeRateTest.java +++ /dev/null @@ -1,35 +0,0 @@ -package com.stripe.functional; - -import static org.junit.jupiter.api.Assertions.assertNotNull; - -import com.stripe.BaseStripeTest; -import com.stripe.exception.StripeException; -import com.stripe.model.ExchangeRate; -import com.stripe.model.ExchangeRateCollection; -import com.stripe.net.ApiResource; -import java.util.HashMap; -import java.util.Map; -import org.junit.jupiter.api.Test; - -public class ExchangeRateTest extends BaseStripeTest { - public static final String CURRENCY = "usd"; - - @Test - public void testRetrieve() throws StripeException { - final ExchangeRate rate = ExchangeRate.retrieve(CURRENCY); - - assertNotNull(rate); - verifyRequest(ApiResource.RequestMethod.GET, String.format("/v1/exchange_rates/usd")); - } - - @Test - public void testList() throws StripeException { - final Map params = new HashMap<>(); - params.put("limit", 1); - - final ExchangeRateCollection rates = ExchangeRate.list(params); - - assertNotNull(rates); - verifyRequest(ApiResource.RequestMethod.GET, String.format("/v1/exchange_rates")); - } -} diff --git a/src/test/java/com/stripe/functional/FeeRefundTest.java b/src/test/java/com/stripe/functional/FeeRefundTest.java deleted file mode 100644 index 17fbb4d81ec..00000000000 --- a/src/test/java/com/stripe/functional/FeeRefundTest.java +++ /dev/null @@ -1,113 +0,0 @@ -package com.stripe.functional; - -import static org.junit.jupiter.api.Assertions.assertNotNull; - -import com.stripe.BaseStripeTest; -import com.stripe.exception.StripeException; -import com.stripe.model.ApplicationFee; -import com.stripe.model.FeeRefund; -import com.stripe.model.FeeRefundCollection; -import com.stripe.net.ApiResource; -import com.stripe.net.RequestOptions; -import com.stripe.param.FeeRefundCollectionCreateParams; -import java.util.HashMap; -import java.util.Map; -import org.junit.jupiter.api.Test; - -public class FeeRefundTest extends BaseStripeTest { - public static final String FEE_ID = "fee_123"; - public static final String REFUND_ID = "fr_123"; - - private ApplicationFee getFeeFixture() throws StripeException { - final ApplicationFee fee = ApplicationFee.retrieve(FEE_ID); - resetNetworkSpy(); - return fee; - } - - private FeeRefund getRefundFixture(ApplicationFee fee) throws StripeException { - final FeeRefund refund = fee.getRefunds().retrieve(REFUND_ID); - resetNetworkSpy(); - return refund; - } - - @Test - public void testCreate() throws StripeException { - final ApplicationFee fee = getFeeFixture(); - - final Map params = new HashMap<>(); - params.put("amount", 100); - - final FeeRefund refund = fee.getRefunds().create(params); - - assertNotNull(refund); - verifyRequest( - ApiResource.RequestMethod.POST, - String.format("/v1/application_fees/%s/refunds", fee.getId()), - params); - } - - @Test - public void testCreateWithTypedParams() throws StripeException { - final ApplicationFee fee = getFeeFixture(); - - FeeRefundCollectionCreateParams typedParams = - FeeRefundCollectionCreateParams.builder().setAmount(100L).build(); - - final FeeRefund refund = fee.getRefunds().create(typedParams, RequestOptions.getDefault()); - - assertNotNull(refund); - Map param = new HashMap<>(); - param.put("amount", 100); - verifyRequest( - ApiResource.RequestMethod.POST, - String.format("/v1/application_fees/%s/refunds", fee.getId()), - param); - } - - @Test - public void testRetrieve() throws StripeException { - final ApplicationFee fee = getFeeFixture(); - - final FeeRefund refund = fee.getRefunds().retrieve(REFUND_ID); - - assertNotNull(refund); - verifyRequest( - ApiResource.RequestMethod.GET, - String.format("/v1/application_fees/%s/refunds/%s", fee.getId(), REFUND_ID)); - } - - @Test - public void testUpdate() throws StripeException { - final ApplicationFee fee = getFeeFixture(); - final FeeRefund refund = getRefundFixture(fee); - - Map metadata = new HashMap<>(); - metadata.put("key", "value"); - Map params = new HashMap<>(); - params.put("metadata", metadata); - - final FeeRefund updatedRefund = refund.update(params); - - assertNotNull(updatedRefund); - verifyRequest( - ApiResource.RequestMethod.POST, - String.format("/v1/application_fees/%s/refunds/%s", fee.getId(), refund.getId()), - params); - } - - @Test - public void testList() throws StripeException { - final ApplicationFee fee = getFeeFixture(); - - final Map params = new HashMap<>(); - params.put("limit", 1); - - final FeeRefundCollection refunds = fee.getRefunds().list(params); - - assertNotNull(refunds); - verifyRequest( - ApiResource.RequestMethod.GET, - String.format("/v1/application_fees/%s/refunds", fee.getId()), - params); - } -} diff --git a/src/test/java/com/stripe/functional/FileLinkTest.java b/src/test/java/com/stripe/functional/FileLinkTest.java deleted file mode 100644 index 06510ff4812..00000000000 --- a/src/test/java/com/stripe/functional/FileLinkTest.java +++ /dev/null @@ -1,71 +0,0 @@ -package com.stripe.functional; - -import static org.junit.jupiter.api.Assertions.assertNotNull; - -import com.stripe.BaseStripeTest; -import com.stripe.exception.StripeException; -import com.stripe.model.FileLink; -import com.stripe.model.FileLinkCollection; -import com.stripe.net.ApiResource; -import java.util.HashMap; -import java.util.Map; -import org.junit.jupiter.api.Test; - -public class FileLinkTest extends BaseStripeTest { - public static final String FILE_LINK_ID = "link_123"; - - private FileLink getFileLinkFixture() throws StripeException { - final FileLink fileLink = FileLink.retrieve(FILE_LINK_ID); - resetNetworkSpy(); - return fileLink; - } - - @Test - public void testCreate() throws StripeException { - final Map params = new HashMap<>(); - params.put("file", "file_123"); - - final FileLink fileLink = FileLink.create(params); - - assertNotNull(fileLink); - verifyRequest(ApiResource.RequestMethod.POST, String.format("/v1/file_links"), params); - } - - @Test - public void testRetrieve() throws StripeException { - final FileLink fileLink = FileLink.retrieve(FILE_LINK_ID); - - assertNotNull(fileLink); - verifyRequest(ApiResource.RequestMethod.GET, String.format("/v1/file_links/%s", FILE_LINK_ID)); - } - - @Test - public void testUpdate() throws StripeException { - final FileLink fileLink = getFileLinkFixture(); - - final Map metadata = new HashMap<>(); - metadata.put("key", "value"); - final Map params = new HashMap<>(); - params.put("metadata", metadata); - - final FileLink updatedFileLink = fileLink.update(params); - - assertNotNull(updatedFileLink); - verifyRequest( - ApiResource.RequestMethod.POST, - String.format("/v1/file_links/%s", fileLink.getId()), - params); - } - - @Test - public void testList() throws StripeException { - final Map params = new HashMap<>(); - params.put("file", "file_123"); - params.put("limit", 1); - - final FileLinkCollection fileLinks = FileLink.list(params); - - assertNotNull(fileLinks); - verifyRequest(ApiResource.RequestMethod.GET, String.format("/v1/file_links")); - } -} diff --git a/src/test/java/com/stripe/functional/InvoiceItemTest.java b/src/test/java/com/stripe/functional/InvoiceItemTest.java deleted file mode 100644 index 723b6d99ced..00000000000 --- a/src/test/java/com/stripe/functional/InvoiceItemTest.java +++ /dev/null @@ -1,73 +0,0 @@ -package com.stripe.functional; - -import static org.junit.jupiter.api.Assertions.assertNotNull; - -import com.stripe.BaseStripeTest; -import com.stripe.exception.StripeException; -import com.stripe.model.InvoiceItem; -import com.stripe.model.InvoiceItemCollection; -import com.stripe.net.ApiResource; -import java.util.HashMap; -import java.util.Map; -import org.junit.jupiter.api.Test; - -public class InvoiceItemTest extends BaseStripeTest { - public static final String INVOICE_ITEM_ID = "ii_123"; - - private InvoiceItem getItemFixture() throws StripeException { - final InvoiceItem item = InvoiceItem.retrieve(INVOICE_ITEM_ID); - resetNetworkSpy(); - return item; - } - - @Test - public void testCreate() throws StripeException { - final Map params = new HashMap<>(); - params.put("amount", 100); - params.put("currency", "usd"); - params.put("customer", "cus_123"); - - final InvoiceItem item = InvoiceItem.create(params); - - assertNotNull(item); - verifyRequest(ApiResource.RequestMethod.POST, String.format("/v1/invoiceitems"), params); - } - - @Test - public void testRetrieve() throws StripeException { - final InvoiceItem item = InvoiceItem.retrieve(INVOICE_ITEM_ID); - - assertNotNull(item); - verifyRequest( - ApiResource.RequestMethod.GET, String.format("/v1/invoiceitems/%s", INVOICE_ITEM_ID)); - } - - @Test - public void testUpdate() throws StripeException { - final InvoiceItem resource = getItemFixture(); - - final Map metadata = new HashMap<>(); - metadata.put("key", "value"); - final Map params = new HashMap<>(); - params.put("metadata", metadata); - - final InvoiceItem updatedItem = resource.update(params); - - assertNotNull(updatedItem); - verifyRequest( - ApiResource.RequestMethod.POST, - String.format("/v1/invoiceitems/%s", resource.getId()), - params); - } - - @Test - public void testList() throws StripeException { - final Map params = new HashMap<>(); - params.put("limit", 1); - - InvoiceItemCollection items = InvoiceItem.list(params); - - assertNotNull(items); - verifyRequest(ApiResource.RequestMethod.GET, String.format("/v1/invoiceitems"), params); - } -} diff --git a/src/test/java/com/stripe/functional/LoginLinkTest.java b/src/test/java/com/stripe/functional/LoginLinkTest.java deleted file mode 100644 index 42229156978..00000000000 --- a/src/test/java/com/stripe/functional/LoginLinkTest.java +++ /dev/null @@ -1,35 +0,0 @@ -package com.stripe.functional; - -import static org.junit.jupiter.api.Assertions.assertNotNull; - -import com.stripe.BaseStripeTest; -import com.stripe.exception.StripeException; -import com.stripe.model.Account; -import com.stripe.model.LoginLink; -import com.stripe.net.ApiResource; -import java.io.IOException; -import java.util.Map; -import org.junit.jupiter.api.Test; - -public class LoginLinkTest extends BaseStripeTest { - public static final String ACCOUNT_ID = "acct_123"; - - @Test - public void testCreate() throws IOException, StripeException { - final Account account = Account.retrieve(ACCOUNT_ID, null); - - final LoginLink link = LoginLink.createOnAccount(ACCOUNT_ID, (Map) null, null); - - stubRequest( - ApiResource.RequestMethod.POST, - String.format("/v1/accounts/%s/login_links", account.getId()), - null, - LoginLink.class, - getResourceAsString("/api_fixtures/login_link.json")); - - assertNotNull(link); - verifyRequest( - ApiResource.RequestMethod.POST, - String.format("/v1/accounts/%s/login_links", account.getId())); - } -} diff --git a/src/test/java/com/stripe/functional/MandateTest.java b/src/test/java/com/stripe/functional/MandateTest.java deleted file mode 100644 index 52d5d9f61b2..00000000000 --- a/src/test/java/com/stripe/functional/MandateTest.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.stripe.functional; - -import static org.junit.jupiter.api.Assertions.assertNotNull; - -import com.stripe.BaseStripeTest; -import com.stripe.exception.StripeException; -import com.stripe.model.Mandate; -import com.stripe.net.ApiResource; -import org.junit.jupiter.api.Test; - -public class MandateTest extends BaseStripeTest { - public static final String MANDATE_ID = "mandate_123"; - - @Test - public void testRetrieve() throws StripeException { - final Mandate schedule = Mandate.retrieve(MANDATE_ID); - - assertNotNull(schedule); - verifyRequest(ApiResource.RequestMethod.GET, String.format("/v1/mandates/%s", MANDATE_ID)); - } -} diff --git a/src/test/java/com/stripe/functional/PaymentMethodTest.java b/src/test/java/com/stripe/functional/PaymentMethodTest.java deleted file mode 100644 index 07ac03ff552..00000000000 --- a/src/test/java/com/stripe/functional/PaymentMethodTest.java +++ /dev/null @@ -1,100 +0,0 @@ -package com.stripe.functional; - -import static org.junit.jupiter.api.Assertions.assertNotNull; - -import com.stripe.BaseStripeTest; -import com.stripe.exception.StripeException; -import com.stripe.model.PaymentMethod; -import com.stripe.model.PaymentMethodCollection; -import com.stripe.net.ApiResource; -import java.util.HashMap; -import java.util.Map; -import org.junit.jupiter.api.Test; - -public class PaymentMethodTest extends BaseStripeTest { - public static final String PAYMENT_METHOD_ID = "pm_123"; - - private PaymentMethod getPaymentMethodFixture() throws StripeException { - final PaymentMethod payment_method = PaymentMethod.retrieve(PAYMENT_METHOD_ID); - resetNetworkSpy(); - return payment_method; - } - - @Test - public void testCreate() throws StripeException { - final Map params = new HashMap<>(); - params.put("type", "card"); - - final PaymentMethod payment_method = PaymentMethod.create(params); - - assertNotNull(payment_method); - verifyRequest(ApiResource.RequestMethod.POST, String.format("/v1/payment_methods"), params); - } - - @Test - public void testRetrieve() throws StripeException { - final PaymentMethod payment_method = PaymentMethod.retrieve(PAYMENT_METHOD_ID); - - assertNotNull(payment_method); - verifyRequest( - ApiResource.RequestMethod.GET, String.format("/v1/payment_methods/%s", PAYMENT_METHOD_ID)); - } - - @Test - public void testUpdate() throws StripeException { - final PaymentMethod payment_method = getPaymentMethodFixture(); - - final Map metadata = new HashMap<>(); - metadata.put("key", "value"); - final Map params = new HashMap<>(); - params.put("metadata", metadata); - - final PaymentMethod updatedPaymentMethod = payment_method.update(params); - - assertNotNull(updatedPaymentMethod); - verifyRequest( - ApiResource.RequestMethod.POST, - String.format("/v1/payment_methods/%s", payment_method.getId()), - params); - } - - @Test - public void testList() throws StripeException { - final Map params = new HashMap<>(); - params.put("customer", "cus_123"); - params.put("limit", 1); - params.put("type", "card"); - - final PaymentMethodCollection payment_methods = PaymentMethod.list(params); - - assertNotNull(payment_methods); - verifyRequest(ApiResource.RequestMethod.GET, String.format("/v1/payment_methods")); - } - - @Test - public void testAttach() throws StripeException { - final PaymentMethod payment_method = getPaymentMethodFixture(); - - final Map params = new HashMap<>(); - params.put("customer", "cus_123"); - - final PaymentMethod attachedPaymentMethod = payment_method.attach(params); - - assertNotNull(attachedPaymentMethod); - verifyRequest( - ApiResource.RequestMethod.POST, - String.format("/v1/payment_methods/%s/attach", payment_method.getId())); - } - - @Test - public void testDetach() throws StripeException { - final PaymentMethod payment_method = getPaymentMethodFixture(); - - final PaymentMethod detachedPaymentMethod = payment_method.detach(); - - assertNotNull(detachedPaymentMethod); - verifyRequest( - ApiResource.RequestMethod.POST, - String.format("/v1/payment_methods/%s/detach", payment_method.getId())); - } -} diff --git a/src/test/java/com/stripe/functional/PayoutTest.java b/src/test/java/com/stripe/functional/PayoutTest.java deleted file mode 100644 index 3d73d576332..00000000000 --- a/src/test/java/com/stripe/functional/PayoutTest.java +++ /dev/null @@ -1,91 +0,0 @@ -package com.stripe.functional; - -import static org.junit.jupiter.api.Assertions.assertNotNull; - -import com.stripe.BaseStripeTest; -import com.stripe.exception.StripeException; -import com.stripe.model.Payout; -import com.stripe.model.PayoutCollection; -import com.stripe.net.ApiResource; -import java.util.HashMap; -import java.util.Map; -import org.junit.jupiter.api.Test; - -public class PayoutTest extends BaseStripeTest { - public static final String PAYOUT_ID = "po_123"; - - private Payout getPayoutFixture() throws StripeException { - final Payout payout = Payout.retrieve(PAYOUT_ID); - resetNetworkSpy(); - return payout; - } - - @Test - public void testCreate() throws StripeException { - final Map params = new HashMap<>(); - params.put("amount", "10000"); - params.put("currency", "usd"); - - final Payout payout = Payout.create(params); - - assertNotNull(payout); - verifyRequest(ApiResource.RequestMethod.POST, String.format("/v1/payouts"), params); - } - - @Test - public void testRetrieve() throws StripeException { - final Payout payout = Payout.retrieve(PAYOUT_ID); - - assertNotNull(payout); - verifyRequest(ApiResource.RequestMethod.GET, String.format("/v1/payouts/%s", PAYOUT_ID)); - } - - @Test - public void testUpdate() throws StripeException { - final Payout payout = getPayoutFixture(); - - final Map metadata = new HashMap<>(); - metadata.put("key", "value"); - final Map params = new HashMap<>(); - params.put("metadata", metadata); - - final Payout updatedPayout = payout.update(params); - - assertNotNull(updatedPayout); - verifyRequest( - ApiResource.RequestMethod.POST, String.format("/v1/payouts/%s", payout.getId()), params); - } - - @Test - public void testList() throws StripeException { - final Map params = new HashMap<>(); - params.put("limit", 1); - - final PayoutCollection payouts = Payout.list(params); - - assertNotNull(payouts); - verifyRequest(ApiResource.RequestMethod.GET, String.format("/v1/payouts"), params); - } - - @Test - public void testCancel() throws StripeException { - final Payout resource = getPayoutFixture(); - - final Payout cancelledPayout = resource.cancel(); - - assertNotNull(cancelledPayout); - verifyRequest( - ApiResource.RequestMethod.POST, String.format("/v1/payouts/%s/cancel", resource.getId())); - } - - @Test - public void testReverse() throws StripeException { - final Payout resource = getPayoutFixture(); - - final Payout reversedPayout = resource.reverse(); - - assertNotNull(reversedPayout); - verifyRequest( - ApiResource.RequestMethod.POST, String.format("/v1/payouts/%s/reverse", resource.getId())); - } -} diff --git a/src/test/java/com/stripe/functional/PersonTest.java b/src/test/java/com/stripe/functional/PersonTest.java deleted file mode 100644 index 84d2ffaedfb..00000000000 --- a/src/test/java/com/stripe/functional/PersonTest.java +++ /dev/null @@ -1,108 +0,0 @@ -package com.stripe.functional; - -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertNotNull; -import static org.junit.jupiter.api.Assertions.assertTrue; - -import com.stripe.BaseStripeTest; -import com.stripe.exception.StripeException; -import com.stripe.model.Account; -import com.stripe.model.Person; -import com.stripe.model.PersonCollection; -import com.stripe.net.ApiResource; -import java.util.HashMap; -import java.util.Map; -import org.junit.jupiter.api.Test; - -public class PersonTest extends BaseStripeTest { - public static final String ACCOUNT_ID = "cus_123"; - public static final String PERSON_ID = "person_123"; - - private PersonCollection getPersonCollectionFixture(Account account) throws StripeException { - PersonCollection persons = account.persons(); - resetNetworkSpy(); - - return persons; - } - - @Test - public void testCreate() throws StripeException { - final Account account = Account.retrieve(ACCOUNT_ID, null); - final PersonCollection personsTmp = getPersonCollectionFixture(account); - - final Map params = new HashMap<>(); - params.put("first_name", "John"); - - final Person person = personsTmp.create(params); - - assertNotNull(person); - verifyRequest( - ApiResource.RequestMethod.POST, - String.format("/v1/accounts/%s/persons", account.getId()), - params); - } - - @Test - public void testRetrieve() throws StripeException { - final Account account = Account.retrieve(ACCOUNT_ID, null); - final PersonCollection personsTmp = getPersonCollectionFixture(account); - Person person = personsTmp.retrieve(PERSON_ID); - - assertNotNull(person); - verifyRequest( - ApiResource.RequestMethod.GET, - String.format("/v1/accounts/%s/persons/%s", account.getId(), PERSON_ID)); - } - - @Test - public void testUpdate() throws StripeException { - final Account account = Account.retrieve(ACCOUNT_ID, null); - final PersonCollection personsTmp = getPersonCollectionFixture(account); - Person person = personsTmp.retrieve(PERSON_ID); - - final Map params = new HashMap<>(); - params.put("first_name", "John"); - - final Person updatedPerson = person.update(params); - - assertNotNull(updatedPerson); - verifyRequest( - ApiResource.RequestMethod.POST, - String.format("/v1/accounts/%s/persons/%s", account.getId(), person.getId()), - params); - } - - @Test - public void testList() throws StripeException { - final Account account = Account.retrieve(ACCOUNT_ID, null); - final PersonCollection personsTmp = getPersonCollectionFixture(account); - - final Map params = new HashMap<>(); - params.put("limit", 1); - - final PersonCollection persons = personsTmp.list(params); - - assertNotNull(persons); - assertEquals(1, persons.getData().size()); - verifyRequest( - ApiResource.RequestMethod.GET, String.format("/v1/accounts/%s/persons", account.getId())); - - final Person person = persons.getData().get(0); - assertNotNull(person); - } - - @Test - public void testDelete() throws StripeException { - final Account account = Account.retrieve(ACCOUNT_ID, null); - final PersonCollection personsTmp = getPersonCollectionFixture(account); - Person person = personsTmp.retrieve(PERSON_ID); - - final Person deletedPerson = person.delete(); - - assertNotNull(deletedPerson); - assertTrue(deletedPerson.getDeleted()); - verifyRequest( - ApiResource.RequestMethod.DELETE, - String.format("/v1/accounts/%s/persons/%s", account.getId(), person.getId())); - } -} diff --git a/src/test/java/com/stripe/functional/PriceTest.java b/src/test/java/com/stripe/functional/PriceTest.java deleted file mode 100644 index a2e9a00ad7b..00000000000 --- a/src/test/java/com/stripe/functional/PriceTest.java +++ /dev/null @@ -1,75 +0,0 @@ -package com.stripe.functional; - -import static org.junit.jupiter.api.Assertions.assertNotNull; - -import com.stripe.BaseStripeTest; -import com.stripe.exception.StripeException; -import com.stripe.model.Price; -import com.stripe.model.PriceCollection; -import com.stripe.net.ApiResource; -import java.util.HashMap; -import java.util.Map; -import org.junit.jupiter.api.Test; - -public class PriceTest extends BaseStripeTest { - public static final String PRICE_ID = "price_123"; - - private Price getPriceFixture() throws StripeException { - final Price price = Price.retrieve(PRICE_ID); - resetNetworkSpy(); - return price; - } - - @Test - public void testCreate() throws StripeException { - final Map recurringParams = new HashMap<>(); - recurringParams.put("interval", "month"); - - final Map productDataParams = new HashMap<>(); - productDataParams.put("name", "Product name"); - - final Map params = new HashMap<>(); - params.put("unit_amount", 1000); - params.put("currency", "usd"); - params.put("recurring", recurringParams); - params.put("product_data", productDataParams); - - final Price price = Price.create(params); - - assertNotNull(price); - verifyRequest(ApiResource.RequestMethod.POST, "/v1/prices", params); - } - - @Test - public void testRetrieve() throws StripeException { - final Price price = Price.retrieve(PRICE_ID); - - assertNotNull(price); - verifyRequest(ApiResource.RequestMethod.GET, String.format("/v1/prices/%s", PRICE_ID)); - } - - @Test - public void testUpdate() throws StripeException { - final Price price = getPriceFixture(); - - final Map params = new HashMap<>(); - params.put("nickname", "Updated Name"); - - final Price updatedPrice = price.update(params); - - assertNotNull(updatedPrice); - verifyRequest( - ApiResource.RequestMethod.POST, String.format("/v1/prices/%s", price.getId()), params); - } - - @Test - public void testList() throws StripeException { - final Map params = new HashMap<>(); - params.put("limit", 1); - - PriceCollection prices = Price.list(params); - - assertNotNull(prices); - verifyRequest(ApiResource.RequestMethod.GET, "/v1/prices", params); - } -} diff --git a/src/test/java/com/stripe/functional/ProductTest.java b/src/test/java/com/stripe/functional/ProductTest.java deleted file mode 100644 index da1894a0347..00000000000 --- a/src/test/java/com/stripe/functional/ProductTest.java +++ /dev/null @@ -1,89 +0,0 @@ -package com.stripe.functional; - -import static org.junit.jupiter.api.Assertions.assertNotNull; -import static org.junit.jupiter.api.Assertions.assertTrue; - -import com.stripe.BaseStripeTest; -import com.stripe.exception.StripeException; -import com.stripe.model.Product; -import com.stripe.model.ProductCollection; -import com.stripe.net.ApiResource; -import java.util.HashMap; -import java.util.Map; -import org.junit.jupiter.api.Test; - -public class ProductTest extends BaseStripeTest { - public static final String PRODUCT_ID = "prod_123"; - - private Product getProductFixture() throws StripeException { - final Product product = Product.retrieve(PRODUCT_ID); - resetNetworkSpy(); - return product; - } - - @Test - public void testCreate() throws StripeException { - final Map packageDimensions = new HashMap<>(); - packageDimensions.put("height", 2.234); - packageDimensions.put("length", 5.10); - packageDimensions.put("width", 6.50); - packageDimensions.put("weight", 10); - final Map params = new HashMap<>(); - params.put("active", true); - params.put("name", "Test Name"); - params.put("description", "This is a description"); - params.put("url", "http://example.com"); - params.put("shippable", true); - params.put("package_dimensions", packageDimensions); - - final Product product = Product.create(params); - - assertNotNull(product); - verifyRequest(ApiResource.RequestMethod.POST, "/v1/products", params); - } - - @Test - public void testRetrieve() throws StripeException { - final Product product = Product.retrieve(PRODUCT_ID); - - assertNotNull(product); - verifyRequest(ApiResource.RequestMethod.GET, String.format("/v1/products/%s", PRODUCT_ID)); - } - - @Test - public void testUpdate() throws StripeException { - final Product product = getProductFixture(); - - Map params = new HashMap<>(); - params.put("name", "Updated Name"); - - final Product updatedProduct = product.update(params); - - assertNotNull(updatedProduct); - verifyRequest( - ApiResource.RequestMethod.POST, String.format("/v1/products/%s", product.getId()), params); - } - - @Test - public void testDelete() throws StripeException { - final Product product = getProductFixture(); - - final Product deletedProduct = product.delete(); - - assertNotNull(deletedProduct); - assertTrue(deletedProduct.getDeleted()); - verifyRequest( - ApiResource.RequestMethod.DELETE, String.format("/v1/products/%s", product.getId())); - } - - @Test - public void testList() throws StripeException { - final Map params = new HashMap<>(); - params.put("limit", 1); - - final ProductCollection products = Product.list(params); - - assertNotNull(products); - verifyRequest(ApiResource.RequestMethod.GET, "/v1/products", params); - } -} diff --git a/src/test/java/com/stripe/functional/RefundTest.java b/src/test/java/com/stripe/functional/RefundTest.java deleted file mode 100644 index e8f266c5b75..00000000000 --- a/src/test/java/com/stripe/functional/RefundTest.java +++ /dev/null @@ -1,68 +0,0 @@ -package com.stripe.functional; - -import static org.junit.jupiter.api.Assertions.assertNotNull; - -import com.stripe.BaseStripeTest; -import com.stripe.exception.StripeException; -import com.stripe.model.Refund; -import com.stripe.model.RefundCollection; -import com.stripe.net.ApiResource; -import java.util.HashMap; -import java.util.Map; -import org.junit.jupiter.api.Test; - -public class RefundTest extends BaseStripeTest { - public static final String REFUND_ID = "re_123"; - - private Refund getRefundFixture() throws StripeException { - final Refund refund = Refund.retrieve(REFUND_ID); - resetNetworkSpy(); - return refund; - } - - @Test - public void testCreate() throws StripeException { - final Map params = new HashMap<>(); - params.put("charge", "ch_123"); - - final Refund refund = Refund.create(params); - - assertNotNull(refund); - verifyRequest(ApiResource.RequestMethod.POST, String.format("/v1/refunds"), params); - } - - @Test - public void testRetrieve() throws StripeException { - final Refund refund = Refund.retrieve(REFUND_ID); - - assertNotNull(refund); - verifyRequest(ApiResource.RequestMethod.GET, String.format("/v1/refunds/%s", REFUND_ID)); - } - - @Test - public void testUpdate() throws StripeException { - final Refund refund = getRefundFixture(); - - Map metadata = new HashMap<>(); - metadata.put("key", "value"); - Map params = new HashMap<>(); - params.put("metadata", metadata); - - final Refund updatedRefund = refund.update(params); - - assertNotNull(updatedRefund); - verifyRequest( - ApiResource.RequestMethod.POST, String.format("/v1/refunds/%s", refund.getId()), params); - } - - @Test - public void testList() throws StripeException { - final Map params = new HashMap<>(); - params.put("limit", 1); - - final RefundCollection refunds = Refund.list(params); - - assertNotNull(refunds); - verifyRequest(ApiResource.RequestMethod.GET, String.format("/v1/refunds"), params); - } -} diff --git a/src/test/java/com/stripe/functional/ReversalTest.java b/src/test/java/com/stripe/functional/ReversalTest.java deleted file mode 100644 index c6441cd5ef9..00000000000 --- a/src/test/java/com/stripe/functional/ReversalTest.java +++ /dev/null @@ -1,93 +0,0 @@ -package com.stripe.functional; - -import static org.junit.jupiter.api.Assertions.assertNotNull; - -import com.stripe.BaseStripeTest; -import com.stripe.exception.StripeException; -import com.stripe.model.Transfer; -import com.stripe.model.TransferReversal; -import com.stripe.model.TransferReversalCollection; -import com.stripe.net.ApiResource; -import java.util.HashMap; -import java.util.Map; -import org.junit.jupiter.api.Test; - -public class ReversalTest extends BaseStripeTest { - public static final String TRANSFER_ID = "tr_123"; - public static final String REVERSAL_ID = "trr_123"; - - private Transfer getTransferFixture() throws StripeException { - final Transfer transfer = Transfer.retrieve(TRANSFER_ID); - resetNetworkSpy(); - return transfer; - } - - private TransferReversal getTransferReversalFixture(Transfer transfer) throws StripeException { - final TransferReversal reversal = transfer.getReversals().retrieve(REVERSAL_ID); - resetNetworkSpy(); - return reversal; - } - - @Test - public void testCreate() throws StripeException { - final Transfer transfer = getTransferFixture(); - - Map params = new HashMap<>(); - params.put("amount", 100); - - final TransferReversal reversal = transfer.getReversals().create(params); - - assertNotNull(reversal); - verifyRequest( - ApiResource.RequestMethod.POST, - String.format("/v1/transfers/%s/reversals", transfer.getId()), - params); - } - - @Test - public void testRetrieve() throws StripeException { - final Transfer transfer = getTransferFixture(); - - final TransferReversal reversal = transfer.getReversals().retrieve(REVERSAL_ID); - - assertNotNull(reversal); - verifyRequest( - ApiResource.RequestMethod.GET, - String.format("/v1/transfers/%s/reversals/%s", transfer.getId(), REVERSAL_ID)); - } - - @Test - public void testUpdate() throws StripeException { - final Transfer transfer = getTransferFixture(); - final TransferReversal reversal = getTransferReversalFixture(transfer); - - final Map metadata = new HashMap<>(); - metadata.put("key", "value"); - final Map params = new HashMap<>(); - params.put("metadata", metadata); - - final TransferReversal updatedTransferReversal = reversal.update(params); - - assertNotNull(updatedTransferReversal); - verifyRequest( - ApiResource.RequestMethod.POST, - String.format("/v1/transfers/%s/reversals/%s", transfer.getId(), reversal.getId()), - params); - } - - @Test - public void testList() throws StripeException { - final Transfer transfer = getTransferFixture(); - - final Map params = new HashMap<>(); - params.put("limit", 1); - - final TransferReversalCollection reversals = transfer.getReversals().list(params); - - assertNotNull(reversals); - verifyRequest( - ApiResource.RequestMethod.GET, - String.format("/v1/transfers/%s/reversals", transfer.getId()), - params); - } -} diff --git a/src/test/java/com/stripe/functional/ReviewTest.java b/src/test/java/com/stripe/functional/ReviewTest.java deleted file mode 100644 index 7fed68a13d4..00000000000 --- a/src/test/java/com/stripe/functional/ReviewTest.java +++ /dev/null @@ -1,51 +0,0 @@ -package com.stripe.functional; - -import static org.junit.jupiter.api.Assertions.assertNotNull; - -import com.stripe.BaseStripeTest; -import com.stripe.exception.StripeException; -import com.stripe.model.Review; -import com.stripe.model.ReviewCollection; -import com.stripe.net.ApiResource; -import java.util.HashMap; -import java.util.Map; -import org.junit.jupiter.api.Test; - -public class ReviewTest extends BaseStripeTest { - public static final String REVIEW_ID = "prv_123"; - - private Review getReviewFixture() throws StripeException { - final Review review = Review.retrieve(REVIEW_ID); - resetNetworkSpy(); - return review; - } - - @Test - public void testApprove() throws StripeException { - final Review review = getReviewFixture(); - - review.approve(); - assertNotNull(review); - verifyRequest( - ApiResource.RequestMethod.POST, String.format("/v1/reviews/%s/approve", review.getId())); - } - - @Test - public void testList() throws StripeException { - final Map params = new HashMap<>(); - params.put("limit", 1); - - final ReviewCollection reviews = Review.list(params); - - assertNotNull(reviews); - verifyRequest(ApiResource.RequestMethod.GET, String.format("/v1/reviews")); - } - - @Test - public void testRetrieve() throws StripeException { - final Review review = Review.retrieve(REVIEW_ID); - - assertNotNull(review); - verifyRequest(ApiResource.RequestMethod.GET, String.format("/v1/reviews/%s", review.getId())); - } -} diff --git a/src/test/java/com/stripe/functional/SetupAttemptTest.java b/src/test/java/com/stripe/functional/SetupAttemptTest.java deleted file mode 100644 index e21ab12f887..00000000000 --- a/src/test/java/com/stripe/functional/SetupAttemptTest.java +++ /dev/null @@ -1,25 +0,0 @@ -package com.stripe.functional; - -import static org.junit.jupiter.api.Assertions.assertNotNull; - -import com.stripe.BaseStripeTest; -import com.stripe.exception.StripeException; -import com.stripe.model.SetupAttempt; -import com.stripe.model.SetupAttemptCollection; -import com.stripe.net.ApiResource; -import java.util.HashMap; -import java.util.Map; -import org.junit.jupiter.api.Test; - -public class SetupAttemptTest extends BaseStripeTest { - @Test - public void testList() throws StripeException { - final Map params = new HashMap<>(); - params.put("setup_intent", "seti_123"); - - final SetupAttemptCollection setupAttempts = SetupAttempt.list(params); - - assertNotNull(setupAttempts); - verifyRequest(ApiResource.RequestMethod.GET, String.format("/v1/setup_attempts"), params); - } -} diff --git a/src/test/java/com/stripe/functional/SubscriptionItemTest.java b/src/test/java/com/stripe/functional/SubscriptionItemTest.java deleted file mode 100644 index 87e3959ed4e..00000000000 --- a/src/test/java/com/stripe/functional/SubscriptionItemTest.java +++ /dev/null @@ -1,88 +0,0 @@ -package com.stripe.functional; - -import static org.junit.jupiter.api.Assertions.assertNotNull; -import static org.junit.jupiter.api.Assertions.assertTrue; - -import com.stripe.BaseStripeTest; -import com.stripe.exception.StripeException; -import com.stripe.model.SubscriptionItem; -import com.stripe.model.SubscriptionItemCollection; -import com.stripe.net.ApiResource; -import java.util.HashMap; -import java.util.Map; -import org.junit.jupiter.api.Test; - -public class SubscriptionItemTest extends BaseStripeTest { - public static final String ITEM_ID = "si_123"; - - private SubscriptionItem getItemFixture() throws StripeException { - final SubscriptionItem item = SubscriptionItem.retrieve(ITEM_ID); - resetNetworkSpy(); - return item; - } - - @Test - public void testCreate() throws StripeException { - final Map params = new HashMap<>(); - params.put("price", "price_123"); - params.put("subscription", "cus_123"); - params.put("quantity", 99); - - final SubscriptionItem subscriptionItem = SubscriptionItem.create(params); - - assertNotNull(subscriptionItem); - verifyRequest(ApiResource.RequestMethod.POST, "/v1/subscription_items", params); - } - - @Test - public void testRetrieve() throws StripeException { - final SubscriptionItem subscriptionItem = SubscriptionItem.retrieve(ITEM_ID); - - assertNotNull(subscriptionItem); - verifyRequest( - ApiResource.RequestMethod.GET, String.format("/v1/subscription_items/%s", ITEM_ID)); - } - - @Test - public void testUpdate() throws StripeException { - final SubscriptionItem subscriptionItem = getItemFixture(); - - final Map metadata = new HashMap<>(); - metadata.put("key", "value"); - final Map params = new HashMap<>(); - params.put("metadata", metadata); - - final SubscriptionItem updatedSubscriptionItem = subscriptionItem.update(params); - - assertNotNull(updatedSubscriptionItem); - verifyRequest( - ApiResource.RequestMethod.POST, - String.format("/v1/subscription_items/%s", subscriptionItem.getId()), - params); - } - - @Test - public void testDelete() throws StripeException { - final SubscriptionItem subscriptionItem = getItemFixture(); - - final SubscriptionItem deletedSubscriptionItem = subscriptionItem.delete(); - - assertNotNull(deletedSubscriptionItem); - assertTrue(deletedSubscriptionItem.getDeleted()); - verifyRequest( - ApiResource.RequestMethod.DELETE, - String.format("/v1/subscription_items/%s", subscriptionItem.getId())); - } - - @Test - public void testList() throws StripeException { - final Map params = new HashMap<>(); - params.put("limit", 1); - params.put("subscription", "sub_123"); - - final SubscriptionItemCollection subscriptionItems = SubscriptionItem.list(params); - - assertNotNull(subscriptionItems); - verifyRequest(ApiResource.RequestMethod.GET, "/v1/subscription_items", params); - } -} diff --git a/src/test/java/com/stripe/functional/SubscriptionScheduleTest.java b/src/test/java/com/stripe/functional/SubscriptionScheduleTest.java deleted file mode 100644 index 88054a6728c..00000000000 --- a/src/test/java/com/stripe/functional/SubscriptionScheduleTest.java +++ /dev/null @@ -1,103 +0,0 @@ -package com.stripe.functional; - -import static org.junit.jupiter.api.Assertions.assertNotNull; - -import com.stripe.BaseStripeTest; -import com.stripe.exception.StripeException; -import com.stripe.model.SubscriptionSchedule; -import com.stripe.model.SubscriptionScheduleCollection; -import com.stripe.net.ApiResource; -import java.util.HashMap; -import java.util.Map; -import org.junit.jupiter.api.Test; - -public class SubscriptionScheduleTest extends BaseStripeTest { - public static final String SCHEDULE_ID = "sub_sched_123"; - - private SubscriptionSchedule getSubscriptionScheduleFixture() throws StripeException { - final SubscriptionSchedule schedule = SubscriptionSchedule.retrieve(SCHEDULE_ID); - resetNetworkSpy(); - return schedule; - } - - @Test - public void testCancel() throws StripeException { - final SubscriptionSchedule schedule = getSubscriptionScheduleFixture(); - - final Map params = new HashMap<>(); - params.put("invoice_now", true); - - final SubscriptionSchedule canceledSchedule = schedule.cancel(params); - - assertNotNull(canceledSchedule); - verifyRequest( - ApiResource.RequestMethod.POST, - String.format("/v1/subscription_schedules/%s/cancel", schedule.getId()), - params); - } - - @Test - public void testCreate() throws StripeException { - final Map params = new HashMap<>(); - params.put("customer", "cus_123"); - - final SubscriptionSchedule schedule = SubscriptionSchedule.create(params); - - assertNotNull(schedule); - verifyRequest(ApiResource.RequestMethod.POST, "/v1/subscription_schedules", params); - } - - @Test - public void testList() throws StripeException { - final Map params = new HashMap<>(); - params.put("limit", 1); - - final SubscriptionScheduleCollection schedules = SubscriptionSchedule.list(params); - - assertNotNull(schedules); - verifyRequest(ApiResource.RequestMethod.GET, "/v1/subscription_schedules", params); - } - - @Test - public void testRelease() throws StripeException { - final SubscriptionSchedule schedule = getSubscriptionScheduleFixture(); - - final Map params = new HashMap<>(); - params.put("preserve_cancel_date", true); - - final SubscriptionSchedule releasedSchedule = schedule.release(params); - - assertNotNull(releasedSchedule); - verifyRequest( - ApiResource.RequestMethod.POST, - String.format("/v1/subscription_schedules/%s/release", schedule.getId()), - params); - } - - @Test - public void testRetrieve() throws StripeException { - final SubscriptionSchedule schedule = SubscriptionSchedule.retrieve(SCHEDULE_ID); - - assertNotNull(schedule); - verifyRequest( - ApiResource.RequestMethod.GET, String.format("/v1/subscription_schedules/%s", SCHEDULE_ID)); - } - - @Test - public void testUpdate() throws StripeException { - final SubscriptionSchedule schedule = getSubscriptionScheduleFixture(); - - final Map metadata = new HashMap<>(); - metadata.put("foo", "bar"); - final Map params = new HashMap<>(); - params.put("metadata", metadata); - - final SubscriptionSchedule updatedSubscriptionSchedule = schedule.update(params); - - assertNotNull(updatedSubscriptionSchedule); - verifyRequest( - ApiResource.RequestMethod.POST, - String.format("/v1/subscription_schedules/%s", schedule.getId()), - params); - } -} diff --git a/src/test/java/com/stripe/functional/SubscriptionTest.java b/src/test/java/com/stripe/functional/SubscriptionTest.java deleted file mode 100644 index 968e7726136..00000000000 --- a/src/test/java/com/stripe/functional/SubscriptionTest.java +++ /dev/null @@ -1,101 +0,0 @@ -package com.stripe.functional; - -import static org.junit.jupiter.api.Assertions.assertNotNull; - -import com.stripe.BaseStripeTest; -import com.stripe.exception.StripeException; -import com.stripe.model.Subscription; -import com.stripe.model.SubscriptionCollection; -import com.stripe.net.ApiResource; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import org.junit.jupiter.api.Test; - -public class SubscriptionTest extends BaseStripeTest { - public static final String SUBSCRIPTION_ID = "sub_123"; - - private Subscription getSubscriptionFixture() throws StripeException { - final Subscription subscription = Subscription.retrieve(SUBSCRIPTION_ID); - resetNetworkSpy(); - return subscription; - } - - @Test - public void testCreate() throws StripeException { - final Map item = new HashMap<>(); - item.put("plan", "silver-plan_123-898"); - final List items = new ArrayList<>(); - items.add(item); - final Map params = new HashMap<>(); - params.put("customer", "cus_123"); - params.put("items", items); - - final Subscription subscription = Subscription.create(params); - - assertNotNull(subscription); - verifyRequest(ApiResource.RequestMethod.POST, "/v1/subscriptions", params); - } - - @Test - public void testRetrieve() throws StripeException { - final Subscription subscription = Subscription.retrieve(SUBSCRIPTION_ID); - - assertNotNull(subscription); - verifyRequest( - ApiResource.RequestMethod.GET, String.format("/v1/subscriptions/%s", SUBSCRIPTION_ID)); - } - - @Test - public void testUpdate() throws StripeException { - final Subscription subscription = getSubscriptionFixture(); - - final Map metadata = new HashMap<>(); - metadata.put("key", "value"); - final Map params = new HashMap<>(); - params.put("metadata", metadata); - - final Subscription updatedSubscription = subscription.update(params); - - assertNotNull(updatedSubscription); - verifyRequest( - ApiResource.RequestMethod.POST, - String.format("/v1/subscriptions/%s", subscription.getId()), - params); - } - - @Test - public void testList() throws StripeException { - final Map params = new HashMap<>(); - params.put("limit", 1); - - final SubscriptionCollection subscriptions = Subscription.list(params); - - assertNotNull(subscriptions); - verifyRequest(ApiResource.RequestMethod.GET, "/v1/subscriptions", params); - } - - @Test - public void testCancel() throws StripeException { - final Subscription subscription = getSubscriptionFixture(); - - final Subscription canceledSubscription = subscription.cancel((Map) null); - - assertNotNull(canceledSubscription); - verifyRequest( - ApiResource.RequestMethod.DELETE, - String.format("/v1/subscriptions/%s", subscription.getId())); - } - - @Test - public void testDeleteDiscount() throws StripeException { - final Subscription subscription = getSubscriptionFixture(); - - subscription.deleteDiscount(); - - verifyRequest( - ApiResource.RequestMethod.DELETE, - String.format("/v1/subscriptions/%s/discount", subscription.getId())); - } -} diff --git a/src/test/java/com/stripe/functional/TaxCodeTest.java b/src/test/java/com/stripe/functional/TaxCodeTest.java deleted file mode 100644 index c2ce2cb3ba2..00000000000 --- a/src/test/java/com/stripe/functional/TaxCodeTest.java +++ /dev/null @@ -1,39 +0,0 @@ -package com.stripe.functional; - -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertNotNull; - -import com.stripe.BaseStripeTest; -import com.stripe.exception.StripeException; -import com.stripe.model.TaxCode; -import com.stripe.model.TaxCodeCollection; -import com.stripe.net.ApiResource; -import java.util.HashMap; -import java.util.Map; -import org.junit.jupiter.api.Test; - -public class TaxCodeTest extends BaseStripeTest { - public static final String TAX_CODE_ID = "txcd_123"; - - @Test - public void testRetrieve() throws StripeException { - final TaxCode taxCode = TaxCode.retrieve(TAX_CODE_ID); - - assertNotNull(taxCode); - verifyRequest(ApiResource.RequestMethod.GET, String.format("/v1/tax_codes/%s", TAX_CODE_ID)); - assertEquals("tax_code", taxCode.getObject()); - } - - @Test - public void testList() throws StripeException { - final Map params = new HashMap<>(); - params.put("limit", 1); - - final TaxCodeCollection taxCodes = TaxCode.list(params); - - assertNotNull(taxCodes); - assertEquals(1, taxCodes.getData().size()); - assertEquals("tax_code", taxCodes.getData().get(0).getObject()); - verifyRequest(ApiResource.RequestMethod.GET, "/v1/tax_codes", params); - } -} diff --git a/src/test/java/com/stripe/functional/TopupTest.java b/src/test/java/com/stripe/functional/TopupTest.java deleted file mode 100644 index 65c4d8af9fe..00000000000 --- a/src/test/java/com/stripe/functional/TopupTest.java +++ /dev/null @@ -1,87 +0,0 @@ -package com.stripe.functional; - -import static org.junit.jupiter.api.Assertions.assertNotNull; - -import com.stripe.BaseStripeTest; -import com.stripe.exception.StripeException; -import com.stripe.model.Topup; -import com.stripe.model.TopupCollection; -import com.stripe.net.ApiResource; -import java.util.HashMap; -import java.util.Map; -import org.junit.jupiter.api.Test; - -public class TopupTest extends BaseStripeTest { - public static final String TOPUP_ID = "tu_123"; - - private Topup getTopupFixture() throws StripeException { - final Topup topup = Topup.retrieve(TOPUP_ID); - resetNetworkSpy(); - return topup; - } - - @Test - public void testCancel() throws StripeException { - final Topup topup = getTopupFixture(); - - final Map params = new HashMap<>(); - - final Topup canceledTopup = topup.cancel(params); - - assertNotNull(canceledTopup); - verifyRequest( - ApiResource.RequestMethod.POST, - String.format("/v1/topups/%s/cancel", topup.getId()), - params); - } - - @Test - public void testCreate() throws StripeException { - final Map params = new HashMap<>(); - params.put("amount", 100); - params.put("currency", "usd"); - params.put("source", "src_123"); - params.put("description", "creating a topup"); - params.put("statement_descriptor", "topup"); - - final Topup topup = Topup.create(params); - - assertNotNull(topup); - verifyRequest(ApiResource.RequestMethod.POST, "/v1/topups", params); - } - - @Test - public void testRetrieve() throws StripeException { - final Topup topup = Topup.retrieve(TOPUP_ID); - - assertNotNull(topup); - verifyRequest(ApiResource.RequestMethod.GET, String.format("/v1/topups/%s", TOPUP_ID)); - } - - @Test - public void testUpdate() throws StripeException { - final Topup topup = getTopupFixture(); - - final Map metadata = new HashMap<>(); - metadata.put("key", "value"); - final Map params = new HashMap<>(); - params.put("metadata", metadata); - - final Topup updatedTopup = topup.update(params); - - assertNotNull(updatedTopup); - verifyRequest( - ApiResource.RequestMethod.POST, String.format("/v1/topups/%s", topup.getId()), params); - } - - @Test - public void testList() throws StripeException { - final Map params = new HashMap<>(); - params.put("limit", 1); - - final TopupCollection topups = Topup.list(params); - - assertNotNull(topups); - verifyRequest(ApiResource.RequestMethod.GET, "/v1/topups", params); - } -} diff --git a/src/test/java/com/stripe/functional/TransferTest.java b/src/test/java/com/stripe/functional/TransferTest.java deleted file mode 100644 index 0079e7d0ae1..00000000000 --- a/src/test/java/com/stripe/functional/TransferTest.java +++ /dev/null @@ -1,72 +0,0 @@ -package com.stripe.functional; - -import static org.junit.jupiter.api.Assertions.assertNotNull; - -import com.stripe.BaseStripeTest; -import com.stripe.exception.StripeException; -import com.stripe.model.Transfer; -import com.stripe.model.TransferCollection; -import com.stripe.net.ApiResource; -import java.util.HashMap; -import java.util.Map; -import org.junit.jupiter.api.Test; - -public class TransferTest extends BaseStripeTest { - public static final String TRANSFER_ID = "tr_123"; - - private Transfer getTransferFixture() throws StripeException { - final Transfer transfer = Transfer.retrieve(TRANSFER_ID); - resetNetworkSpy(); - return transfer; - } - - @Test - public void testCreate() throws StripeException { - final Map params = new HashMap<>(); - params.put("amount", 100); - params.put("currency", "usd"); - params.put("destination", "acct_123"); - - final Transfer transfer = Transfer.create(params); - - assertNotNull(transfer); - verifyRequest(ApiResource.RequestMethod.POST, "/v1/transfers", params); - } - - @Test - public void testRetrieve() throws StripeException { - final Transfer transfer = Transfer.retrieve(TRANSFER_ID); - - assertNotNull(transfer); - verifyRequest(ApiResource.RequestMethod.GET, String.format("/v1/transfers/%s", TRANSFER_ID)); - } - - @Test - public void testUpdate() throws StripeException { - Transfer transfer = getTransferFixture(); - - final Map metadata = new HashMap<>(); - metadata.put("key", "value"); - final Map params = new HashMap<>(); - params.put("metadata", metadata); - - final Transfer updatedTransfer = transfer.update(params); - - assertNotNull(updatedTransfer); - verifyRequest( - ApiResource.RequestMethod.POST, - String.format("/v1/transfers/%s", transfer.getId()), - params); - } - - @Test - public void testList() throws StripeException { - final Map params = new HashMap<>(); - params.put("limit", 1); - - final TransferCollection transfers = Transfer.list(params); - - assertNotNull(transfers); - verifyRequest(ApiResource.RequestMethod.GET, "/v1/transfers", params); - } -} diff --git a/src/test/java/com/stripe/functional/billingportal/ConfigurationTest.java b/src/test/java/com/stripe/functional/billingportal/ConfigurationTest.java deleted file mode 100644 index 5742d5bcdb5..00000000000 --- a/src/test/java/com/stripe/functional/billingportal/ConfigurationTest.java +++ /dev/null @@ -1,95 +0,0 @@ -package com.stripe.functional.billingportal; - -import static org.junit.jupiter.api.Assertions.assertNotNull; - -import com.stripe.BaseStripeTest; -import com.stripe.exception.StripeException; -import com.stripe.model.billingportal.Configuration; -import com.stripe.model.billingportal.ConfigurationCollection; -import com.stripe.net.ApiResource; -import com.stripe.param.billingportal.ConfigurationCreateParams; -import com.stripe.param.billingportal.ConfigurationUpdateParams; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import org.junit.jupiter.api.Test; - -public class ConfigurationTest extends BaseStripeTest { - public static final String SESSION_ID = "bpc_123"; - - private Configuration getConfigurationFixture() throws StripeException { - final Configuration configuration = Configuration.retrieve(SESSION_ID); - resetNetworkSpy(); - return configuration; - } - - @Test - public void testCreate() throws StripeException { - - List allowedUpdates = - new ArrayList<>(); - allowedUpdates.add(ConfigurationCreateParams.Features.CustomerUpdate.AllowedUpdate.ADDRESS); - ConfigurationCreateParams params = - ConfigurationCreateParams.builder() - .setBusinessProfile( - ConfigurationCreateParams.BusinessProfile.builder() - .setPrivacyPolicyUrl("https://example.com/privacy") - .setTermsOfServiceUrl("https://example.com/tos") - .build()) - .setFeatures( - ConfigurationCreateParams.Features.builder() - .setCustomerUpdate( - ConfigurationCreateParams.Features.CustomerUpdate.builder() - .setAllowedUpdates(allowedUpdates) - .setEnabled(true) - .build()) - .build()) - .build(); - - final Configuration configuration = Configuration.create(params); - - assertNotNull(configuration); - verifyRequest( - ApiResource.RequestMethod.POST, - String.format("/v1/billing_portal/configurations"), - params.toMap()); - } - - @Test - public void testRetrieve() throws StripeException { - final Configuration configuration = Configuration.retrieve(SESSION_ID); - - assertNotNull(configuration); - verifyRequest( - ApiResource.RequestMethod.GET, - String.format("/v1/billing_portal/configurations/%s", configuration.getId())); - } - - @Test - public void testUpdate() throws StripeException { - final Configuration configuration = getConfigurationFixture(); - - ConfigurationUpdateParams params = ConfigurationUpdateParams.builder().setActive(false).build(); - - final Configuration updatedConfiguration = configuration.update(params); - - assertNotNull(updatedConfiguration); - verifyRequest( - ApiResource.RequestMethod.POST, - String.format("/v1/billing_portal/configurations/%s", configuration.getId()), - params.toMap()); - } - - @Test - public void testList() throws StripeException { - final Map params = new HashMap<>(); - params.put("limit", 1); - - final ConfigurationCollection coupons = Configuration.list(params); - - assertNotNull(coupons); - verifyRequest( - ApiResource.RequestMethod.GET, String.format("/v1/billing_portal/configurations")); - } -} diff --git a/src/test/java/com/stripe/functional/billingportal/SessionTest.java b/src/test/java/com/stripe/functional/billingportal/SessionTest.java deleted file mode 100644 index 06390356ef2..00000000000 --- a/src/test/java/com/stripe/functional/billingportal/SessionTest.java +++ /dev/null @@ -1,32 +0,0 @@ -package com.stripe.functional.billingportal; - -import static org.junit.jupiter.api.Assertions.assertNotNull; - -import com.stripe.BaseStripeTest; -import com.stripe.exception.StripeException; -import com.stripe.model.billingportal.Session; -import com.stripe.net.ApiResource; -import com.stripe.param.billingportal.SessionCreateParams; -import org.junit.jupiter.api.Test; - -public class SessionTest extends BaseStripeTest { - public static final String SESSION_ID = "bps_123"; - - @Test - public void testCreate() throws StripeException { - - SessionCreateParams params = - SessionCreateParams.builder() - .setCustomer("cus_123") - .setReturnUrl("https://stripe.com/return") - .build(); - - final Session session = Session.create(params); - - assertNotNull(session); - verifyRequest( - ApiResource.RequestMethod.POST, - String.format("/v1/billing_portal/sessions"), - params.toMap()); - } -} diff --git a/src/test/java/com/stripe/functional/checkout/SessionTest.java b/src/test/java/com/stripe/functional/checkout/SessionTest.java deleted file mode 100644 index 7781062e81d..00000000000 --- a/src/test/java/com/stripe/functional/checkout/SessionTest.java +++ /dev/null @@ -1,44 +0,0 @@ -package com.stripe.functional.checkout; - -import static org.junit.jupiter.api.Assertions.assertNotNull; - -import com.stripe.BaseStripeTest; -import com.stripe.exception.StripeException; -import com.stripe.model.LineItemCollection; -import com.stripe.model.checkout.Session; -import com.stripe.net.ApiResource; -import com.stripe.param.checkout.SessionListLineItemsParams; -import org.junit.jupiter.api.Test; - -public class SessionTest extends BaseStripeTest { - public static final String SESSION_ID = "cs_123"; - - @Test - public void testListLineItems() throws StripeException { - - Session session = Session.retrieve(SESSION_ID); - - SessionListLineItemsParams params = SessionListLineItemsParams.builder().build(); - - final LineItemCollection lineItems = session.listLineItems(params); - - assertNotNull(lineItems); - verifyRequest( - ApiResource.RequestMethod.GET, - String.format("/v1/checkout/sessions/cs_123/line_items"), - params.toMap()); - } - - @Test - public void testSessionListLineItems() throws StripeException { - com.stripe.model.checkout.Session resource = - com.stripe.model.checkout.Session.retrieve("sess_xyz"); - com.stripe.param.checkout.SessionListLineItemsParams params = - com.stripe.param.checkout.SessionListLineItemsParams.builder().build(); - - com.stripe.model.LineItemCollection lineItems = resource.listLineItems(params); - assertNotNull(lineItems); - verifyRequest( - ApiResource.RequestMethod.GET, "/v1/checkout/sessions/sess_xyz/line_items", params.toMap()); - } -} diff --git a/src/test/java/com/stripe/functional/identity/VerificationReportTest.java b/src/test/java/com/stripe/functional/identity/VerificationReportTest.java deleted file mode 100644 index 93c9cb55be8..00000000000 --- a/src/test/java/com/stripe/functional/identity/VerificationReportTest.java +++ /dev/null @@ -1,39 +0,0 @@ -package com.stripe.functional.identity; - -import static org.junit.jupiter.api.Assertions.assertNotNull; - -import com.stripe.BaseStripeTest; -import com.stripe.exception.StripeException; -import com.stripe.model.identity.VerificationReport; -import com.stripe.model.identity.VerificationReportCollection; -import com.stripe.net.ApiResource; -import java.util.HashMap; -import java.util.Map; -import org.junit.jupiter.api.Test; - -public class VerificationReportTest extends BaseStripeTest { - public static final String VERIFICATION_REPORT_ID = "vr_123"; - - @Test - public void testRetrieve() throws StripeException { - final VerificationReport verificationReport = - VerificationReport.retrieve(VERIFICATION_REPORT_ID); - - assertNotNull(verificationReport); - verifyRequest( - ApiResource.RequestMethod.GET, - String.format("/v1/identity/verification_reports/%s", VERIFICATION_REPORT_ID)); - } - - @Test - public void testList() throws StripeException { - final Map params = new HashMap<>(); - params.put("limit", 1); - - VerificationReportCollection verificationReports = VerificationReport.list(params); - - assertNotNull(verificationReports); - verifyRequest( - ApiResource.RequestMethod.GET, String.format("/v1/identity/verification_reports"), params); - } -} diff --git a/src/test/java/com/stripe/functional/identity/VerificationSessionTest.java b/src/test/java/com/stripe/functional/identity/VerificationSessionTest.java deleted file mode 100644 index 4e8dc6ecfd7..00000000000 --- a/src/test/java/com/stripe/functional/identity/VerificationSessionTest.java +++ /dev/null @@ -1,99 +0,0 @@ -package com.stripe.functional.identity; - -import static org.junit.jupiter.api.Assertions.assertNotNull; - -import com.stripe.BaseStripeTest; -import com.stripe.exception.StripeException; -import com.stripe.model.identity.VerificationSession; -import com.stripe.model.identity.VerificationSessionCollection; -import com.stripe.net.ApiResource; -import java.util.HashMap; -import java.util.Map; -import org.junit.jupiter.api.Test; - -public class VerificationSessionTest extends BaseStripeTest { - public static final String VERIFICATION_SESSION_ID = "vs_123"; - - @Test - public void testCancel() throws StripeException { - final VerificationSession verificationSession = - VerificationSession.retrieve(VERIFICATION_SESSION_ID); - - final VerificationSession cancelledVerificationSession = - verificationSession.cancel((Map) null); - - assertNotNull(cancelledVerificationSession); - verifyRequest( - ApiResource.RequestMethod.POST, - String.format("/v1/identity/verification_sessions/%s/cancel", verificationSession.getId()), - null); - } - - @Test - public void testRedact() throws StripeException { - final VerificationSession verificationSession = - VerificationSession.retrieve(VERIFICATION_SESSION_ID); - - final VerificationSession redactedVerificationSession = - verificationSession.redact((Map) null); - - assertNotNull(redactedVerificationSession); - verifyRequest( - ApiResource.RequestMethod.POST, - String.format("/v1/identity/verification_sessions/%s/redact", verificationSession.getId()), - null); - } - - @Test - public void testCreate() throws StripeException { - final Map params = new HashMap<>(); - params.put("type", "id_number"); - - final VerificationSession verificationSession = VerificationSession.create(params); - - assertNotNull(verificationSession); - verifyRequest(ApiResource.RequestMethod.POST, "/v1/identity/verification_sessions", params); - } - - @Test - public void testRetrieve() throws StripeException { - final VerificationSession verificationSession = - VerificationSession.retrieve(VERIFICATION_SESSION_ID); - - assertNotNull(verificationSession); - verifyRequest( - ApiResource.RequestMethod.GET, - String.format("/v1/identity/verification_sessions/%s", VERIFICATION_SESSION_ID)); - } - - @Test - public void testUpdate() throws StripeException { - final VerificationSession verificationSession = - VerificationSession.retrieve(VERIFICATION_SESSION_ID); - - final Map metadata = new HashMap<>(); - metadata.put("key", "value"); - final Map params = new HashMap<>(); - params.put("metadata", metadata); - - final VerificationSession updatedVerificationSession = verificationSession.update(params); - - assertNotNull(updatedVerificationSession); - verifyRequest( - ApiResource.RequestMethod.POST, - String.format("/v1/identity/verification_sessions/%s", verificationSession.getId()), - params); - } - - @Test - public void testList() throws StripeException { - final Map params = new HashMap<>(); - params.put("limit", 1); - - VerificationSessionCollection verificationSessions = VerificationSession.list(params); - - assertNotNull(verificationSessions); - verifyRequest( - ApiResource.RequestMethod.GET, String.format("/v1/identity/verification_sessions"), params); - } -} diff --git a/src/test/java/com/stripe/functional/issuing/AuthorizationTest.java b/src/test/java/com/stripe/functional/issuing/AuthorizationTest.java deleted file mode 100644 index aabcbf7ba40..00000000000 --- a/src/test/java/com/stripe/functional/issuing/AuthorizationTest.java +++ /dev/null @@ -1,82 +0,0 @@ -package com.stripe.functional.issuing; - -import static org.junit.jupiter.api.Assertions.assertNotNull; - -import com.stripe.BaseStripeTest; -import com.stripe.exception.StripeException; -import com.stripe.model.issuing.Authorization; -import com.stripe.model.issuing.AuthorizationCollection; -import com.stripe.net.ApiResource; -import java.util.HashMap; -import java.util.Map; -import org.junit.jupiter.api.Test; - -public class AuthorizationTest extends BaseStripeTest { - public static final String AUTHORIZATION_ID = "iauth_123"; - - @Test - public void testApprove() throws StripeException { - final Authorization authorization = Authorization.retrieve(AUTHORIZATION_ID); - - final Authorization approvedAuthorization = authorization.approve((Map) null); - - assertNotNull(approvedAuthorization); - verifyRequest( - ApiResource.RequestMethod.POST, - String.format("/v1/issuing/authorizations/%s/approve", authorization.getId()), - null); - } - - @Test - public void testDecline() throws StripeException { - final Authorization authorization = Authorization.retrieve(AUTHORIZATION_ID); - - final Authorization approvedAuthorization = authorization.decline((Map) null); - - assertNotNull(approvedAuthorization); - verifyRequest( - ApiResource.RequestMethod.POST, - String.format("/v1/issuing/authorizations/%s/decline", authorization.getId()), - null); - } - - @Test - public void testRetrieve() throws StripeException { - final Authorization authorization = Authorization.retrieve(AUTHORIZATION_ID); - - assertNotNull(authorization); - verifyRequest( - ApiResource.RequestMethod.GET, - String.format("/v1/issuing/authorizations/%s", AUTHORIZATION_ID)); - } - - @Test - public void testUpdate() throws StripeException { - final Authorization authorization = Authorization.retrieve(AUTHORIZATION_ID); - - final Map metadata = new HashMap<>(); - metadata.put("key", "value"); - final Map params = new HashMap<>(); - params.put("metadata", metadata); - - final Authorization updatedAuthorization = authorization.update(params); - - assertNotNull(updatedAuthorization); - verifyRequest( - ApiResource.RequestMethod.POST, - String.format("/v1/issuing/authorizations/%s", authorization.getId()), - params); - } - - @Test - public void testList() throws StripeException { - final Map params = new HashMap<>(); - params.put("limit", 1); - - AuthorizationCollection authorizations = Authorization.list(params); - - assertNotNull(authorizations); - verifyRequest( - ApiResource.RequestMethod.GET, String.format("/v1/issuing/authorizations"), params); - } -} diff --git a/src/test/java/com/stripe/functional/issuing/CardTest.java b/src/test/java/com/stripe/functional/issuing/CardTest.java deleted file mode 100644 index fb9412267eb..00000000000 --- a/src/test/java/com/stripe/functional/issuing/CardTest.java +++ /dev/null @@ -1,65 +0,0 @@ -package com.stripe.functional.issuing; - -import static org.junit.jupiter.api.Assertions.assertNotNull; - -import com.stripe.BaseStripeTest; -import com.stripe.exception.StripeException; -import com.stripe.model.issuing.Card; -import com.stripe.model.issuing.CardCollection; -import com.stripe.net.ApiResource; -import java.util.HashMap; -import java.util.Map; -import org.junit.jupiter.api.Test; - -public class CardTest extends BaseStripeTest { - public static final String CARD_ID = "ic_123"; - - @Test - public void testCreate() throws StripeException { - final Map params = new HashMap<>(); - params.put("currency", "usd"); - params.put("type", "physical"); - - final Card card = Card.create(params); - - assertNotNull(card); - verifyRequest(ApiResource.RequestMethod.POST, String.format("/v1/issuing/cards"), params); - } - - @Test - public void testRetrieve() throws StripeException { - final Card card = Card.retrieve(CARD_ID); - - assertNotNull(card); - verifyRequest(ApiResource.RequestMethod.GET, String.format("/v1/issuing/cards/%s", CARD_ID)); - } - - @Test - public void testUpdate() throws StripeException { - final Card card = Card.retrieve(CARD_ID); - - final Map metadata = new HashMap<>(); - metadata.put("key", "value"); - final Map params = new HashMap<>(); - params.put("metadata", metadata); - - final Card updatedCard = card.update(params); - - assertNotNull(updatedCard); - verifyRequest( - ApiResource.RequestMethod.POST, - String.format("/v1/issuing/cards/%s", card.getId()), - params); - } - - @Test - public void testList() throws StripeException { - final Map params = new HashMap<>(); - params.put("limit", 1); - - CardCollection resources = Card.list(params); - - assertNotNull(resources); - verifyRequest(ApiResource.RequestMethod.GET, String.format("/v1/issuing/cards"), params); - } -} diff --git a/src/test/java/com/stripe/functional/issuing/CardholderTest.java b/src/test/java/com/stripe/functional/issuing/CardholderTest.java deleted file mode 100644 index 3866591484e..00000000000 --- a/src/test/java/com/stripe/functional/issuing/CardholderTest.java +++ /dev/null @@ -1,76 +0,0 @@ -package com.stripe.functional.issuing; - -import static org.junit.jupiter.api.Assertions.assertNotNull; - -import com.stripe.BaseStripeTest; -import com.stripe.exception.StripeException; -import com.stripe.model.issuing.Cardholder; -import com.stripe.model.issuing.CardholderCollection; -import com.stripe.net.ApiResource; -import java.util.HashMap; -import java.util.Map; -import org.junit.jupiter.api.Test; - -public class CardholderTest extends BaseStripeTest { - public static final String CARDHOLDER_ID = "ich_123"; - - @Test - public void testCreate() throws StripeException { - final Map address = new HashMap<>(); - address.put("city", "city"); - address.put("country", "US"); - address.put("line1", "line1"); - address.put("postal_code", "90210"); - - final Map billing = new HashMap<>(); - billing.put("address", address); - - final Map params = new HashMap<>(); - params.put("billing", billing); - params.put("name", "Jenny Rosen"); - params.put("type", "individual"); - - final Cardholder cardholder = Cardholder.create(params); - - assertNotNull(cardholder); - verifyRequest(ApiResource.RequestMethod.POST, String.format("/v1/issuing/cardholders"), params); - } - - @Test - public void testRetrieve() throws StripeException { - final Cardholder cardholder = Cardholder.retrieve(CARDHOLDER_ID); - - assertNotNull(cardholder); - verifyRequest( - ApiResource.RequestMethod.GET, String.format("/v1/issuing/cardholders/%s", CARDHOLDER_ID)); - } - - @Test - public void testUpdate() throws StripeException { - final Cardholder cardholder = Cardholder.retrieve(CARDHOLDER_ID); - - final Map metadata = new HashMap<>(); - metadata.put("key", "value"); - final Map params = new HashMap<>(); - params.put("metadata", metadata); - - final Cardholder updatedCardholder = cardholder.update(params); - - assertNotNull(updatedCardholder); - verifyRequest( - ApiResource.RequestMethod.POST, - String.format("/v1/issuing/cardholders/%s", cardholder.getId()), - params); - } - - @Test - public void testList() throws StripeException { - final Map params = new HashMap<>(); - params.put("limit", 1); - - CardholderCollection cardholders = Cardholder.list(params); - - assertNotNull(cardholders); - verifyRequest(ApiResource.RequestMethod.GET, String.format("/v1/issuing/cardholders"), params); - } -} diff --git a/src/test/java/com/stripe/functional/issuing/DisputeTest.java b/src/test/java/com/stripe/functional/issuing/DisputeTest.java deleted file mode 100644 index 5bfe5003be4..00000000000 --- a/src/test/java/com/stripe/functional/issuing/DisputeTest.java +++ /dev/null @@ -1,83 +0,0 @@ -package com.stripe.functional.issuing; - -import static org.junit.jupiter.api.Assertions.assertNotNull; - -import com.stripe.BaseStripeTest; -import com.stripe.exception.StripeException; -import com.stripe.model.issuing.Dispute; -import com.stripe.model.issuing.DisputeCollection; -import com.stripe.net.ApiResource; -import java.util.HashMap; -import java.util.Map; -import org.junit.jupiter.api.Test; - -public class DisputeTest extends BaseStripeTest { - public static final String DISPUTE_ID = "idp_123"; - - @Test - public void testCreate() throws StripeException { - final Map params = new HashMap<>(); - params.put("transaction", "ipi_123"); - - final Dispute dispute = Dispute.create(params); - - assertNotNull(dispute); - verifyRequest(ApiResource.RequestMethod.POST, String.format("/v1/issuing/disputes"), params); - } - - @Test - public void testRetrieve() throws StripeException { - final Dispute dispute = Dispute.retrieve(DISPUTE_ID); - - assertNotNull(dispute); - verifyRequest( - ApiResource.RequestMethod.GET, String.format("/v1/issuing/disputes/%s", DISPUTE_ID)); - } - - @Test - public void testsubmit() throws StripeException { - final Dispute dispute = Dispute.retrieve(DISPUTE_ID); - - final Map metadata = new HashMap<>(); - metadata.put("key", "value"); - final Map params = new HashMap<>(); - params.put("metadata", metadata); - - final Dispute submitdDispute = dispute.submit(params); - - assertNotNull(submitdDispute); - verifyRequest( - ApiResource.RequestMethod.POST, - String.format("/v1/issuing/disputes/%s/submit", dispute.getId()), - params); - } - - @Test - public void testUpdate() throws StripeException { - final Dispute dispute = Dispute.retrieve(DISPUTE_ID); - - final Map metadata = new HashMap<>(); - metadata.put("key", "value"); - final Map params = new HashMap<>(); - params.put("metadata", metadata); - - final Dispute updatedDispute = dispute.update(params); - - assertNotNull(updatedDispute); - verifyRequest( - ApiResource.RequestMethod.POST, - String.format("/v1/issuing/disputes/%s", dispute.getId()), - params); - } - - @Test - public void testList() throws StripeException { - final Map params = new HashMap<>(); - params.put("limit", 1); - - DisputeCollection disputes = Dispute.list(params); - - assertNotNull(disputes); - verifyRequest(ApiResource.RequestMethod.GET, String.format("/v1/issuing/disputes"), params); - } -} diff --git a/src/test/java/com/stripe/functional/issuing/TransactionTest.java b/src/test/java/com/stripe/functional/issuing/TransactionTest.java deleted file mode 100644 index 233f0716754..00000000000 --- a/src/test/java/com/stripe/functional/issuing/TransactionTest.java +++ /dev/null @@ -1,55 +0,0 @@ -package com.stripe.functional.issuing; - -import static org.junit.jupiter.api.Assertions.assertNotNull; - -import com.stripe.BaseStripeTest; -import com.stripe.exception.StripeException; -import com.stripe.model.issuing.Transaction; -import com.stripe.model.issuing.TransactionCollection; -import com.stripe.net.ApiResource; -import java.util.HashMap; -import java.util.Map; -import org.junit.jupiter.api.Test; - -public class TransactionTest extends BaseStripeTest { - public static final String TRANSACTION_ID = "ipi_123"; - - @Test - public void testRetrieve() throws StripeException { - final Transaction transaction = Transaction.retrieve(TRANSACTION_ID); - - assertNotNull(transaction); - verifyRequest( - ApiResource.RequestMethod.GET, - String.format("/v1/issuing/transactions/%s", TRANSACTION_ID)); - } - - @Test - public void testUpdate() throws StripeException { - final Transaction transaction = Transaction.retrieve(TRANSACTION_ID); - - final Map metadata = new HashMap<>(); - metadata.put("key", "value"); - final Map params = new HashMap<>(); - params.put("metadata", metadata); - - final Transaction updatedTransaction = transaction.update(params); - - assertNotNull(updatedTransaction); - verifyRequest( - ApiResource.RequestMethod.POST, - String.format("/v1/issuing/transactions/%s", transaction.getId()), - params); - } - - @Test - public void testList() throws StripeException { - final Map params = new HashMap<>(); - params.put("limit", 1); - - TransactionCollection transactions = Transaction.list(params); - - assertNotNull(transactions); - verifyRequest(ApiResource.RequestMethod.GET, String.format("/v1/issuing/transactions"), params); - } -} diff --git a/src/test/java/com/stripe/functional/radar/ValueListItemTest.java b/src/test/java/com/stripe/functional/radar/ValueListItemTest.java deleted file mode 100644 index 40075aaeb7c..00000000000 --- a/src/test/java/com/stripe/functional/radar/ValueListItemTest.java +++ /dev/null @@ -1,71 +0,0 @@ -package com.stripe.functional.radar; - -import static org.junit.jupiter.api.Assertions.assertNotNull; -import static org.junit.jupiter.api.Assertions.assertTrue; - -import com.stripe.BaseStripeTest; -import com.stripe.exception.StripeException; -import com.stripe.model.radar.ValueListItem; -import com.stripe.model.radar.ValueListItemCollection; -import com.stripe.net.ApiResource; -import java.util.HashMap; -import java.util.Map; -import org.junit.jupiter.api.Test; - -public class ValueListItemTest extends BaseStripeTest { - public static final String VALUE_LIST_ID = "rsli_123"; - - private ValueListItem getValueListItemFixture() throws StripeException { - final ValueListItem valueListItem = ValueListItem.retrieve(VALUE_LIST_ID); - resetNetworkSpy(); - return valueListItem; - } - - @Test - public void testCreate() throws StripeException { - final Map params = new HashMap<>(); - params.put("value", "value"); - params.put("value_list", "rsl_123"); - - final ValueListItem valueListItem = ValueListItem.create(params); - - assertNotNull(valueListItem); - verifyRequest( - ApiResource.RequestMethod.POST, String.format("/v1/radar/value_list_items"), params); - } - - @Test - public void testRetrieve() throws StripeException { - final ValueListItem valueListItem = ValueListItem.retrieve(VALUE_LIST_ID); - - assertNotNull(valueListItem); - verifyRequest( - ApiResource.RequestMethod.GET, - String.format("/v1/radar/value_list_items/%s", VALUE_LIST_ID)); - } - - @Test - public void testList() throws StripeException { - final Map params = new HashMap<>(); - params.put("value_list", "rsl_123"); - params.put("limit", 1); - - final ValueListItemCollection valueListItems = ValueListItem.list(params); - - assertNotNull(valueListItems); - verifyRequest(ApiResource.RequestMethod.GET, String.format("/v1/radar/value_list_items")); - } - - @Test - public void testDelete() throws StripeException { - final ValueListItem valueListItem = getValueListItemFixture(); - - final ValueListItem deletedValueListItem = valueListItem.delete(); - - assertNotNull(deletedValueListItem); - assertTrue(deletedValueListItem.getDeleted()); - verifyRequest( - ApiResource.RequestMethod.DELETE, - String.format("/v1/radar/value_list_items/%s", valueListItem.getId())); - } -} diff --git a/src/test/java/com/stripe/functional/radar/ValueListTest.java b/src/test/java/com/stripe/functional/radar/ValueListTest.java deleted file mode 100644 index e5df1bd1304..00000000000 --- a/src/test/java/com/stripe/functional/radar/ValueListTest.java +++ /dev/null @@ -1,86 +0,0 @@ -package com.stripe.functional.radar; - -import static org.junit.jupiter.api.Assertions.assertNotNull; -import static org.junit.jupiter.api.Assertions.assertTrue; - -import com.stripe.BaseStripeTest; -import com.stripe.exception.StripeException; -import com.stripe.model.radar.ValueList; -import com.stripe.model.radar.ValueListCollection; -import com.stripe.net.ApiResource; -import java.util.HashMap; -import java.util.Map; -import org.junit.jupiter.api.Test; - -public class ValueListTest extends BaseStripeTest { - public static final String VALUE_LIST_ID = "rsl_123"; - - private ValueList getValueListFixture() throws StripeException { - final ValueList valueList = ValueList.retrieve(VALUE_LIST_ID); - resetNetworkSpy(); - return valueList; - } - - @Test - public void testCreate() throws StripeException { - final Map params = new HashMap<>(); - params.put("alias", "alias"); - params.put("name", "name"); - - final ValueList valueList = ValueList.create(params); - - assertNotNull(valueList); - verifyRequest(ApiResource.RequestMethod.POST, String.format("/v1/radar/value_lists"), params); - } - - @Test - public void testRetrieve() throws StripeException { - final ValueList valueList = ValueList.retrieve(VALUE_LIST_ID); - - assertNotNull(valueList); - verifyRequest( - ApiResource.RequestMethod.GET, String.format("/v1/radar/value_lists/%s", VALUE_LIST_ID)); - } - - @Test - public void testUpdate() throws StripeException { - final ValueList valueList = getValueListFixture(); - - final Map metadata = new HashMap<>(); - metadata.put("key", "value"); - final Map params = new HashMap<>(); - params.put("metadata", metadata); - - final ValueList updatedValueList = valueList.update(params); - - assertNotNull(updatedValueList); - verifyRequest( - ApiResource.RequestMethod.POST, - String.format("/v1/radar/value_lists/%s", valueList.getId()), - params); - } - - @Test - public void testList() throws StripeException { - final Map params = new HashMap<>(); - params.put("limit", 1); - - final ValueListCollection valueLists = ValueList.list(params); - - assertNotNull(valueLists); - verifyRequest(ApiResource.RequestMethod.GET, String.format("/v1/radar/value_lists")); - } - - @Test - public void testDelete() throws StripeException { - final ValueList valueList = getValueListFixture(); - - final ValueList deletedValueList = valueList.delete(); - - assertNotNull(deletedValueList); - assertTrue(deletedValueList.getDeleted()); - verifyRequest( - ApiResource.RequestMethod.DELETE, - String.format("/v1/radar/value_lists/%s", valueList.getId())); - } -} diff --git a/src/test/java/com/stripe/functional/reporting/ReportRunTest.java b/src/test/java/com/stripe/functional/reporting/ReportRunTest.java deleted file mode 100644 index f822ea554d0..00000000000 --- a/src/test/java/com/stripe/functional/reporting/ReportRunTest.java +++ /dev/null @@ -1,50 +0,0 @@ -package com.stripe.functional.reporting; - -import static org.junit.jupiter.api.Assertions.assertNotNull; - -import com.stripe.BaseStripeTest; -import com.stripe.exception.StripeException; -import com.stripe.model.reporting.ReportRun; -import com.stripe.model.reporting.ReportRunCollection; -import com.stripe.net.ApiResource; -import java.util.HashMap; -import java.util.Map; -import org.junit.jupiter.api.Test; - -public class ReportRunTest extends BaseStripeTest { - public static final String REPORT_RUN_ID = "frr_123"; - - @Test - public void testCreate() throws StripeException { - final Map params = new HashMap<>(); - params.put("report_type", "activity.summary.1"); - - final ReportRun reportRun = ReportRun.create(params); - - assertNotNull(reportRun); - verifyRequest( - ApiResource.RequestMethod.POST, String.format("/v1/reporting/report_runs"), params); - } - - @Test - public void testRetrieve() throws StripeException { - final ReportRun reportRun = ReportRun.retrieve(REPORT_RUN_ID); - - assertNotNull(reportRun); - verifyRequest( - ApiResource.RequestMethod.GET, - String.format("/v1/reporting/report_runs/%s", REPORT_RUN_ID)); - } - - @Test - public void testList() throws StripeException { - final Map params = new HashMap<>(); - params.put("limit", 1); - - ReportRunCollection reportRuns = ReportRun.list(params); - - assertNotNull(reportRuns); - verifyRequest( - ApiResource.RequestMethod.GET, String.format("/v1/reporting/report_runs"), params); - } -} diff --git a/src/test/java/com/stripe/functional/reporting/ReportTypeTest.java b/src/test/java/com/stripe/functional/reporting/ReportTypeTest.java deleted file mode 100644 index 02a33b3b920..00000000000 --- a/src/test/java/com/stripe/functional/reporting/ReportTypeTest.java +++ /dev/null @@ -1,37 +0,0 @@ -package com.stripe.functional.reporting; - -import static org.junit.jupiter.api.Assertions.assertNotNull; - -import com.stripe.BaseStripeTest; -import com.stripe.exception.StripeException; -import com.stripe.model.reporting.ReportType; -import com.stripe.model.reporting.ReportTypeCollection; -import com.stripe.net.ApiResource; -import java.util.HashMap; -import java.util.Map; -import org.junit.jupiter.api.Test; - -public class ReportTypeTest extends BaseStripeTest { - public static final String REPORT_TYPE_ID = "activity.summary.1"; - - @Test - public void testRetrieve() throws StripeException { - final ReportType reportType = ReportType.retrieve(REPORT_TYPE_ID); - - assertNotNull(reportType); - verifyRequest( - ApiResource.RequestMethod.GET, - String.format("/v1/reporting/report_types/%s", REPORT_TYPE_ID)); - } - - @Test - public void testList() throws StripeException { - final Map params = new HashMap<>(); - - ReportTypeCollection reportTypes = ReportType.list(params); - - assertNotNull(reportTypes); - verifyRequest( - ApiResource.RequestMethod.GET, String.format("/v1/reporting/report_types"), params); - } -} diff --git a/src/test/java/com/stripe/functional/sigma/ScheduledQueryRunTest.java b/src/test/java/com/stripe/functional/sigma/ScheduledQueryRunTest.java deleted file mode 100644 index cdc8c44b902..00000000000 --- a/src/test/java/com/stripe/functional/sigma/ScheduledQueryRunTest.java +++ /dev/null @@ -1,37 +0,0 @@ -package com.stripe.functional.sigma; - -import static org.junit.jupiter.api.Assertions.assertNotNull; - -import com.stripe.BaseStripeTest; -import com.stripe.exception.StripeException; -import com.stripe.model.sigma.ScheduledQueryRun; -import com.stripe.model.sigma.ScheduledQueryRunCollection; -import com.stripe.net.ApiResource; -import java.util.HashMap; -import java.util.Map; -import org.junit.jupiter.api.Test; - -public class ScheduledQueryRunTest extends BaseStripeTest { - public static final String RUN_ID = "sqr_123"; - - @Test - public void testRetrieve() throws StripeException { - final ScheduledQueryRun run = ScheduledQueryRun.retrieve(RUN_ID); - - assertNotNull(run); - verifyRequest( - ApiResource.RequestMethod.GET, String.format("/v1/sigma/scheduled_query_runs/%s", RUN_ID)); - } - - @Test - public void testList() throws StripeException { - final Map params = new HashMap<>(); - params.put("limit", 1); - - ScheduledQueryRunCollection runs = ScheduledQueryRun.list(params); - - assertNotNull(runs); - verifyRequest( - ApiResource.RequestMethod.GET, String.format("/v1/sigma/scheduled_query_runs"), params); - } -} diff --git a/src/test/java/com/stripe/functional/terminal/ConnectionTokenTest.java b/src/test/java/com/stripe/functional/terminal/ConnectionTokenTest.java deleted file mode 100644 index 70060a0b40d..00000000000 --- a/src/test/java/com/stripe/functional/terminal/ConnectionTokenTest.java +++ /dev/null @@ -1,24 +0,0 @@ -package com.stripe.functional.terminal; - -import static org.junit.jupiter.api.Assertions.assertNotNull; - -import com.stripe.BaseStripeTest; -import com.stripe.exception.StripeException; -import com.stripe.model.terminal.ConnectionToken; -import com.stripe.net.ApiResource; -import java.util.HashMap; -import java.util.Map; -import org.junit.jupiter.api.Test; - -public class ConnectionTokenTest extends BaseStripeTest { - @Test - public void testCreate() throws StripeException { - final Map params = new HashMap<>(); - - final ConnectionToken connectionToken = ConnectionToken.create(params); - - assertNotNull(connectionToken); - verifyRequest( - ApiResource.RequestMethod.POST, String.format("/v1/terminal/connection_tokens"), params); - } -} diff --git a/src/test/java/com/stripe/functional/terminal/LocationTest.java b/src/test/java/com/stripe/functional/terminal/LocationTest.java deleted file mode 100644 index cd5812cb5f8..00000000000 --- a/src/test/java/com/stripe/functional/terminal/LocationTest.java +++ /dev/null @@ -1,84 +0,0 @@ -package com.stripe.functional.terminal; - -import static org.junit.jupiter.api.Assertions.assertNotNull; -import static org.junit.jupiter.api.Assertions.assertTrue; - -import com.stripe.BaseStripeTest; -import com.stripe.exception.StripeException; -import com.stripe.model.terminal.Location; -import com.stripe.model.terminal.LocationCollection; -import com.stripe.net.ApiResource; -import java.util.HashMap; -import java.util.Map; -import org.junit.jupiter.api.Test; - -public class LocationTest extends BaseStripeTest { - public static final String LOCATION_ID = "loc_123"; - - @Test - public void testCreate() throws StripeException { - final Map params = new HashMap<>(); - final Map address = new HashMap<>(); - address.put("line1", "line1"); - address.put("country", "US"); - address.put("state", "CA"); - address.put("postal_code", "123"); - address.put("city", "San Francisco"); - params.put("address", address); - params.put("display_name", "name"); - - final Location location = Location.create(params); - - assertNotNull(location); - verifyRequest(ApiResource.RequestMethod.POST, String.format("/v1/terminal/locations"), params); - } - - @Test - public void testRetrieve() throws StripeException { - final Location location = Location.retrieve(LOCATION_ID); - - assertNotNull(location); - verifyRequest( - ApiResource.RequestMethod.GET, String.format("/v1/terminal/locations/%s", LOCATION_ID)); - } - - @Test - public void testUpdate() throws StripeException { - final Location location = Location.retrieve(LOCATION_ID); - - final Map params = new HashMap<>(); - params.put("display_name", "new_name"); - - final Location updatedLocation = location.update(params); - - assertNotNull(updatedLocation); - verifyRequest( - ApiResource.RequestMethod.POST, - String.format("/v1/terminal/locations/%s", location.getId()), - params); - } - - @Test - public void testList() throws StripeException { - final Map params = new HashMap<>(); - params.put("limit", 1); - - LocationCollection resources = Location.list(params); - - assertNotNull(resources); - verifyRequest(ApiResource.RequestMethod.GET, String.format("/v1/terminal/locations"), params); - } - - @Test - public void testDelete() throws StripeException { - final Location location = Location.retrieve(LOCATION_ID); - - final Location deletedLocation = location.delete(); - - assertNotNull(deletedLocation); - assertTrue(deletedLocation.getDeleted()); - verifyRequest( - ApiResource.RequestMethod.DELETE, - String.format("/v1/terminal/locations/%s", location.getId())); - } -} diff --git a/src/test/java/com/stripe/functional/terminal/ReaderTest.java b/src/test/java/com/stripe/functional/terminal/ReaderTest.java deleted file mode 100644 index 49129f513cc..00000000000 --- a/src/test/java/com/stripe/functional/terminal/ReaderTest.java +++ /dev/null @@ -1,89 +0,0 @@ -package com.stripe.functional.terminal; - -import static org.junit.jupiter.api.Assertions.*; - -import com.stripe.BaseStripeTest; -import com.stripe.exception.StripeException; -import com.stripe.model.terminal.Reader; -import com.stripe.model.terminal.ReaderCollection; -import com.stripe.net.ApiResource; -import java.util.HashMap; -import java.util.Map; -import org.junit.jupiter.api.Test; - -public class ReaderTest extends BaseStripeTest { - public static final String READER_ID = "rdr_123"; - - @Test - public void testCreate() throws StripeException { - final Map params = new HashMap<>(); - params.put("registration_code", "rabbit-analyzed-pig"); - params.put("label", "device"); - - final Reader reader = Reader.create(params); - - assertNotNull(reader); - verifyRequest(ApiResource.RequestMethod.POST, String.format("/v1/terminal/readers"), params); - } - - @Test - public void testRetrieve() throws StripeException { - final Reader reader = Reader.retrieve(READER_ID); - - assertNotNull(reader); - verifyRequest( - ApiResource.RequestMethod.GET, String.format("/v1/terminal/readers/%s", READER_ID)); - } - - @Test - public void testUpdate() throws StripeException { - final Reader reader = Reader.retrieve(READER_ID); - - final Map params = new HashMap<>(); - params.put("label", "new_label"); - - final Reader updatedReader = reader.update(params); - - assertNotNull(updatedReader); - verifyRequest( - ApiResource.RequestMethod.POST, - String.format("/v1/terminal/readers/%s", reader.getId()), - params); - } - - @Test - public void testList() throws StripeException { - final Map params = new HashMap<>(); - params.put("limit", 1); - - ReaderCollection resources = Reader.list(params); - - assertNotNull(resources); - verifyRequest(ApiResource.RequestMethod.GET, String.format("/v1/terminal/readers"), params); - } - - @Test - public void testDelete() throws StripeException { - final Reader reader = Reader.retrieve(READER_ID); - - final Reader deletedReader = reader.delete(); - - assertNotNull(deletedReader); - assertTrue(deletedReader.getDeleted()); - verifyRequest( - ApiResource.RequestMethod.DELETE, String.format("/v1/terminal/readers/%s", reader.getId())); - } - - @Test - public void testPresentPaymentMethod() throws StripeException { - final Reader reader = Reader.retrieve(READER_ID); - - final Reader processedReader = reader.getTestHelpers().presentPaymentMethod(); - - assertNotNull(processedReader); - verifyRequest( - ApiResource.RequestMethod.POST, - String.format( - "/v1/test_helpers/terminal/readers/%s/present_payment_method", reader.getId())); - } -} From 0fb52d0eb10fc6c813bed1909165f972169b8e9c Mon Sep 17 00:00:00 2001 From: Stripe OpenAPI <105521251+stripe-openapi[bot]@users.noreply.github.com> Date: Mon, 15 Jun 2026 19:10:45 +0000 Subject: [PATCH 11/14] Update generated code for v2307 and cdaaf636cf151ac703fe3aa014b5ab6401a3cfaa --- CODEGEN_VERSION | 2 +- OPENAPI_VERSION | 2 +- src/main/java/com/stripe/model/Mandate.java | 24 +++++++++++++++ .../com/stripe/param/RefundListParams.java | 30 +++++++++++++++++++ 4 files changed, 56 insertions(+), 2 deletions(-) diff --git a/CODEGEN_VERSION b/CODEGEN_VERSION index 1afd6176dd2..d748ed7e6ec 100644 --- a/CODEGEN_VERSION +++ b/CODEGEN_VERSION @@ -1 +1 @@ -82247e059d3b5a48320b6660f03c625354926061 \ No newline at end of file +cdaaf636cf151ac703fe3aa014b5ab6401a3cfaa \ No newline at end of file diff --git a/OPENAPI_VERSION b/OPENAPI_VERSION index 33b3629ef81..8deaca5013e 100644 --- a/OPENAPI_VERSION +++ b/OPENAPI_VERSION @@ -1 +1 @@ -v2305 \ No newline at end of file +v2307 \ No newline at end of file diff --git a/src/main/java/com/stripe/model/Mandate.java b/src/main/java/com/stripe/model/Mandate.java index ebb61c2a636..7fb37acb947 100644 --- a/src/main/java/com/stripe/model/Mandate.java +++ b/src/main/java/com/stripe/model/Mandate.java @@ -261,6 +261,9 @@ public static class PaymentMethodDetails extends StripeObject { @SerializedName("bacs_debit") BacsDebit bacsDebit; + @SerializedName("blik") + Blik blik; + @SerializedName("card") Card card; @@ -420,6 +423,27 @@ public static class BacsDebit extends StripeObject { String url; } + /** + * For more details about Blik, please refer to the API + * Reference. + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Blik extends StripeObject { + /** Date at which the mandate expires. */ + @SerializedName("expires_after") + Long expiresAfter; + + /** + * Type of the mandate. + * + *

One of {@code off_session}, or {@code on_session}. + */ + @SerializedName("type") + String type; + } + /** * For more details about Card, please refer to the API * Reference. diff --git a/src/main/java/com/stripe/param/RefundListParams.java b/src/main/java/com/stripe/param/RefundListParams.java index 17f2717ad93..d86b9fdeb70 100644 --- a/src/main/java/com/stripe/param/RefundListParams.java +++ b/src/main/java/com/stripe/param/RefundListParams.java @@ -50,10 +50,18 @@ public class RefundListParams extends ApiRequestParams { @SerializedName("limit") Long limit; + /** Only return refunds for the PaymentAttemptRecord specified by this ID. */ + @SerializedName("payment_attempt_record") + String paymentAttemptRecord; + /** Only return refunds for the PaymentIntent specified by this ID. */ @SerializedName("payment_intent") String paymentIntent; + /** Only return refunds for the PaymentRecord specified by this ID. */ + @SerializedName("payment_record") + String paymentRecord; + /** * A cursor for use in pagination. {@code starting_after} is an object ID that defines your place * in the list. For instance, if you make a list request and receive 100 objects, ending with @@ -70,7 +78,9 @@ private RefundListParams( List expand, Map extraParams, Long limit, + String paymentAttemptRecord, String paymentIntent, + String paymentRecord, String startingAfter) { this.charge = charge; this.created = created; @@ -78,7 +88,9 @@ private RefundListParams( this.expand = expand; this.extraParams = extraParams; this.limit = limit; + this.paymentAttemptRecord = paymentAttemptRecord; this.paymentIntent = paymentIntent; + this.paymentRecord = paymentRecord; this.startingAfter = startingAfter; } @@ -99,8 +111,12 @@ public static class Builder { private Long limit; + private String paymentAttemptRecord; + private String paymentIntent; + private String paymentRecord; + private String startingAfter; /** Finalize and obtain parameter instance from this builder. */ @@ -112,7 +128,9 @@ public RefundListParams build() { this.expand, this.extraParams, this.limit, + this.paymentAttemptRecord, this.paymentIntent, + this.paymentRecord, this.startingAfter); } @@ -206,12 +224,24 @@ public Builder setLimit(Long limit) { return this; } + /** Only return refunds for the PaymentAttemptRecord specified by this ID. */ + public Builder setPaymentAttemptRecord(String paymentAttemptRecord) { + this.paymentAttemptRecord = paymentAttemptRecord; + return this; + } + /** Only return refunds for the PaymentIntent specified by this ID. */ public Builder setPaymentIntent(String paymentIntent) { this.paymentIntent = paymentIntent; return this; } + /** Only return refunds for the PaymentRecord specified by this ID. */ + public Builder setPaymentRecord(String paymentRecord) { + this.paymentRecord = paymentRecord; + return this; + } + /** * A cursor for use in pagination. {@code starting_after} is an object ID that defines your * place in the list. For instance, if you make a list request and receive 100 objects, ending From c39bef10ee08e0340621fb3377827a26e30cd2ab Mon Sep 17 00:00:00 2001 From: Stripe OpenAPI <105521251+stripe-openapi[bot]@users.noreply.github.com> Date: Mon, 15 Jun 2026 22:53:22 +0000 Subject: [PATCH 12/14] Update generated code for v2309 and dbad6fd3f98cb69a53ab27765bb6ca9234750adb --- CODEGEN_VERSION | 2 +- OPENAPI_VERSION | 2 +- src/main/java/com/stripe/model/Charge.java | 9 +++++---- .../param/PaymentAttemptRecordReportRefundParams.java | 3 +++ .../stripe/param/PaymentRecordReportRefundParams.java | 3 +++ 5 files changed, 13 insertions(+), 6 deletions(-) diff --git a/CODEGEN_VERSION b/CODEGEN_VERSION index d748ed7e6ec..8ee2bcc7dc0 100644 --- a/CODEGEN_VERSION +++ b/CODEGEN_VERSION @@ -1 +1 @@ -cdaaf636cf151ac703fe3aa014b5ab6401a3cfaa \ No newline at end of file +dbad6fd3f98cb69a53ab27765bb6ca9234750adb \ No newline at end of file diff --git a/OPENAPI_VERSION b/OPENAPI_VERSION index 8deaca5013e..e2ff024cf8e 100644 --- a/OPENAPI_VERSION +++ b/OPENAPI_VERSION @@ -1 +1 @@ -v2307 \ No newline at end of file +v2309 \ No newline at end of file diff --git a/src/main/java/com/stripe/model/Charge.java b/src/main/java/com/stripe/model/Charge.java index b48de4b3346..937038a25fe 100644 --- a/src/main/java/com/stripe/model/Charge.java +++ b/src/main/java/com/stripe/model/Charge.java @@ -2080,11 +2080,12 @@ public static class Card extends StripeObject { @EqualsAndHashCode(callSuper = false) public static class AccountFunding extends StripeObject { /** - * The transaction type of the card transaction. One of {@code account_funding} or {@code - * purchase}. + * Indicates whether or not this charge is a funding transaction. + * + *

One of {@code disabled}, or {@code enabled}. */ - @SerializedName("processed_transaction_type") - String processedTransactionType; + @SerializedName("status") + String status; } /** diff --git a/src/main/java/com/stripe/param/PaymentAttemptRecordReportRefundParams.java b/src/main/java/com/stripe/param/PaymentAttemptRecordReportRefundParams.java index 4619c9197ae..ca68850649d 100644 --- a/src/main/java/com/stripe/param/PaymentAttemptRecordReportRefundParams.java +++ b/src/main/java/com/stripe/param/PaymentAttemptRecordReportRefundParams.java @@ -615,6 +615,9 @@ public Builder setRefundedAt(Long refundedAt) { } public enum Outcome implements ApiRequestParams.EnumParam { + @SerializedName("failed") + FAILED("failed"), + @SerializedName("refunded") REFUNDED("refunded"); diff --git a/src/main/java/com/stripe/param/PaymentRecordReportRefundParams.java b/src/main/java/com/stripe/param/PaymentRecordReportRefundParams.java index 1bc65013b6c..dc623ea2995 100644 --- a/src/main/java/com/stripe/param/PaymentRecordReportRefundParams.java +++ b/src/main/java/com/stripe/param/PaymentRecordReportRefundParams.java @@ -609,6 +609,9 @@ public Builder setRefundedAt(Long refundedAt) { } public enum Outcome implements ApiRequestParams.EnumParam { + @SerializedName("failed") + FAILED("failed"), + @SerializedName("refunded") REFUNDED("refunded"); From 6eaab2a0b827d653f19c70cc9e9e3fe6a61ba446 Mon Sep 17 00:00:00 2001 From: Stripe OpenAPI <105521251+stripe-openapi[bot]@users.noreply.github.com> Date: Tue, 16 Jun 2026 00:13:30 +0000 Subject: [PATCH 13/14] Update generated code for v2310 and fcc6f448e0f2cf3352ae49d4484a2ca8970003e1 --- CODEGEN_VERSION | 2 +- OPENAPI_VERSION | 2 +- .../PaymentAttemptRecordReportRefundParams.java | 15 +++++++++++++++ .../param/PaymentRecordReportRefundParams.java | 15 +++++++++++++++ 4 files changed, 32 insertions(+), 2 deletions(-) diff --git a/CODEGEN_VERSION b/CODEGEN_VERSION index 8ee2bcc7dc0..91b186ddd37 100644 --- a/CODEGEN_VERSION +++ b/CODEGEN_VERSION @@ -1 +1 @@ -dbad6fd3f98cb69a53ab27765bb6ca9234750adb \ No newline at end of file +fcc6f448e0f2cf3352ae49d4484a2ca8970003e1 \ No newline at end of file diff --git a/OPENAPI_VERSION b/OPENAPI_VERSION index e2ff024cf8e..0ffbee33868 100644 --- a/OPENAPI_VERSION +++ b/OPENAPI_VERSION @@ -1 +1 @@ -v2309 \ No newline at end of file +v2310 \ No newline at end of file diff --git a/src/main/java/com/stripe/param/PaymentAttemptRecordReportRefundParams.java b/src/main/java/com/stripe/param/PaymentAttemptRecordReportRefundParams.java index ca68850649d..b12ff143cf1 100644 --- a/src/main/java/com/stripe/param/PaymentAttemptRecordReportRefundParams.java +++ b/src/main/java/com/stripe/param/PaymentAttemptRecordReportRefundParams.java @@ -56,6 +56,10 @@ public class PaymentAttemptRecordReportRefundParams extends ApiRequestParams { @SerializedName("processor_details") ProcessorDetails processorDetails; + /** A key to group refunds together. */ + @SerializedName("refund_group") + String refundGroup; + /** Information about the payment attempt refund. */ @SerializedName("refunded") Refunded refunded; @@ -68,6 +72,7 @@ private PaymentAttemptRecordReportRefundParams( Object metadata, Outcome outcome, ProcessorDetails processorDetails, + String refundGroup, Refunded refunded) { this.amount = amount; this.expand = expand; @@ -76,6 +81,7 @@ private PaymentAttemptRecordReportRefundParams( this.metadata = metadata; this.outcome = outcome; this.processorDetails = processorDetails; + this.refundGroup = refundGroup; this.refunded = refunded; } @@ -98,6 +104,8 @@ public static class Builder { private ProcessorDetails processorDetails; + private String refundGroup; + private Refunded refunded; /** Finalize and obtain parameter instance from this builder. */ @@ -110,6 +118,7 @@ public PaymentAttemptRecordReportRefundParams build() { this.metadata, this.outcome, this.processorDetails, + this.refundGroup, this.refunded); } @@ -244,6 +253,12 @@ public Builder setProcessorDetails( return this; } + /** A key to group refunds together. */ + public Builder setRefundGroup(String refundGroup) { + this.refundGroup = refundGroup; + return this; + } + /** Information about the payment attempt refund. */ public Builder setRefunded(PaymentAttemptRecordReportRefundParams.Refunded refunded) { this.refunded = refunded; diff --git a/src/main/java/com/stripe/param/PaymentRecordReportRefundParams.java b/src/main/java/com/stripe/param/PaymentRecordReportRefundParams.java index dc623ea2995..8aeb4d4ff32 100644 --- a/src/main/java/com/stripe/param/PaymentRecordReportRefundParams.java +++ b/src/main/java/com/stripe/param/PaymentRecordReportRefundParams.java @@ -56,6 +56,10 @@ public class PaymentRecordReportRefundParams extends ApiRequestParams { @SerializedName("processor_details") ProcessorDetails processorDetails; + /** A key to group refunds together. */ + @SerializedName("refund_group") + String refundGroup; + /** Information about the payment attempt refund. */ @SerializedName("refunded") Refunded refunded; @@ -68,6 +72,7 @@ private PaymentRecordReportRefundParams( Object metadata, Outcome outcome, ProcessorDetails processorDetails, + String refundGroup, Refunded refunded) { this.amount = amount; this.expand = expand; @@ -76,6 +81,7 @@ private PaymentRecordReportRefundParams( this.metadata = metadata; this.outcome = outcome; this.processorDetails = processorDetails; + this.refundGroup = refundGroup; this.refunded = refunded; } @@ -98,6 +104,8 @@ public static class Builder { private ProcessorDetails processorDetails; + private String refundGroup; + private Refunded refunded; /** Finalize and obtain parameter instance from this builder. */ @@ -110,6 +118,7 @@ public PaymentRecordReportRefundParams build() { this.metadata, this.outcome, this.processorDetails, + this.refundGroup, this.refunded); } @@ -244,6 +253,12 @@ public Builder setProcessorDetails( return this; } + /** A key to group refunds together. */ + public Builder setRefundGroup(String refundGroup) { + this.refundGroup = refundGroup; + return this; + } + /** Information about the payment attempt refund. */ public Builder setRefunded(PaymentRecordReportRefundParams.Refunded refunded) { this.refunded = refunded; From fed487042f02970398d35fbfdfd2e3e9cbba7b6b Mon Sep 17 00:00:00 2001 From: Stripe OpenAPI <105521251+stripe-openapi[bot]@users.noreply.github.com> Date: Tue, 16 Jun 2026 01:44:24 +0000 Subject: [PATCH 14/14] Update generated code for v2311 and 9f1b026510bc9d939dc89ab90fff40d27e770566 --- CODEGEN_VERSION | 2 +- OPENAPI_VERSION | 2 +- .../java/com/stripe/model/PaymentIntent.java | 25 +++ .../param/PaymentIntentConfirmParams.java | 149 ++++++++++++++++- .../param/PaymentIntentCreateParams.java | 149 ++++++++++++++++- .../param/PaymentIntentUpdateParams.java | 155 +++++++++++++++++- 6 files changed, 474 insertions(+), 8 deletions(-) diff --git a/CODEGEN_VERSION b/CODEGEN_VERSION index 91b186ddd37..3b886542424 100644 --- a/CODEGEN_VERSION +++ b/CODEGEN_VERSION @@ -1 +1 @@ -fcc6f448e0f2cf3352ae49d4484a2ca8970003e1 \ No newline at end of file +9f1b026510bc9d939dc89ab90fff40d27e770566 \ No newline at end of file diff --git a/OPENAPI_VERSION b/OPENAPI_VERSION index 0ffbee33868..a7dc15e48d2 100644 --- a/OPENAPI_VERSION +++ b/OPENAPI_VERSION @@ -1 +1 @@ -v2310 \ No newline at end of file +v2311 \ No newline at end of file diff --git a/src/main/java/com/stripe/model/PaymentIntent.java b/src/main/java/com/stripe/model/PaymentIntent.java index 0e81479dd0a..769532b31ae 100644 --- a/src/main/java/com/stripe/model/PaymentIntent.java +++ b/src/main/java/com/stripe/model/PaymentIntent.java @@ -6852,6 +6852,9 @@ public static class Crypto extends StripeObject { @SerializedName("setup_future_usage") String setupFutureUsage; + @SerializedName("transaction_verification_options") + TransactionVerificationOptions transactionVerificationOptions; + /** * For more details about DepositOptions, please refer to the API Reference. @@ -6875,6 +6878,28 @@ public static class DepositOptions extends StripeObject { @SerializedName("static_address") Boolean staticAddress; } + + /** + * For more details about TransactionVerificationOptions, please refer to the API Reference. + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class TransactionVerificationOptions extends StripeObject { + /** + * The network on which the transaction was submitted. + * + *

One of {@code base}, {@code ethereum}, {@code polygon}, {@code solana}, or {@code + * tempo}. + */ + @SerializedName("network") + String network; + + /** The hash of the onchain transaction to verify. */ + @SerializedName("transaction_hash") + String transactionHash; + } } /** diff --git a/src/main/java/com/stripe/param/PaymentIntentConfirmParams.java b/src/main/java/com/stripe/param/PaymentIntentConfirmParams.java index 0d3569b9a7f..bb99fd1de32 100644 --- a/src/main/java/com/stripe/param/PaymentIntentConfirmParams.java +++ b/src/main/java/com/stripe/param/PaymentIntentConfirmParams.java @@ -31796,15 +31796,24 @@ public static class Crypto { @SerializedName("setup_future_usage") SetupFutureUsage setupFutureUsage; + /** + * Specific configuration for this PaymentIntent when the mode is {@code + * transaction_verification}. + */ + @SerializedName("transaction_verification_options") + TransactionVerificationOptions transactionVerificationOptions; + private Crypto( DepositOptions depositOptions, Map extraParams, Mode mode, - SetupFutureUsage setupFutureUsage) { + SetupFutureUsage setupFutureUsage, + TransactionVerificationOptions transactionVerificationOptions) { this.depositOptions = depositOptions; this.extraParams = extraParams; this.mode = mode; this.setupFutureUsage = setupFutureUsage; + this.transactionVerificationOptions = transactionVerificationOptions; } public static Builder builder() { @@ -31820,10 +31829,16 @@ public static class Builder { private SetupFutureUsage setupFutureUsage; + private TransactionVerificationOptions transactionVerificationOptions; + /** Finalize and obtain parameter instance from this builder. */ public PaymentIntentConfirmParams.PaymentMethodOptions.Crypto build() { return new PaymentIntentConfirmParams.PaymentMethodOptions.Crypto( - this.depositOptions, this.extraParams, this.mode, this.setupFutureUsage); + this.depositOptions, + this.extraParams, + this.mode, + this.setupFutureUsage, + this.transactionVerificationOptions); } /** Specific configuration for this PaymentIntent when the mode is {@code deposit}. */ @@ -31897,6 +31912,17 @@ public Builder setSetupFutureUsage( this.setupFutureUsage = setupFutureUsage; return this; } + + /** + * Specific configuration for this PaymentIntent when the mode is {@code + * transaction_verification}. + */ + public Builder setTransactionVerificationOptions( + PaymentIntentConfirmParams.PaymentMethodOptions.Crypto.TransactionVerificationOptions + transactionVerificationOptions) { + this.transactionVerificationOptions = transactionVerificationOptions; + return this; + } } @Getter @@ -32055,6 +32081,125 @@ public enum Network implements ApiRequestParams.EnumParam { } } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class TransactionVerificationOptions { + /** + * 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. The network on which the transaction was submitted. */ + @SerializedName("network") + Network network; + + /** Required. The hash of the onchain transaction to verify. */ + @SerializedName("transaction_hash") + String transactionHash; + + private TransactionVerificationOptions( + Map extraParams, Network network, String transactionHash) { + this.extraParams = extraParams; + this.network = network; + this.transactionHash = transactionHash; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Network network; + + private String transactionHash; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentConfirmParams.PaymentMethodOptions.Crypto + .TransactionVerificationOptions + build() { + return new PaymentIntentConfirmParams.PaymentMethodOptions.Crypto + .TransactionVerificationOptions( + this.extraParams, this.network, this.transactionHash); + } + + /** + * 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 + * PaymentIntentConfirmParams.PaymentMethodOptions.Crypto.TransactionVerificationOptions#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 + * PaymentIntentConfirmParams.PaymentMethodOptions.Crypto.TransactionVerificationOptions#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. The network on which the transaction was submitted. */ + public Builder setNetwork( + PaymentIntentConfirmParams.PaymentMethodOptions.Crypto.TransactionVerificationOptions + .Network + network) { + this.network = network; + return this; + } + + /** Required. The hash of the onchain transaction to verify. */ + public Builder setTransactionHash(String transactionHash) { + this.transactionHash = transactionHash; + return this; + } + } + + public enum Network implements ApiRequestParams.EnumParam { + @SerializedName("base") + BASE("base"), + + @SerializedName("ethereum") + ETHEREUM("ethereum"), + + @SerializedName("polygon") + POLYGON("polygon"), + + @SerializedName("solana") + SOLANA("solana"), + + @SerializedName("tempo") + TEMPO("tempo"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + Network(String value) { + this.value = value; + } + } + } + public enum Mode implements ApiRequestParams.EnumParam { @SerializedName("default") DEFAULT("default"), diff --git a/src/main/java/com/stripe/param/PaymentIntentCreateParams.java b/src/main/java/com/stripe/param/PaymentIntentCreateParams.java index a2e0e1f6b5e..eb7cb445385 100644 --- a/src/main/java/com/stripe/param/PaymentIntentCreateParams.java +++ b/src/main/java/com/stripe/param/PaymentIntentCreateParams.java @@ -32269,15 +32269,24 @@ public static class Crypto { @SerializedName("setup_future_usage") SetupFutureUsage setupFutureUsage; + /** + * Specific configuration for this PaymentIntent when the mode is {@code + * transaction_verification}. + */ + @SerializedName("transaction_verification_options") + TransactionVerificationOptions transactionVerificationOptions; + private Crypto( DepositOptions depositOptions, Map extraParams, Mode mode, - SetupFutureUsage setupFutureUsage) { + SetupFutureUsage setupFutureUsage, + TransactionVerificationOptions transactionVerificationOptions) { this.depositOptions = depositOptions; this.extraParams = extraParams; this.mode = mode; this.setupFutureUsage = setupFutureUsage; + this.transactionVerificationOptions = transactionVerificationOptions; } public static Builder builder() { @@ -32293,10 +32302,16 @@ public static class Builder { private SetupFutureUsage setupFutureUsage; + private TransactionVerificationOptions transactionVerificationOptions; + /** Finalize and obtain parameter instance from this builder. */ public PaymentIntentCreateParams.PaymentMethodOptions.Crypto build() { return new PaymentIntentCreateParams.PaymentMethodOptions.Crypto( - this.depositOptions, this.extraParams, this.mode, this.setupFutureUsage); + this.depositOptions, + this.extraParams, + this.mode, + this.setupFutureUsage, + this.transactionVerificationOptions); } /** Specific configuration for this PaymentIntent when the mode is {@code deposit}. */ @@ -32370,6 +32385,17 @@ public Builder setSetupFutureUsage( this.setupFutureUsage = setupFutureUsage; return this; } + + /** + * Specific configuration for this PaymentIntent when the mode is {@code + * transaction_verification}. + */ + public Builder setTransactionVerificationOptions( + PaymentIntentCreateParams.PaymentMethodOptions.Crypto.TransactionVerificationOptions + transactionVerificationOptions) { + this.transactionVerificationOptions = transactionVerificationOptions; + return this; + } } @Getter @@ -32526,6 +32552,125 @@ public enum Network implements ApiRequestParams.EnumParam { } } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class TransactionVerificationOptions { + /** + * 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. The network on which the transaction was submitted. */ + @SerializedName("network") + Network network; + + /** Required. The hash of the onchain transaction to verify. */ + @SerializedName("transaction_hash") + String transactionHash; + + private TransactionVerificationOptions( + Map extraParams, Network network, String transactionHash) { + this.extraParams = extraParams; + this.network = network; + this.transactionHash = transactionHash; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Network network; + + private String transactionHash; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentCreateParams.PaymentMethodOptions.Crypto + .TransactionVerificationOptions + build() { + return new PaymentIntentCreateParams.PaymentMethodOptions.Crypto + .TransactionVerificationOptions( + this.extraParams, this.network, this.transactionHash); + } + + /** + * 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 + * PaymentIntentCreateParams.PaymentMethodOptions.Crypto.TransactionVerificationOptions#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 + * PaymentIntentCreateParams.PaymentMethodOptions.Crypto.TransactionVerificationOptions#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. The network on which the transaction was submitted. */ + public Builder setNetwork( + PaymentIntentCreateParams.PaymentMethodOptions.Crypto.TransactionVerificationOptions + .Network + network) { + this.network = network; + return this; + } + + /** Required. The hash of the onchain transaction to verify. */ + public Builder setTransactionHash(String transactionHash) { + this.transactionHash = transactionHash; + return this; + } + } + + public enum Network implements ApiRequestParams.EnumParam { + @SerializedName("base") + BASE("base"), + + @SerializedName("ethereum") + ETHEREUM("ethereum"), + + @SerializedName("polygon") + POLYGON("polygon"), + + @SerializedName("solana") + SOLANA("solana"), + + @SerializedName("tempo") + TEMPO("tempo"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + Network(String value) { + this.value = value; + } + } + } + public enum Mode implements ApiRequestParams.EnumParam { @SerializedName("default") DEFAULT("default"), diff --git a/src/main/java/com/stripe/param/PaymentIntentUpdateParams.java b/src/main/java/com/stripe/param/PaymentIntentUpdateParams.java index c1dd12c051f..12c3fc5f140 100644 --- a/src/main/java/com/stripe/param/PaymentIntentUpdateParams.java +++ b/src/main/java/com/stripe/param/PaymentIntentUpdateParams.java @@ -33622,15 +33622,24 @@ public static class Crypto { @SerializedName("setup_future_usage") SetupFutureUsage setupFutureUsage; + /** + * Specific configuration for this PaymentIntent when the mode is {@code + * transaction_verification}. + */ + @SerializedName("transaction_verification_options") + TransactionVerificationOptions transactionVerificationOptions; + private Crypto( DepositOptions depositOptions, Map extraParams, Mode mode, - SetupFutureUsage setupFutureUsage) { + SetupFutureUsage setupFutureUsage, + TransactionVerificationOptions transactionVerificationOptions) { this.depositOptions = depositOptions; this.extraParams = extraParams; this.mode = mode; this.setupFutureUsage = setupFutureUsage; + this.transactionVerificationOptions = transactionVerificationOptions; } public static Builder builder() { @@ -33646,10 +33655,16 @@ public static class Builder { private SetupFutureUsage setupFutureUsage; + private TransactionVerificationOptions transactionVerificationOptions; + /** Finalize and obtain parameter instance from this builder. */ public PaymentIntentUpdateParams.PaymentMethodOptions.Crypto build() { return new PaymentIntentUpdateParams.PaymentMethodOptions.Crypto( - this.depositOptions, this.extraParams, this.mode, this.setupFutureUsage); + this.depositOptions, + this.extraParams, + this.mode, + this.setupFutureUsage, + this.transactionVerificationOptions); } /** Specific configuration for this PaymentIntent when the mode is {@code deposit}. */ @@ -33723,6 +33738,17 @@ public Builder setSetupFutureUsage( this.setupFutureUsage = setupFutureUsage; return this; } + + /** + * Specific configuration for this PaymentIntent when the mode is {@code + * transaction_verification}. + */ + public Builder setTransactionVerificationOptions( + PaymentIntentUpdateParams.PaymentMethodOptions.Crypto.TransactionVerificationOptions + transactionVerificationOptions) { + this.transactionVerificationOptions = transactionVerificationOptions; + return this; + } } @Getter @@ -33879,6 +33905,131 @@ public enum Network implements ApiRequestParams.EnumParam { } } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class TransactionVerificationOptions { + /** + * 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. The network on which the transaction was submitted. */ + @SerializedName("network") + Network network; + + /** Required. The hash of the onchain transaction to verify. */ + @SerializedName("transaction_hash") + Object transactionHash; + + private TransactionVerificationOptions( + Map extraParams, Network network, Object transactionHash) { + this.extraParams = extraParams; + this.network = network; + this.transactionHash = transactionHash; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Network network; + + private Object transactionHash; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentUpdateParams.PaymentMethodOptions.Crypto + .TransactionVerificationOptions + build() { + return new PaymentIntentUpdateParams.PaymentMethodOptions.Crypto + .TransactionVerificationOptions( + this.extraParams, this.network, this.transactionHash); + } + + /** + * 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 + * PaymentIntentUpdateParams.PaymentMethodOptions.Crypto.TransactionVerificationOptions#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 + * PaymentIntentUpdateParams.PaymentMethodOptions.Crypto.TransactionVerificationOptions#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. The network on which the transaction was submitted. */ + public Builder setNetwork( + PaymentIntentUpdateParams.PaymentMethodOptions.Crypto.TransactionVerificationOptions + .Network + network) { + this.network = network; + return this; + } + + /** Required. The hash of the onchain transaction to verify. */ + public Builder setTransactionHash(String transactionHash) { + this.transactionHash = transactionHash; + return this; + } + + /** Required. The hash of the onchain transaction to verify. */ + public Builder setTransactionHash(EmptyParam transactionHash) { + this.transactionHash = transactionHash; + return this; + } + } + + public enum Network implements ApiRequestParams.EnumParam { + @SerializedName("base") + BASE("base"), + + @SerializedName("ethereum") + ETHEREUM("ethereum"), + + @SerializedName("polygon") + POLYGON("polygon"), + + @SerializedName("solana") + SOLANA("solana"), + + @SerializedName("tempo") + TEMPO("tempo"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + Network(String value) { + this.value = value; + } + } + } + public enum Mode implements ApiRequestParams.EnumParam { @SerializedName("default") DEFAULT("default"),