diff --git a/API_VERSION b/API_VERSION index c77af7bdda0..9cd67674355 100644 --- a/API_VERSION +++ b/API_VERSION @@ -1 +1 @@ -2025-06-30.preview \ No newline at end of file +2025-07-30.preview \ No newline at end of file diff --git a/CHANGELOG.md b/CHANGELOG.md index 20a0a82b0f4..9779064e8b5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -32,6 +32,43 @@ * Add support for new value `xx` on enums `v2.core.AccountCreateParams.configuration.customer.shipping.address.country`, `v2.core.AccountCreateParams.configuration.merchant.support.address.country`, `v2.core.AccountCreateParams.identity.business_details.address.country`, `v2.core.AccountCreateParams.identity.business_details.script_addresses.kana.country`, `v2.core.AccountCreateParams.identity.business_details.script_addresses.kanji.country`, `v2.core.AccountCreateParams.identity.country`, `v2.core.AccountCreateParams.identity.individual.additional_addresses[].country`, `v2.core.AccountCreateParams.identity.individual.address.country`, `v2.core.AccountCreateParams.identity.individual.script_addresses.kana.country`, `v2.core.AccountCreateParams.identity.individual.script_addresses.kanji.country`, `v2.core.AccountUpdateParams.configuration.customer.shipping.address.country`, `v2.core.AccountUpdateParams.configuration.merchant.support.address.country`, `v2.core.AccountUpdateParams.identity.business_details.address.country`, `v2.core.AccountUpdateParams.identity.business_details.script_addresses.kana.country`, `v2.core.AccountUpdateParams.identity.business_details.script_addresses.kanji.country`, `v2.core.AccountUpdateParams.identity.country`, `v2.core.AccountUpdateParams.identity.individual.additional_addresses[].country`, `v2.core.AccountUpdateParams.identity.individual.address.country`, `v2.core.AccountUpdateParams.identity.individual.script_addresses.kana.country`, `v2.core.AccountUpdateParams.identity.individual.script_addresses.kanji.country`, `v2.core.PersonCreateParams.additional_addresses[].country`, `v2.core.PersonCreateParams.address.country`, `v2.core.PersonCreateParams.script_addresses.kana.country`, `v2.core.PersonCreateParams.script_addresses.kanji.country`, `v2.core.PersonUpdateParams.additional_addresses[].country`, `v2.core.PersonUpdateParams.address.country`, `v2.core.PersonUpdateParams.script_addresses.kana.country`, and `v2.core.PersonUpdateParams.script_addresses.kanji.country` * Add support for new value `xx` on enums `v2.core.AccountCreateParams.identity.individual.nationalities`, `v2.core.AccountUpdateParams.identity.individual.nationalities`, `v2.core.PersonCreateParams.nationalities`, and `v2.core.PersonUpdateParams.nationalities` +## 29.3.0 - 2025-07-01 +* [#2013](https://github.com/stripe/stripe-java/pull/2013) Update generated code + * Add support for `migrate` method on resource `Subscription` + * Add support for `collect_payment_method` and `confirm_payment_intent` methods on resource `terminal.Reader` + * Add support for `cryptoPayments` on `Account.capabilities`, `AccountCreateParams.capabilities`, and `AccountUpdateParams.capabilities` + * Add support for `proofOfAddress` on `AccountCreateParams.documents` and `AccountUpdateParams.documents` + * Add support for `monthlyPayoutDays` and `weeklyPayoutDays` on `Account.settings.payouts.schedule`, `AccountCreateParams.settings.payouts.schedule`, and `AccountUpdateParams.settings.payouts.schedule` + * Add support for `crypto` on `Charge.payment_method_details`, `ConfirmationToken.payment_method_preview`, `ConfirmationTokenCreateParams.payment_method_data`, `PaymentIntent.payment_method_options`, `PaymentIntentConfirmParams.payment_method_data`, `PaymentIntentConfirmParams.payment_method_options`, `PaymentIntentCreateParams.payment_method_data`, `PaymentIntentCreateParams.payment_method_options`, `PaymentIntentUpdateParams.payment_method_data`, `PaymentIntentUpdateParams.payment_method_options`, `PaymentMethodCreateParams`, `PaymentMethod`, `SetupIntentConfirmParams.payment_method_data`, `SetupIntentCreateParams.payment_method_data`, and `SetupIntentUpdateParams.payment_method_data` + * Change type of `Charge.payment_method_details.card.installments.plan.type`, `ConfirmationToken.payment_method_options.card.installments.plan.type`, `ConfirmationTokenCreateParams.payment_method_options.card.installments.plan.type`, `InvoiceCreateParams.payment_settings.payment_method_options.card.installments.plan.type`, `InvoiceUpdateParams.payment_settings.payment_method_options.card.installments.plan.type`, `PaymentIntent.payment_method_options.card.installments.available_plans[].type`, `PaymentIntent.payment_method_options.card.installments.plan.type`, `PaymentIntentConfirmParams.payment_method_options.card.installments.plan.type`, `PaymentIntentCreateParams.payment_method_options.card.installments.plan.type`, and `PaymentIntentUpdateParams.payment_method_options.card.installments.plan.type` from `literal('fixed_count')` to `enum('bonus'|'fixed_count'|'revolving')` + * Add support for `subscriptions` on `PaymentIntentConfirmParams.payment_method_options.klarna`, `PaymentIntentCreateParams.payment_method_options.klarna`, `PaymentIntentUpdateParams.payment_method_options.klarna`, and `checkout.SessionCreateParams.payment_method_options.klarna` + * Add support for new value `crypto` on enum `checkout.SessionCreateParams.paymentMethodTypes` + * Add support for `billingMode` on `InvoiceCreatePreviewParams.schedule_details`, `InvoiceCreatePreviewParams.subscription_details`, `Quote.subscription_data`, `QuoteCreateParams.subscription_data`, `SubscriptionCreateParams`, `SubscriptionScheduleCreateParams`, `SubscriptionSchedule`, `Subscription`, and `checkout.SessionCreateParams.subscription_data` + * Add support for new value `buut` on enums `ConfirmationTokenCreateParams.payment_method_data.ideal.bank`, `PaymentIntentConfirmParams.payment_method_data.ideal.bank`, `PaymentIntentCreateParams.payment_method_data.ideal.bank`, `PaymentIntentUpdateParams.payment_method_data.ideal.bank`, `PaymentMethodCreateParams.ideal.bank`, `SetupIntentConfirmParams.payment_method_data.ideal.bank`, `SetupIntentCreateParams.payment_method_data.ideal.bank`, and `SetupIntentUpdateParams.payment_method_data.ideal.bank` + * Add support for new value `crypto` on enums `ConfirmationTokenCreateParams.payment_method_data.type`, `PaymentIntentConfirmParams.payment_method_data.type`, `PaymentIntentCreateParams.payment_method_data.type`, `PaymentIntentUpdateParams.payment_method_data.type`, `SetupIntentConfirmParams.payment_method_data.type`, `SetupIntentCreateParams.payment_method_data.type`, and `SetupIntentUpdateParams.payment_method_data.type` + * Add support for new value `crypto` on enums `CustomerListPaymentMethodsParams.type`, `PaymentMethodCreateParams.type`, and `PaymentMethodListParams.type` + * Change type of `Dispute.enhancedEligibilityTypes` from `literal('visa_compelling_evidence_3')` to `enum('visa_compelling_evidence_3'|'visa_compliance')` + * Add support for `relatedPerson` on `identity.VerificationSessionCreateParams` and `identity.VerificationSession` + * Add support for `matching` on `identity.VerificationSession.options` + * Add support for new value `crypto` on enums `InvoiceCreateParams.payment_settings.paymentMethodTypes`, `InvoiceUpdateParams.payment_settings.paymentMethodTypes`, `SubscriptionCreateParams.payment_settings.paymentMethodTypes`, and `SubscriptionUpdateParams.payment_settings.paymentMethodTypes` + * Add support for `klarna` on `Mandate.payment_method_details`, `SetupIntent.payment_method_options`, `SetupIntentConfirmParams.payment_method_options`, `SetupIntentCreateParams.payment_method_options`, and `SetupIntentUpdateParams.payment_method_options` + * Add support for `onDemand` on `PaymentIntentConfirmParams.payment_method_options.klarna`, `PaymentIntentCreateParams.payment_method_options.klarna`, and `PaymentIntentUpdateParams.payment_method_options.klarna` + * Change type of `PaymentIntent.payment_method_options.klarna.setupFutureUsage`, `PaymentIntentConfirmParams.payment_method_options.klarna.setupFutureUsage`, `PaymentIntentCreateParams.payment_method_options.klarna.setupFutureUsage`, and `PaymentIntentUpdateParams.payment_method_options.klarna.setupFutureUsage` from `literal('none')` to `enum('none'|'off_session'|'on_session')` + * Add support for `ua` on `tax.Registration.country_options` and `tax.RegistrationCreateParams.country_options` + * Change type of `terminal.LocationUpdateParams.displayName` from `string` to `emptyable(string)` + * Add support for `collectPaymentMethod` and `confirmPaymentIntent` on `terminal.Reader.action` + * Add support for `status` on `treasury.FinancialAccountListParams` + * Add support for new value `terminal.reader.action_updated` on enums `WebhookEndpointCreateParams.enabledEvents` and `WebhookEndpointUpdateParams.enabledEvents` + * Add support for new value `2025-06-30.basil` on enum `WebhookEndpointCreateParams.apiVersion` + * Add support for snapshot event `terminal.reader.action_updated` with resource `terminal.Reader` +* [#2023](https://github.com/stripe/stripe-java/pull/2023) Specify nexusUrl in deploy.gradle +* [#2020](https://github.com/stripe/stripe-java/pull/2020) Update snapshot endpoint in deploy.gradle +* [#2019](https://github.com/stripe/stripe-java/pull/2019) Update Sonatype endpoints in deploy.gradle +* [#2018](https://github.com/stripe/stripe-java/pull/2018) Link to the /changelog page instead of /upgrades +* [#2015](https://github.com/stripe/stripe-java/pull/2015) Revert "Updated StripeClient snippets with v1 namespace in Readme.md" +* [#2014](https://github.com/stripe/stripe-java/pull/2014) Updated StripeClient snippets with v1 namespace in Readme.md +* [#1987](https://github.com/stripe/stripe-java/pull/1987) Include Java versions 21, 22, 23, 24 in CI + ## 29.3.0-beta.3 - 2025-06-26 No changes in this release diff --git a/OPENAPI_VERSION b/OPENAPI_VERSION index d8931ef8a65..7b0334ddc01 100644 --- a/OPENAPI_VERSION +++ b/OPENAPI_VERSION @@ -1 +1 @@ -v1819 \ No newline at end of file +v1868 \ No newline at end of file diff --git a/src/main/java/com/stripe/ApiVersion.java b/src/main/java/com/stripe/ApiVersion.java index c1eedb5a6a0..fc56b891a81 100644 --- a/src/main/java/com/stripe/ApiVersion.java +++ b/src/main/java/com/stripe/ApiVersion.java @@ -2,5 +2,5 @@ package com.stripe; final class ApiVersion { - public static final String CURRENT = "2025-06-30.preview"; + public static final String CURRENT = "2025-07-30.preview"; } diff --git a/src/main/java/com/stripe/events/V2CoreAccountLinkCompletedEvent.java b/src/main/java/com/stripe/events/V2CoreAccountLinkReturnedEvent.java similarity index 81% rename from src/main/java/com/stripe/events/V2CoreAccountLinkCompletedEvent.java rename to src/main/java/com/stripe/events/V2CoreAccountLinkReturnedEvent.java index ef5b96bff05..54817bf3e04 100644 --- a/src/main/java/com/stripe/events/V2CoreAccountLinkCompletedEvent.java +++ b/src/main/java/com/stripe/events/V2CoreAccountLinkReturnedEvent.java @@ -8,10 +8,10 @@ import lombok.Setter; @Getter -public final class V2CoreAccountLinkCompletedEvent extends Event { - /** Data for the v2.core.account_link.completed event. */ +public final class V2CoreAccountLinkReturnedEvent extends Event { + /** Data for the v2.core.account_link.returned event. */ @SerializedName("data") - V2CoreAccountLinkCompletedEvent.EventData data; + V2CoreAccountLinkReturnedEvent.EventData data; @Getter @Setter diff --git a/src/main/java/com/stripe/events/V2OffSessionPaymentRequiresCaptureEvent.java b/src/main/java/com/stripe/events/V2MoneyManagementPayoutMethodUpdatedEvent.java similarity index 62% rename from src/main/java/com/stripe/events/V2OffSessionPaymentRequiresCaptureEvent.java rename to src/main/java/com/stripe/events/V2MoneyManagementPayoutMethodUpdatedEvent.java index c41b8298476..ac0fef5e97e 100644 --- a/src/main/java/com/stripe/events/V2OffSessionPaymentRequiresCaptureEvent.java +++ b/src/main/java/com/stripe/events/V2MoneyManagementPayoutMethodUpdatedEvent.java @@ -4,18 +4,18 @@ import com.google.gson.annotations.SerializedName; import com.stripe.exception.StripeException; import com.stripe.model.v2.Event; -import com.stripe.model.v2.payments.OffSessionPayment; +import com.stripe.model.v2.moneymanagement.PayoutMethod; import lombok.Getter; @Getter -public final class V2OffSessionPaymentRequiresCaptureEvent extends Event { +public final class V2MoneyManagementPayoutMethodUpdatedEvent extends Event { @SerializedName("related_object") /** Object containing the reference to API resource relevant to the event. */ RelatedObject relatedObject; /** Retrieves the related object from the API. Make an API request on every call. */ - public OffSessionPayment fetchRelatedObject() throws StripeException { - return (OffSessionPayment) super.fetchRelatedObject(this.relatedObject); + public PayoutMethod fetchRelatedObject() throws StripeException { + return (PayoutMethod) super.fetchRelatedObject(this.relatedObject); } } diff --git a/src/main/java/com/stripe/model/Account.java b/src/main/java/com/stripe/model/Account.java index 35514f577d0..ee59a99333b 100644 --- a/src/main/java/com/stripe/model/Account.java +++ b/src/main/java/com/stripe/model/Account.java @@ -315,10 +315,10 @@ public static Account create(AccountCreateParams params, RequestOptions options) * *

Test-mode accounts can be deleted at any time. * - *

Live-mode accounts where Stripe is responsible for negative account balances cannot be - * deleted, which includes Standard accounts. Live-mode accounts where your platform is liable for - * negative account balances, which includes Custom and Express accounts, can be deleted when all - * balances are zero. + *

Live-mode accounts that have access to the standard dashboard and Stripe is responsible for + * negative account balances cannot be deleted, which includes Standard accounts. All other + * Live-mode accounts, can be deleted when all balances are zero. * *

If you want to delete your own account, use the account information tab in your account @@ -333,10 +333,10 @@ public Account delete() throws StripeException { * *

Test-mode accounts can be deleted at any time. * - *

Live-mode accounts where Stripe is responsible for negative account balances cannot be - * deleted, which includes Standard accounts. Live-mode accounts where your platform is liable for - * negative account balances, which includes Custom and Express accounts, can be deleted when all - * balances are zero. + *

Live-mode accounts that have access to the standard dashboard and Stripe is responsible for + * negative account balances cannot be deleted, which includes Standard accounts. All other + * Live-mode accounts, can be deleted when all balances are zero. * *

If you want to delete your own account, use the account information tab in your account @@ -351,10 +351,10 @@ public Account delete(RequestOptions options) throws StripeException { * *

Test-mode accounts can be deleted at any time. * - *

Live-mode accounts where Stripe is responsible for negative account balances cannot be - * deleted, which includes Standard accounts. Live-mode accounts where your platform is liable for - * negative account balances, which includes Custom and Express accounts, can be deleted when all - * balances are zero. + *

Live-mode accounts that have access to the standard dashboard and Stripe is responsible for + * negative account balances cannot be deleted, which includes Standard accounts. All other + * Live-mode accounts, can be deleted when all balances are zero. * *

If you want to delete your own account, use the account information tab in your account @@ -369,10 +369,10 @@ public Account delete(Map params) throws StripeException { * *

Test-mode accounts can be deleted at any time. * - *

Live-mode accounts where Stripe is responsible for negative account balances cannot be - * deleted, which includes Standard accounts. Live-mode accounts where your platform is liable for - * negative account balances, which includes Custom and Express accounts, can be deleted when all - * balances are zero. + *

Live-mode accounts that have access to the standard dashboard and Stripe is responsible for + * negative account balances cannot be deleted, which includes Standard accounts. All other + * Live-mode accounts, can be deleted when all balances are zero. * *

If you want to delete your own account, use the account information tab in your account @@ -758,7 +758,7 @@ public static class BusinessProfile extends StripeObject { @SerializedName("mcc") String mcc; - /** Whether the business is a minority-owned, women-owned, and/or LGBTQI+-owned business. */ + /** Whether the business is a minority-owned, women-owned, and/or LGBTQI+ -owned business. */ @SerializedName("minority_owned_business_designation") List minorityOwnedBusinessDesignation; diff --git a/src/main/java/com/stripe/model/AccountSession.java b/src/main/java/com/stripe/model/AccountSession.java index 4674e78acf9..59dd6b53e97 100644 --- a/src/main/java/com/stripe/model/AccountSession.java +++ b/src/main/java/com/stripe/model/AccountSession.java @@ -156,6 +156,9 @@ public static class Components extends StripeObject { @SerializedName("financial_account_transactions") FinancialAccountTransactions financialAccountTransactions; + @SerializedName("instant_payouts_promotion") + InstantPayoutsPromotion instantPayoutsPromotion; + @SerializedName("issuing_card") IssuingCard issuingCard; @@ -573,6 +576,58 @@ public static class Features extends StripeObject { } } + /** + * For more details about InstantPayoutsPromotion, please refer to the API Reference. + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class InstantPayoutsPromotion extends StripeObject { + /** Whether the embedded component is enabled. */ + @SerializedName("enabled") + Boolean enabled; + + @SerializedName("features") + Features features; + + /** + * For more details about Features, please refer to the API Reference. + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Features extends StripeObject { + /** + * Whether Stripe user authentication is disabled. This value can only be {@code true} for + * accounts where {@code controller.requirement_collection} is {@code application} for the + * account. The default value is the opposite of the {@code external_account_collection} + * value. For example, if you don't set {@code external_account_collection}, it defaults to + * {@code true} and {@code disable_stripe_user_authentication} defaults to {@code false}. + */ + @SerializedName("disable_stripe_user_authentication") + Boolean disableStripeUserAuthentication; + + /** + * Whether external account collection is enabled. This feature can only be {@code false} + * for accounts where you’re responsible for collecting updated information when + * requirements are due or change, like Custom accounts. The default value for this feature + * is {@code true}. + */ + @SerializedName("external_account_collection") + Boolean externalAccountCollection; + + /** + * Whether to allow creation of instant payouts. Defaults to {@code true} when {@code + * controller.losses.payments} is set to {@code stripe} for the account, otherwise {@code + * false}. + */ + @SerializedName("instant_payouts") + Boolean instantPayouts; + } + } + /** * For more details about IssuingCard, please refer to the API Reference. diff --git a/src/main/java/com/stripe/model/BalanceSettings.java b/src/main/java/com/stripe/model/BalanceSettings.java index bbceff4fece..94541d8c2fd 100644 --- a/src/main/java/com/stripe/model/BalanceSettings.java +++ b/src/main/java/com/stripe/model/BalanceSettings.java @@ -11,6 +11,7 @@ import com.stripe.net.StripeResponseGetter; import com.stripe.param.BalanceSettingsRetrieveParams; import com.stripe.param.BalanceSettingsUpdateParams; +import java.util.List; import java.util.Map; import lombok.EqualsAndHashCode; import lombok.Getter; @@ -198,18 +199,15 @@ public static class Schedule extends StripeObject { * Payouts scheduled between the 29th and 31st of the month are sent on the last day of * shorter months. */ - @SerializedName("monthly_anchor") - Long monthlyAnchor; + @SerializedName("monthly_payout_days") + List monthlyPayoutDays; /** - * The day of the week funds will be paid out, of the style 'monday', 'tuesday', etc. Only - * shown if {@code interval} is weekly. - * - *

One of {@code friday}, {@code monday}, {@code thursday}, {@code tuesday}, or {@code - * wednesday}. + * The days of the week when available funds are paid out, specified as an array, for example, + * [{@code monday}, {@code tuesday}]. Only shown if {@code interval} is weekly. */ - @SerializedName("weekly_anchor") - String weeklyAnchor; + @SerializedName("weekly_payout_days") + List weeklyPayoutDays; } } diff --git a/src/main/java/com/stripe/model/Capability.java b/src/main/java/com/stripe/model/Capability.java index 75dd78dfcbf..f0c8d1b3e45 100644 --- a/src/main/java/com/stripe/model/Capability.java +++ b/src/main/java/com/stripe/model/Capability.java @@ -62,8 +62,7 @@ public class Capability extends ApiResource implements HasId { /** * The status of the capability. * - *

One of {@code active}, {@code disabled}, {@code inactive}, {@code pending}, or {@code - * unrequested}. + *

One of {@code active}, {@code inactive}, {@code pending}, or {@code unrequested}. */ @SerializedName("status") String status; diff --git a/src/main/java/com/stripe/model/Charge.java b/src/main/java/com/stripe/model/Charge.java index 68bafaaa5e3..c619d379b26 100644 --- a/src/main/java/com/stripe/model/Charge.java +++ b/src/main/java/com/stripe/model/Charge.java @@ -1569,9 +1569,9 @@ public static class Funding extends StripeObject { @EqualsAndHashCode(callSuper = false) public static class Card extends StripeObject { /** - * Card brand. Can be {@code amex}, {@code diners}, {@code discover}, {@code eftpos_au}, - * {@code jcb}, {@code link}, {@code mastercard}, {@code unionpay}, {@code visa}, or - * {@code unknown}. + * Card brand. Can be {@code amex}, {@code cartes_bancaires}, {@code diners}, {@code + * discover}, {@code eftpos_au}, {@code jcb}, {@code link}, {@code mastercard}, {@code + * unionpay}, {@code visa} or {@code unknown}. */ @SerializedName("brand") String brand; @@ -1822,9 +1822,9 @@ public static class Card extends StripeObject { String authorizationCode; /** - * Card brand. Can be {@code amex}, {@code diners}, {@code discover}, {@code eftpos_au}, - * {@code jcb}, {@code link}, {@code mastercard}, {@code unionpay}, {@code visa}, or {@code - * unknown}. + * Card brand. Can be {@code amex}, {@code cartes_bancaires}, {@code diners}, {@code + * discover}, {@code eftpos_au}, {@code jcb}, {@code link}, {@code mastercard}, {@code + * unionpay}, {@code visa} or {@code unknown}. */ @SerializedName("brand") String brand; @@ -2429,9 +2429,9 @@ public static class CardPresent extends StripeObject { Long amountAuthorized; /** - * Card brand. Can be {@code amex}, {@code diners}, {@code discover}, {@code eftpos_au}, - * {@code jcb}, {@code link}, {@code mastercard}, {@code unionpay}, {@code visa}, or {@code - * unknown}. + * Card brand. Can be {@code amex}, {@code cartes_bancaires}, {@code diners}, {@code + * discover}, {@code eftpos_au}, {@code jcb}, {@code link}, {@code mastercard}, {@code + * unionpay}, {@code visa} or {@code unknown}. */ @SerializedName("brand") String brand; @@ -2715,6 +2715,10 @@ public static class Cashapp extends StripeObject { /** A public identifier for buyers using Cash App. */ @SerializedName("cashtag") String cashtag; + + /** A unique and immutable identifier of payments assigned by Cash App. */ + @SerializedName("transaction_id") + String transactionId; } /** @@ -3764,9 +3768,9 @@ public static class Funding extends StripeObject { @EqualsAndHashCode(callSuper = false) public static class Card extends StripeObject { /** - * Card brand. Can be {@code amex}, {@code diners}, {@code discover}, {@code eftpos_au}, - * {@code jcb}, {@code link}, {@code mastercard}, {@code unionpay}, {@code visa}, or - * {@code unknown}. + * Card brand. Can be {@code amex}, {@code cartes_bancaires}, {@code diners}, {@code + * discover}, {@code eftpos_au}, {@code jcb}, {@code link}, {@code mastercard}, {@code + * unionpay}, {@code visa} or {@code unknown}. */ @SerializedName("brand") String brand; @@ -4198,7 +4202,9 @@ public static class Zip extends StripeObject {} @Setter @EqualsAndHashCode(callSuper = false) public static class PresentmentDetails extends StripeObject { - /** Amount intended to be collected by this payment, denominated in presentment_currency. */ + /** + * Amount intended to be collected by this payment, denominated in {@code presentment_currency}. + */ @SerializedName("presentment_amount") Long presentmentAmount; diff --git a/src/main/java/com/stripe/model/ConfirmationToken.java b/src/main/java/com/stripe/model/ConfirmationToken.java index d725d679641..e40883ec775 100644 --- a/src/main/java/com/stripe/model/ConfirmationToken.java +++ b/src/main/java/com/stripe/model/ConfirmationToken.java @@ -716,9 +716,9 @@ public static class Boleto extends StripeObject { @EqualsAndHashCode(callSuper = false) public static class Card extends StripeObject { /** - * Card brand. Can be {@code amex}, {@code diners}, {@code discover}, {@code eftpos_au}, - * {@code jcb}, {@code link}, {@code mastercard}, {@code unionpay}, {@code visa}, or {@code - * unknown}. + * Card brand. Can be {@code amex}, {@code cartes_bancaires}, {@code diners}, {@code + * discover}, {@code eftpos_au}, {@code jcb}, {@code link}, {@code mastercard}, {@code + * unionpay}, {@code visa} or {@code unknown}. */ @SerializedName("brand") String brand; @@ -922,9 +922,9 @@ public static class CardPresent extends StripeObject { Long amountAuthorized; /** - * Card brand. Can be {@code amex}, {@code diners}, {@code discover}, {@code eftpos_au}, - * {@code jcb}, {@code link}, {@code mastercard}, {@code unionpay}, {@code visa}, or - * {@code unknown}. + * Card brand. Can be {@code amex}, {@code cartes_bancaires}, {@code diners}, {@code + * discover}, {@code eftpos_au}, {@code jcb}, {@code link}, {@code mastercard}, {@code + * unionpay}, {@code visa} or {@code unknown}. */ @SerializedName("brand") String brand; @@ -1412,9 +1412,9 @@ public static class VisaCheckout extends StripeObject { @EqualsAndHashCode(callSuper = false) public static class CardPresent extends StripeObject { /** - * Card brand. Can be {@code amex}, {@code diners}, {@code discover}, {@code eftpos_au}, - * {@code jcb}, {@code link}, {@code mastercard}, {@code unionpay}, {@code visa}, or {@code - * unknown}. + * Card brand. Can be {@code amex}, {@code cartes_bancaires}, {@code diners}, {@code + * discover}, {@code eftpos_au}, {@code jcb}, {@code link}, {@code mastercard}, {@code + * unionpay}, {@code visa} or {@code unknown}. */ @SerializedName("brand") String brand; diff --git a/src/main/java/com/stripe/model/Customer.java b/src/main/java/com/stripe/model/Customer.java index 05703b5582c..e3218dc5bc9 100644 --- a/src/main/java/com/stripe/model/Customer.java +++ b/src/main/java/com/stripe/model/Customer.java @@ -42,11 +42,12 @@ public class Customer extends ApiResource implements HasId, MetadataStoreinvoice_credit_balance. */ @SerializedName("balance") Long balance; diff --git a/src/main/java/com/stripe/model/Dispute.java b/src/main/java/com/stripe/model/Dispute.java index cb53bcc9abd..314328a0ddd 100644 --- a/src/main/java/com/stripe/model/Dispute.java +++ b/src/main/java/com/stripe/model/Dispute.java @@ -133,6 +133,9 @@ public class Dispute extends ApiResource @SerializedName("reason") String reason; + @SerializedName("smart_disputes") + SmartDisputes smartDisputes; + /** * Current status of dispute. Possible values are {@code warning_needs_response}, {@code * warning_under_review}, {@code warning_closed}, {@code needs_response}, {@code under_review}, @@ -1163,9 +1166,9 @@ public static class AmazonPay extends StripeObject { @EqualsAndHashCode(callSuper = false) public static class Card extends StripeObject { /** - * Card brand. Can be {@code amex}, {@code diners}, {@code discover}, {@code eftpos_au}, - * {@code jcb}, {@code link}, {@code mastercard}, {@code unionpay}, {@code visa}, or {@code - * unknown}. + * Card brand. Can be {@code amex}, {@code cartes_bancaires}, {@code diners}, {@code + * discover}, {@code eftpos_au}, {@code jcb}, {@code link}, {@code mastercard}, {@code + * unionpay}, {@code visa} or {@code unknown}. */ @SerializedName("brand") String brand; @@ -1220,6 +1223,28 @@ public static class Paypal extends StripeObject { } } + /** + * For more details about SmartDisputes, please refer to the API Reference. + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class SmartDisputes extends StripeObject { + /** Evidence that could be provided to improve the SmartDisputes packet. */ + @SerializedName("recommended_evidence") + List recommendedEvidence; + + /** + * Smart Disputes auto representment packet availability status. + * + *

One of {@code available}, {@code processing}, {@code requires_evidence}, or {@code + * unavailable}. + */ + @SerializedName("status") + String status; + } + @Override public void setResponseGetter(StripeResponseGetter responseGetter) { super.setResponseGetter(responseGetter); @@ -1228,5 +1253,6 @@ public void setResponseGetter(StripeResponseGetter responseGetter) { trySetResponseGetter(evidenceDetails, responseGetter); trySetResponseGetter(paymentIntent, responseGetter); trySetResponseGetter(paymentMethodDetails, responseGetter); + trySetResponseGetter(smartDisputes, responseGetter); } } diff --git a/src/main/java/com/stripe/model/Event.java b/src/main/java/com/stripe/model/Event.java index 537bae69a3b..fcfc0572adf 100644 --- a/src/main/java/com/stripe/model/Event.java +++ b/src/main/java/com/stripe/model/Event.java @@ -20,32 +20,24 @@ import lombok.Setter; /** - * Events are our way of letting you know when something interesting happens in your account. When - * an interesting event occurs, we create a new {@code Event} object. For example, when a charge - * succeeds, we create a {@code charge.succeeded} event, and when an invoice payment attempt fails, - * we create an {@code invoice.payment_failed} event. Certain API requests might create multiple - * events. For example, if you create a new subscription for a customer, you receive both a {@code + * Snapshot events allow you to track and react to activity in your Stripe integration. When the + * state of another API resource changes, Stripe creates an {@code Event} object that contains all + * the relevant information associated with that action, including the affected API resource. For + * example, a successful payment triggers a {@code charge.succeeded} event, which contains the + * {@code Charge} in the event's data property. Some actions trigger multiple events. For example, + * if you create a new subscription for a customer, it triggers both a {@code * customer.subscription.created} event and a {@code charge.succeeded} event. * - *

Events occur when the state of another API resource changes. The event's data field embeds the - * resource's state at the time of the change. For example, a {@code charge.succeeded} event - * contains a charge, and an {@code invoice.payment_failed} event contains an invoice. + *

Configure an event destination in your account to listen for events that represent actions + * your integration needs to respond to. Additionally, you can retrieve an individual event or a + * list of events from the API. * - *

As with other API resources, you can use endpoints to retrieve an individual event or a list of events from the API. We also have a - * separate webhooks system for sending the - * {@code Event} objects directly to an endpoint on your server. You can manage webhooks in your account settings. Learn how to listen for events so that your integration can - * automatically trigger reactions. + *

Connect platforms can also receive event + * notifications that occur in their connected accounts. These events include an account attribute + * that identifies the relevant connected account. * - *

When using Connect, you can also receive event - * notifications that occur in connected accounts. For these events, there's an additional {@code - * account} attribute in the received {@code Event} object. - * - *

We only guarantee access to events through the Retrieve Event API for 30 days. + *

You can access events through the Retrieve Event API for 30 days. */ @Getter @Setter diff --git a/src/main/java/com/stripe/model/EventDataClassLookup.java b/src/main/java/com/stripe/model/EventDataClassLookup.java index 6cdf055c43d..c82f3439877 100644 --- a/src/main/java/com/stripe/model/EventDataClassLookup.java +++ b/src/main/java/com/stripe/model/EventDataClassLookup.java @@ -117,6 +117,8 @@ public final class EventDataClassLookup { "billing.meter_event_adjustment", com.stripe.model.billing.MeterEventAdjustment.class); classLookup.put( "billing.meter_event_summary", com.stripe.model.billing.MeterEventSummary.class); + classLookup.put("billing.meter_usage", com.stripe.model.billing.MeterUsage.class); + classLookup.put("billing.meter_usage_row", com.stripe.model.billing.MeterUsageRow.class); classLookup.put( "billing_portal.configuration", com.stripe.model.billingportal.Configuration.class); @@ -212,6 +214,7 @@ public final class EventDataClassLookup { classLookup.put("terminal.configuration", com.stripe.model.terminal.Configuration.class); classLookup.put("terminal.connection_token", com.stripe.model.terminal.ConnectionToken.class); classLookup.put("terminal.location", com.stripe.model.terminal.Location.class); + classLookup.put("terminal.onboarding_link", com.stripe.model.terminal.OnboardingLink.class); classLookup.put("terminal.reader", com.stripe.model.terminal.Reader.class); classLookup.put( "terminal.reader_collected_data", com.stripe.model.terminal.ReaderCollectedData.class); diff --git a/src/main/java/com/stripe/model/FxQuote.java b/src/main/java/com/stripe/model/FxQuote.java index ac45fa429e2..4ff71a16381 100644 --- a/src/main/java/com/stripe/model/FxQuote.java +++ b/src/main/java/com/stripe/model/FxQuote.java @@ -19,11 +19,13 @@ import lombok.Setter; /** - * The FX Quotes API provides three key functions: - View current exchange rates: The object shows - * Stripe's current exchange rate for any given currency pair. - Extended quotes: The API provides - * rate quotes valid for a 1-hour period or a 24-hour period, eliminating uncertainty from FX - * fluctuations. - View FX fees: The API provides information on the FX fees Stripe will charge on - * your FX transaction, allowing you to anticipate specific settlement amounts before payment costs. + * The FX Quotes API provides three functions: - View Stripe's current exchange rate for any given + * currency pair. - Extend quoted rates for a 1-hour period or a 24-hour period, minimizing + * uncertainty from FX fluctuations. - Preview the FX fees Stripe will charge on your FX + * transaction, allowing you to anticipate specific settlement amounts before payment costs. + * + *

View the + * docs */ @Getter @Setter diff --git a/src/main/java/com/stripe/model/Invoice.java b/src/main/java/com/stripe/model/Invoice.java index 4868dc7471e..4ba5c9d3a54 100644 --- a/src/main/java/com/stripe/model/Invoice.java +++ b/src/main/java/com/stripe/model/Invoice.java @@ -2514,6 +2514,13 @@ public static class PaymentMethodOptions extends StripeObject { @SerializedName("sepa_debit") SepaDebit sepaDebit; + /** + * If paying by {@code upi}, this sub-hash contains details about the UPI payment method + * options to pass to the invoice’s PaymentIntent. + */ + @SerializedName("upi") + Upi upi; + /** * If paying by {@code us_bank_account}, this sub-hash contains details about the ACH direct * debit payment method options to pass to the invoice’s PaymentIntent. @@ -2702,6 +2709,53 @@ public static class Konbini extends StripeObject {} @EqualsAndHashCode(callSuper = false) public static class SepaDebit extends StripeObject {} + /** + * For more details about Upi, please refer to the API + * Reference. + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Upi extends StripeObject { + @SerializedName("mandate_options") + MandateOptions mandateOptions; + + /** + * For more details about MandateOptions, please refer to the API Reference. + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class MandateOptions extends StripeObject { + /** Amount to be charged for future payments. */ + @SerializedName("amount") + Long amount; + + /** + * One of {@code fixed} or {@code maximum}. If {@code fixed}, the {@code amount} param + * refers to the exact amount to be charged in future payments. If {@code maximum}, the + * amount charged can be up to the value passed for the {@code amount} param. + */ + @SerializedName("amount_type") + String amountType; + + /** + * A description of the mandate or subscription that is meant to be displayed to the + * customer. + */ + @SerializedName("description") + String description; + + /** + * End date of the mandate or subscription. If not provided, the mandate will be active + * until canceled. If provided, end date should be after start date. + */ + @SerializedName("end_date") + Long endDate; + } + } + /** * For more details about UsBankAccount, 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 feeb34588f6..517265c0e53 100644 --- a/src/main/java/com/stripe/model/PaymentAttemptRecord.java +++ b/src/main/java/com/stripe/model/PaymentAttemptRecord.java @@ -743,9 +743,9 @@ public static class Funding extends StripeObject { @EqualsAndHashCode(callSuper = false) public static class Card extends StripeObject { /** - * Card brand. Can be {@code amex}, {@code diners}, {@code discover}, {@code eftpos_au}, - * {@code jcb}, {@code link}, {@code mastercard}, {@code unionpay}, {@code visa}, or - * {@code unknown}. + * Card brand. Can be {@code amex}, {@code cartes_bancaires}, {@code diners}, {@code + * discover}, {@code eftpos_au}, {@code jcb}, {@code link}, {@code mastercard}, {@code + * unionpay}, {@code visa} or {@code unknown}. */ @SerializedName("brand") String brand; @@ -1036,9 +1036,9 @@ public static class Boleto extends StripeObject { @EqualsAndHashCode(callSuper = false) public static class Card extends StripeObject { /** - * Card brand. Can be {@code amex}, {@code diners}, {@code discover}, {@code eftpos_au}, - * {@code jcb}, {@code link}, {@code mastercard}, {@code unionpay}, {@code visa}, or {@code - * unknown}. + * Card brand. Can be {@code amex}, {@code cartes_bancaires}, {@code diners}, {@code + * discover}, {@code eftpos_au}, {@code jcb}, {@code link}, {@code mastercard}, {@code + * unionpay}, {@code visa} or {@code unknown}. */ @SerializedName("brand") String brand; @@ -1190,9 +1190,9 @@ public static class CardPresent extends StripeObject { Long amountAuthorized; /** - * Card brand. Can be {@code amex}, {@code diners}, {@code discover}, {@code eftpos_au}, - * {@code jcb}, {@code link}, {@code mastercard}, {@code unionpay}, {@code visa}, or {@code - * unknown}. + * Card brand. Can be {@code amex}, {@code cartes_bancaires}, {@code diners}, {@code + * discover}, {@code eftpos_au}, {@code jcb}, {@code link}, {@code mastercard}, {@code + * unionpay}, {@code visa} or {@code unknown}. */ @SerializedName("brand") String brand; @@ -1476,6 +1476,10 @@ public static class Cashapp extends StripeObject { /** A public identifier for buyers using Cash App. */ @SerializedName("cashtag") String cashtag; + + /** A unique and immutable identifier of payments assigned by Cash App. */ + @SerializedName("transaction_id") + String transactionId; } /** @@ -2546,9 +2550,9 @@ public static class Funding extends StripeObject { @EqualsAndHashCode(callSuper = false) public static class Card extends StripeObject { /** - * Card brand. Can be {@code amex}, {@code diners}, {@code discover}, {@code eftpos_au}, - * {@code jcb}, {@code link}, {@code mastercard}, {@code unionpay}, {@code visa}, or - * {@code unknown}. + * Card brand. Can be {@code amex}, {@code cartes_bancaires}, {@code diners}, {@code + * discover}, {@code eftpos_au}, {@code jcb}, {@code link}, {@code mastercard}, {@code + * unionpay}, {@code visa} or {@code unknown}. */ @SerializedName("brand") String brand; diff --git a/src/main/java/com/stripe/model/PaymentIntent.java b/src/main/java/com/stripe/model/PaymentIntent.java index e77d124fd9a..6c2077fe52d 100644 --- a/src/main/java/com/stripe/model/PaymentIntent.java +++ b/src/main/java/com/stripe/model/PaymentIntent.java @@ -813,25 +813,32 @@ public PaymentIntent capture(PaymentIntentCaptureParams params, RequestOptions o /** * Confirm that your customer intends to pay with current or provided payment method. Upon - * confirmation, the PaymentIntent will attempt to initiate a payment. If the selected payment - * method requires additional authentication steps, the PaymentIntent will transition to the - * {@code requires_action} status and suggest additional actions via {@code next_action}. If - * payment fails, the PaymentIntent transitions to the {@code requires_payment_method} status or - * the {@code canceled} status if the confirmation limit is reached. If payment succeeds, the - * PaymentIntent will transition to the {@code succeeded} status (or {@code requires_capture}, if - * {@code capture_method} is set to {@code manual}). If the {@code confirmation_method} is {@code - * automatic}, payment may be attempted using our client SDKs - * and the PaymentIntent’s If the selected payment method requires additional authentication steps, the PaymentIntent + * will transition to the {@code requires_action} status and suggest additional actions via {@code + * next_action}. If payment fails, the PaymentIntent transitions to the {@code + * requires_payment_method} status or the {@code canceled} status if the confirmation limit is + * reached. If payment succeeds, the PaymentIntent will transition to the {@code succeeded} status + * (or {@code requires_capture}, if {@code capture_method} is set to {@code manual}). + * + *

If the {@code confirmation_method} is {@code automatic}, payment may be attempted using our + * client + * SDKs and the PaymentIntent’s client_secret. After * {@code next_action}s are handled by the client, no additional confirmation is required to - * complete the payment. If the {@code confirmation_method} is {@code manual}, all payment - * attempts must be initiated using a secret key. If any actions are required for the payment, the - * PaymentIntent will return to the {@code requires_confirmation} state after those actions are - * completed. Your server needs to then explicitly re-confirm the PaymentIntent to initiate the - * next payment attempt. There is a variable upper limit on how many times a PaymentIntent can be - * confirmed. After this limit is reached, any further calls to this endpoint will transition the - * PaymentIntent to the {@code canceled} state. + * complete the payment. + * + *

If the {@code confirmation_method} is {@code manual}, all payment attempts must be initiated + * using a secret key. + * + *

If any actions are required for the payment, the PaymentIntent will return to the {@code + * requires_confirmation} state after those actions are completed. Your server needs to then + * explicitly re-confirm the PaymentIntent to initiate the next payment attempt. + * + *

There is a variable upper limit on how many times a PaymentIntent can be confirmed. After + * this limit is reached, any further calls to this endpoint will transition the PaymentIntent to + * the {@code canceled} state. */ public PaymentIntent confirm() throws StripeException { return confirm((Map) null, (RequestOptions) null); @@ -839,25 +846,32 @@ public PaymentIntent confirm() throws StripeException { /** * Confirm that your customer intends to pay with current or provided payment method. Upon - * confirmation, the PaymentIntent will attempt to initiate a payment. If the selected payment - * method requires additional authentication steps, the PaymentIntent will transition to the - * {@code requires_action} status and suggest additional actions via {@code next_action}. If - * payment fails, the PaymentIntent transitions to the {@code requires_payment_method} status or - * the {@code canceled} status if the confirmation limit is reached. If payment succeeds, the - * PaymentIntent will transition to the {@code succeeded} status (or {@code requires_capture}, if - * {@code capture_method} is set to {@code manual}). If the {@code confirmation_method} is {@code - * automatic}, payment may be attempted using our client SDKs - * and the PaymentIntent’s If the selected payment method requires additional authentication steps, the PaymentIntent + * will transition to the {@code requires_action} status and suggest additional actions via {@code + * next_action}. If payment fails, the PaymentIntent transitions to the {@code + * requires_payment_method} status or the {@code canceled} status if the confirmation limit is + * reached. If payment succeeds, the PaymentIntent will transition to the {@code succeeded} status + * (or {@code requires_capture}, if {@code capture_method} is set to {@code manual}). + * + *

If the {@code confirmation_method} is {@code automatic}, payment may be attempted using our + * client + * SDKs and the PaymentIntent’s client_secret. After * {@code next_action}s are handled by the client, no additional confirmation is required to - * complete the payment. If the {@code confirmation_method} is {@code manual}, all payment - * attempts must be initiated using a secret key. If any actions are required for the payment, the - * PaymentIntent will return to the {@code requires_confirmation} state after those actions are - * completed. Your server needs to then explicitly re-confirm the PaymentIntent to initiate the - * next payment attempt. There is a variable upper limit on how many times a PaymentIntent can be - * confirmed. After this limit is reached, any further calls to this endpoint will transition the - * PaymentIntent to the {@code canceled} state. + * complete the payment. + * + *

If the {@code confirmation_method} is {@code manual}, all payment attempts must be initiated + * using a secret key. + * + *

If any actions are required for the payment, the PaymentIntent will return to the {@code + * requires_confirmation} state after those actions are completed. Your server needs to then + * explicitly re-confirm the PaymentIntent to initiate the next payment attempt. + * + *

There is a variable upper limit on how many times a PaymentIntent can be confirmed. After + * this limit is reached, any further calls to this endpoint will transition the PaymentIntent to + * the {@code canceled} state. */ public PaymentIntent confirm(RequestOptions options) throws StripeException { return confirm((Map) null, options); @@ -865,25 +879,32 @@ public PaymentIntent confirm(RequestOptions options) throws StripeException { /** * Confirm that your customer intends to pay with current or provided payment method. Upon - * confirmation, the PaymentIntent will attempt to initiate a payment. If the selected payment - * method requires additional authentication steps, the PaymentIntent will transition to the - * {@code requires_action} status and suggest additional actions via {@code next_action}. If - * payment fails, the PaymentIntent transitions to the {@code requires_payment_method} status or - * the {@code canceled} status if the confirmation limit is reached. If payment succeeds, the - * PaymentIntent will transition to the {@code succeeded} status (or {@code requires_capture}, if - * {@code capture_method} is set to {@code manual}). If the {@code confirmation_method} is {@code - * automatic}, payment may be attempted using our client SDKs - * and the PaymentIntent’s If the selected payment method requires additional authentication steps, the PaymentIntent + * will transition to the {@code requires_action} status and suggest additional actions via {@code + * next_action}. If payment fails, the PaymentIntent transitions to the {@code + * requires_payment_method} status or the {@code canceled} status if the confirmation limit is + * reached. If payment succeeds, the PaymentIntent will transition to the {@code succeeded} status + * (or {@code requires_capture}, if {@code capture_method} is set to {@code manual}). + * + *

If the {@code confirmation_method} is {@code automatic}, payment may be attempted using our + * client + * SDKs and the PaymentIntent’s client_secret. After * {@code next_action}s are handled by the client, no additional confirmation is required to - * complete the payment. If the {@code confirmation_method} is {@code manual}, all payment - * attempts must be initiated using a secret key. If any actions are required for the payment, the - * PaymentIntent will return to the {@code requires_confirmation} state after those actions are - * completed. Your server needs to then explicitly re-confirm the PaymentIntent to initiate the - * next payment attempt. There is a variable upper limit on how many times a PaymentIntent can be - * confirmed. After this limit is reached, any further calls to this endpoint will transition the - * PaymentIntent to the {@code canceled} state. + * complete the payment. + * + *

If the {@code confirmation_method} is {@code manual}, all payment attempts must be initiated + * using a secret key. + * + *

If any actions are required for the payment, the PaymentIntent will return to the {@code + * requires_confirmation} state after those actions are completed. Your server needs to then + * explicitly re-confirm the PaymentIntent to initiate the next payment attempt. + * + *

There is a variable upper limit on how many times a PaymentIntent can be confirmed. After + * this limit is reached, any further calls to this endpoint will transition the PaymentIntent to + * the {@code canceled} state. */ public PaymentIntent confirm(Map params) throws StripeException { return confirm(params, (RequestOptions) null); @@ -891,25 +912,32 @@ public PaymentIntent confirm(Map params) throws StripeException /** * Confirm that your customer intends to pay with current or provided payment method. Upon - * confirmation, the PaymentIntent will attempt to initiate a payment. If the selected payment - * method requires additional authentication steps, the PaymentIntent will transition to the - * {@code requires_action} status and suggest additional actions via {@code next_action}. If - * payment fails, the PaymentIntent transitions to the {@code requires_payment_method} status or - * the {@code canceled} status if the confirmation limit is reached. If payment succeeds, the - * PaymentIntent will transition to the {@code succeeded} status (or {@code requires_capture}, if - * {@code capture_method} is set to {@code manual}). If the {@code confirmation_method} is {@code - * automatic}, payment may be attempted using our client SDKs - * and the PaymentIntent’s If the selected payment method requires additional authentication steps, the PaymentIntent + * will transition to the {@code requires_action} status and suggest additional actions via {@code + * next_action}. If payment fails, the PaymentIntent transitions to the {@code + * requires_payment_method} status or the {@code canceled} status if the confirmation limit is + * reached. If payment succeeds, the PaymentIntent will transition to the {@code succeeded} status + * (or {@code requires_capture}, if {@code capture_method} is set to {@code manual}). + * + *

If the {@code confirmation_method} is {@code automatic}, payment may be attempted using our + * client + * SDKs and the PaymentIntent’s client_secret. After * {@code next_action}s are handled by the client, no additional confirmation is required to - * complete the payment. If the {@code confirmation_method} is {@code manual}, all payment - * attempts must be initiated using a secret key. If any actions are required for the payment, the - * PaymentIntent will return to the {@code requires_confirmation} state after those actions are - * completed. Your server needs to then explicitly re-confirm the PaymentIntent to initiate the - * next payment attempt. There is a variable upper limit on how many times a PaymentIntent can be - * confirmed. After this limit is reached, any further calls to this endpoint will transition the - * PaymentIntent to the {@code canceled} state. + * complete the payment. + * + *

If the {@code confirmation_method} is {@code manual}, all payment attempts must be initiated + * using a secret key. + * + *

If any actions are required for the payment, the PaymentIntent will return to the {@code + * requires_confirmation} state after those actions are completed. Your server needs to then + * explicitly re-confirm the PaymentIntent to initiate the next payment attempt. + * + *

There is a variable upper limit on how many times a PaymentIntent can be confirmed. After + * this limit is reached, any further calls to this endpoint will transition the PaymentIntent to + * the {@code canceled} state. */ public PaymentIntent confirm(Map params, RequestOptions options) throws StripeException { @@ -922,25 +950,32 @@ public PaymentIntent confirm(Map params, RequestOptions options) /** * Confirm that your customer intends to pay with current or provided payment method. Upon - * confirmation, the PaymentIntent will attempt to initiate a payment. If the selected payment - * method requires additional authentication steps, the PaymentIntent will transition to the - * {@code requires_action} status and suggest additional actions via {@code next_action}. If - * payment fails, the PaymentIntent transitions to the {@code requires_payment_method} status or - * the {@code canceled} status if the confirmation limit is reached. If payment succeeds, the - * PaymentIntent will transition to the {@code succeeded} status (or {@code requires_capture}, if - * {@code capture_method} is set to {@code manual}). If the {@code confirmation_method} is {@code - * automatic}, payment may be attempted using our client SDKs - * and the PaymentIntent’s If the selected payment method requires additional authentication steps, the PaymentIntent + * will transition to the {@code requires_action} status and suggest additional actions via {@code + * next_action}. If payment fails, the PaymentIntent transitions to the {@code + * requires_payment_method} status or the {@code canceled} status if the confirmation limit is + * reached. If payment succeeds, the PaymentIntent will transition to the {@code succeeded} status + * (or {@code requires_capture}, if {@code capture_method} is set to {@code manual}). + * + *

If the {@code confirmation_method} is {@code automatic}, payment may be attempted using our + * client + * SDKs and the PaymentIntent’s client_secret. After * {@code next_action}s are handled by the client, no additional confirmation is required to - * complete the payment. If the {@code confirmation_method} is {@code manual}, all payment - * attempts must be initiated using a secret key. If any actions are required for the payment, the - * PaymentIntent will return to the {@code requires_confirmation} state after those actions are - * completed. Your server needs to then explicitly re-confirm the PaymentIntent to initiate the - * next payment attempt. There is a variable upper limit on how many times a PaymentIntent can be - * confirmed. After this limit is reached, any further calls to this endpoint will transition the - * PaymentIntent to the {@code canceled} state. + * complete the payment. + * + *

If the {@code confirmation_method} is {@code manual}, all payment attempts must be initiated + * using a secret key. + * + *

If any actions are required for the payment, the PaymentIntent will return to the {@code + * requires_confirmation} state after those actions are completed. Your server needs to then + * explicitly re-confirm the PaymentIntent to initiate the next payment attempt. + * + *

There is a variable upper limit on how many times a PaymentIntent can be confirmed. After + * this limit is reached, any further calls to this endpoint will transition the PaymentIntent to + * the {@code canceled} state. */ public PaymentIntent confirm(PaymentIntentConfirmParams params) throws StripeException { return confirm(params, (RequestOptions) null); @@ -948,25 +983,32 @@ public PaymentIntent confirm(PaymentIntentConfirmParams params) throws StripeExc /** * Confirm that your customer intends to pay with current or provided payment method. Upon - * confirmation, the PaymentIntent will attempt to initiate a payment. If the selected payment - * method requires additional authentication steps, the PaymentIntent will transition to the - * {@code requires_action} status and suggest additional actions via {@code next_action}. If - * payment fails, the PaymentIntent transitions to the {@code requires_payment_method} status or - * the {@code canceled} status if the confirmation limit is reached. If payment succeeds, the - * PaymentIntent will transition to the {@code succeeded} status (or {@code requires_capture}, if - * {@code capture_method} is set to {@code manual}). If the {@code confirmation_method} is {@code - * automatic}, payment may be attempted using our client SDKs - * and the PaymentIntent’s If the selected payment method requires additional authentication steps, the PaymentIntent + * will transition to the {@code requires_action} status and suggest additional actions via {@code + * next_action}. If payment fails, the PaymentIntent transitions to the {@code + * requires_payment_method} status or the {@code canceled} status if the confirmation limit is + * reached. If payment succeeds, the PaymentIntent will transition to the {@code succeeded} status + * (or {@code requires_capture}, if {@code capture_method} is set to {@code manual}). + * + *

If the {@code confirmation_method} is {@code automatic}, payment may be attempted using our + * client + * SDKs and the PaymentIntent’s client_secret. After * {@code next_action}s are handled by the client, no additional confirmation is required to - * complete the payment. If the {@code confirmation_method} is {@code manual}, all payment - * attempts must be initiated using a secret key. If any actions are required for the payment, the - * PaymentIntent will return to the {@code requires_confirmation} state after those actions are - * completed. Your server needs to then explicitly re-confirm the PaymentIntent to initiate the - * next payment attempt. There is a variable upper limit on how many times a PaymentIntent can be - * confirmed. After this limit is reached, any further calls to this endpoint will transition the - * PaymentIntent to the {@code canceled} state. + * complete the payment. + * + *

If the {@code confirmation_method} is {@code manual}, all payment attempts must be initiated + * using a secret key. + * + *

If any actions are required for the payment, the PaymentIntent will return to the {@code + * requires_confirmation} state after those actions are completed. Your server needs to then + * explicitly re-confirm the PaymentIntent to initiate the next payment attempt. + * + *

There is a variable upper limit on how many times a PaymentIntent can be confirmed. After + * this limit is reached, any further calls to this endpoint will transition the PaymentIntent to + * the {@code canceled} state. */ public PaymentIntent confirm(PaymentIntentConfirmParams params, RequestOptions options) throws StripeException { @@ -6129,7 +6171,9 @@ public static class Zip extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class PresentmentDetails extends StripeObject { - /** Amount intended to be collected by this payment, denominated in presentment_currency. */ + /** + * Amount intended to be collected by this payment, denominated in {@code presentment_currency}. + */ @SerializedName("presentment_amount") Long presentmentAmount; diff --git a/src/main/java/com/stripe/model/PaymentLink.java b/src/main/java/com/stripe/model/PaymentLink.java index 4489c19d01f..ba8c5adeca8 100644 --- a/src/main/java/com/stripe/model/PaymentLink.java +++ b/src/main/java/com/stripe/model/PaymentLink.java @@ -1032,6 +1032,10 @@ public static class RenderingOptions extends StripeObject { */ @SerializedName("amount_tax_display") String amountTaxDisplay; + + /** ID of the invoice rendering template to be used for the generated invoice. */ + @SerializedName("template") + String template; } } } diff --git a/src/main/java/com/stripe/model/PaymentMethod.java b/src/main/java/com/stripe/model/PaymentMethod.java index 197cdb73171..2858ac0947a 100644 --- a/src/main/java/com/stripe/model/PaymentMethod.java +++ b/src/main/java/com/stripe/model/PaymentMethod.java @@ -703,13 +703,17 @@ public static PaymentMethod retrieve( return getGlobalResponseGetter().request(request, PaymentMethod.class); } - /** Updates a PaymentMethod object. A PaymentMethod must be attached a customer to be updated. */ + /** + * Updates a PaymentMethod object. A PaymentMethod must be attached to a customer to be updated. + */ @Override public PaymentMethod update(Map params) throws StripeException { return update(params, (RequestOptions) null); } - /** Updates a PaymentMethod object. A PaymentMethod must be attached a customer to be updated. */ + /** + * Updates a PaymentMethod object. A PaymentMethod must be attached to a customer to be updated. + */ @Override public PaymentMethod update(Map params, RequestOptions options) throws StripeException { @@ -719,12 +723,16 @@ public PaymentMethod update(Map params, RequestOptions options) return getResponseGetter().request(request, PaymentMethod.class); } - /** Updates a PaymentMethod object. A PaymentMethod must be attached a customer to be updated. */ + /** + * Updates a PaymentMethod object. A PaymentMethod must be attached to a customer to be updated. + */ public PaymentMethod update(PaymentMethodUpdateParams params) throws StripeException { return update(params, (RequestOptions) null); } - /** Updates a PaymentMethod object. A PaymentMethod must be attached a customer to be updated. */ + /** + * Updates a PaymentMethod object. A PaymentMethod must be attached to a customer to be updated. + */ public PaymentMethod update(PaymentMethodUpdateParams params, RequestOptions options) throws StripeException { String path = String.format("/v1/payment_methods/%s", ApiResource.urlEncodeId(this.getId())); @@ -949,8 +957,9 @@ public static class Boleto extends StripeObject { @EqualsAndHashCode(callSuper = false) public static class Card extends StripeObject { /** - * Card brand. Can be {@code amex}, {@code diners}, {@code discover}, {@code eftpos_au}, {@code - * jcb}, {@code link}, {@code mastercard}, {@code unionpay}, {@code visa}, or {@code unknown}. + * Card brand. Can be {@code amex}, {@code cartes_bancaires}, {@code diners}, {@code discover}, + * {@code eftpos_au}, {@code jcb}, {@code link}, {@code mastercard}, {@code unionpay}, {@code + * visa} or {@code unknown}. */ @SerializedName("brand") String brand; @@ -1153,9 +1162,9 @@ public static class CardPresent extends StripeObject { Long amountAuthorized; /** - * Card brand. Can be {@code amex}, {@code diners}, {@code discover}, {@code eftpos_au}, - * {@code jcb}, {@code link}, {@code mastercard}, {@code unionpay}, {@code visa}, or - * {@code unknown}. + * Card brand. Can be {@code amex}, {@code cartes_bancaires}, {@code diners}, {@code + * discover}, {@code eftpos_au}, {@code jcb}, {@code link}, {@code mastercard}, {@code + * unionpay}, {@code visa} or {@code unknown}. */ @SerializedName("brand") String brand; @@ -1637,8 +1646,9 @@ public static class VisaCheckout extends StripeObject { @EqualsAndHashCode(callSuper = false) public static class CardPresent extends StripeObject { /** - * Card brand. Can be {@code amex}, {@code diners}, {@code discover}, {@code eftpos_au}, {@code - * jcb}, {@code link}, {@code mastercard}, {@code unionpay}, {@code visa}, or {@code unknown}. + * Card brand. Can be {@code amex}, {@code cartes_bancaires}, {@code diners}, {@code discover}, + * {@code eftpos_au}, {@code jcb}, {@code link}, {@code mastercard}, {@code unionpay}, {@code + * visa} or {@code unknown}. */ @SerializedName("brand") String brand; diff --git a/src/main/java/com/stripe/model/PaymentRecord.java b/src/main/java/com/stripe/model/PaymentRecord.java index 06bd81a447f..2d70ed9bef3 100644 --- a/src/main/java/com/stripe/model/PaymentRecord.java +++ b/src/main/java/com/stripe/model/PaymentRecord.java @@ -943,9 +943,9 @@ public static class Funding extends StripeObject { @EqualsAndHashCode(callSuper = false) public static class Card extends StripeObject { /** - * Card brand. Can be {@code amex}, {@code diners}, {@code discover}, {@code eftpos_au}, - * {@code jcb}, {@code link}, {@code mastercard}, {@code unionpay}, {@code visa}, or - * {@code unknown}. + * Card brand. Can be {@code amex}, {@code cartes_bancaires}, {@code diners}, {@code + * discover}, {@code eftpos_au}, {@code jcb}, {@code link}, {@code mastercard}, {@code + * unionpay}, {@code visa} or {@code unknown}. */ @SerializedName("brand") String brand; @@ -1236,9 +1236,9 @@ public static class Boleto extends StripeObject { @EqualsAndHashCode(callSuper = false) public static class Card extends StripeObject { /** - * Card brand. Can be {@code amex}, {@code diners}, {@code discover}, {@code eftpos_au}, - * {@code jcb}, {@code link}, {@code mastercard}, {@code unionpay}, {@code visa}, or {@code - * unknown}. + * Card brand. Can be {@code amex}, {@code cartes_bancaires}, {@code diners}, {@code + * discover}, {@code eftpos_au}, {@code jcb}, {@code link}, {@code mastercard}, {@code + * unionpay}, {@code visa} or {@code unknown}. */ @SerializedName("brand") String brand; @@ -1390,9 +1390,9 @@ public static class CardPresent extends StripeObject { Long amountAuthorized; /** - * Card brand. Can be {@code amex}, {@code diners}, {@code discover}, {@code eftpos_au}, - * {@code jcb}, {@code link}, {@code mastercard}, {@code unionpay}, {@code visa}, or {@code - * unknown}. + * Card brand. Can be {@code amex}, {@code cartes_bancaires}, {@code diners}, {@code + * discover}, {@code eftpos_au}, {@code jcb}, {@code link}, {@code mastercard}, {@code + * unionpay}, {@code visa} or {@code unknown}. */ @SerializedName("brand") String brand; @@ -1676,6 +1676,10 @@ public static class Cashapp extends StripeObject { /** A public identifier for buyers using Cash App. */ @SerializedName("cashtag") String cashtag; + + /** A unique and immutable identifier of payments assigned by Cash App. */ + @SerializedName("transaction_id") + String transactionId; } /** @@ -2745,9 +2749,9 @@ public static class Funding extends StripeObject { @EqualsAndHashCode(callSuper = false) public static class Card extends StripeObject { /** - * Card brand. Can be {@code amex}, {@code diners}, {@code discover}, {@code eftpos_au}, - * {@code jcb}, {@code link}, {@code mastercard}, {@code unionpay}, {@code visa}, or - * {@code unknown}. + * Card brand. Can be {@code amex}, {@code cartes_bancaires}, {@code diners}, {@code + * discover}, {@code eftpos_au}, {@code jcb}, {@code link}, {@code mastercard}, {@code + * unionpay}, {@code visa} or {@code unknown}. */ @SerializedName("brand") String brand; diff --git a/src/main/java/com/stripe/model/QuotePreviewInvoice.java b/src/main/java/com/stripe/model/QuotePreviewInvoice.java index 19728ee5d92..6888e4b8659 100644 --- a/src/main/java/com/stripe/model/QuotePreviewInvoice.java +++ b/src/main/java/com/stripe/model/QuotePreviewInvoice.java @@ -1382,6 +1382,13 @@ public static class PaymentMethodOptions extends StripeObject { @SerializedName("sepa_debit") SepaDebit sepaDebit; + /** + * If paying by {@code upi}, this sub-hash contains details about the UPI payment method + * options to pass to the invoice’s PaymentIntent. + */ + @SerializedName("upi") + Upi upi; + /** * If paying by {@code us_bank_account}, this sub-hash contains details about the ACH direct * debit payment method options to pass to the invoice’s PaymentIntent. @@ -1570,6 +1577,53 @@ public static class Konbini extends StripeObject {} @EqualsAndHashCode(callSuper = false) public static class SepaDebit extends StripeObject {} + /** + * For more details about Upi, please refer to the API + * Reference. + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Upi extends StripeObject { + @SerializedName("mandate_options") + MandateOptions mandateOptions; + + /** + * For more details about MandateOptions, please refer to the API Reference. + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class MandateOptions extends StripeObject { + /** Amount to be charged for future payments. */ + @SerializedName("amount") + Long amount; + + /** + * One of {@code fixed} or {@code maximum}. If {@code fixed}, the {@code amount} param + * refers to the exact amount to be charged in future payments. If {@code maximum}, the + * amount charged can be up to the value passed for the {@code amount} param. + */ + @SerializedName("amount_type") + String amountType; + + /** + * A description of the mandate or subscription that is meant to be displayed to the + * customer. + */ + @SerializedName("description") + String description; + + /** + * End date of the mandate or subscription. If not provided, the mandate will be active + * until canceled. If provided, end date should be after start date. + */ + @SerializedName("end_date") + Long endDate; + } + } + /** * For more details about UsBankAccount, please refer to the API Reference. diff --git a/src/main/java/com/stripe/model/Refund.java b/src/main/java/com/stripe/model/Refund.java index f20c79e6208..23f4a47472e 100644 --- a/src/main/java/com/stripe/model/Refund.java +++ b/src/main/java/com/stripe/model/Refund.java @@ -1233,7 +1233,9 @@ public static class EmailSent extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class PresentmentDetails extends StripeObject { - /** Amount intended to be collected by this payment, denominated in presentment_currency. */ + /** + * Amount intended to be collected by this payment, denominated in {@code presentment_currency}. + */ @SerializedName("presentment_amount") Long presentmentAmount; diff --git a/src/main/java/com/stripe/model/Review.java b/src/main/java/com/stripe/model/Review.java index 3cd45517568..63ccdff6082 100644 --- a/src/main/java/com/stripe/model/Review.java +++ b/src/main/java/com/stripe/model/Review.java @@ -40,8 +40,8 @@ public class Review extends ApiResource implements HasId { /** * The reason the review was closed, or null if it has not yet been closed. One of {@code - * approved}, {@code refunded}, {@code refunded_as_fraud}, {@code disputed}, {@code redacted}, or - * {@code canceled}. + * approved}, {@code refunded}, {@code refunded_as_fraud}, {@code disputed}, {@code redacted}, + * {@code canceled}, {@code payment_never_settled}, or {@code acknowledged}. */ @SerializedName("closed_reason") String closedReason; @@ -98,8 +98,8 @@ public class Review extends ApiResource implements HasId { /** * The reason the review is currently open or closed. One of {@code rule}, {@code manual}, {@code - * approved}, {@code refunded}, {@code refunded_as_fraud}, {@code disputed}, {@code redacted}, or - * {@code canceled}. + * approved}, {@code refunded}, {@code refunded_as_fraud}, {@code disputed}, {@code redacted}, + * {@code canceled}, {@code payment_never_settled}, or {@code acknowledged}. */ @SerializedName("reason") String reason; diff --git a/src/main/java/com/stripe/model/SetupAttempt.java b/src/main/java/com/stripe/model/SetupAttempt.java index b73b4f4ee6c..c926bf86310 100644 --- a/src/main/java/com/stripe/model/SetupAttempt.java +++ b/src/main/java/com/stripe/model/SetupAttempt.java @@ -507,9 +507,9 @@ public static class Boleto extends StripeObject {} @EqualsAndHashCode(callSuper = false) public static class Card extends StripeObject { /** - * Card brand. Can be {@code amex}, {@code diners}, {@code discover}, {@code eftpos_au}, - * {@code jcb}, {@code link}, {@code mastercard}, {@code unionpay}, {@code visa}, or {@code - * unknown}. + * Card brand. Can be {@code amex}, {@code cartes_bancaires}, {@code diners}, {@code + * discover}, {@code eftpos_au}, {@code jcb}, {@code link}, {@code mastercard}, {@code + * unionpay}, {@code visa} or {@code unknown}. */ @SerializedName("brand") String brand; diff --git a/src/main/java/com/stripe/model/Subscription.java b/src/main/java/com/stripe/model/Subscription.java index 765cfb7189c..a1f4b77e6a7 100644 --- a/src/main/java/com/stripe/model/Subscription.java +++ b/src/main/java/com/stripe/model/Subscription.java @@ -1738,6 +1738,13 @@ public static class PaymentMethodOptions extends StripeObject { @SerializedName("sepa_debit") SepaDebit sepaDebit; + /** + * This sub-hash contains details about the UPI payment method options to pass to invoices + * created by the subscription. + */ + @SerializedName("upi") + Upi upi; + /** * This sub-hash contains details about the ACH direct debit payment method options to pass to * invoices created by the subscription. @@ -1948,6 +1955,53 @@ public static class Konbini extends StripeObject {} @EqualsAndHashCode(callSuper = false) public static class SepaDebit extends StripeObject {} + /** + * For more details about Upi, please refer to the API + * Reference. + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Upi extends StripeObject { + @SerializedName("mandate_options") + MandateOptions mandateOptions; + + /** + * For more details about MandateOptions, please refer to the API Reference. + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class MandateOptions extends StripeObject { + /** Amount to be charged for future payments. */ + @SerializedName("amount") + Long amount; + + /** + * One of {@code fixed} or {@code maximum}. If {@code fixed}, the {@code amount} param + * refers to the exact amount to be charged in future payments. If {@code maximum}, the + * amount charged can be up to the value passed for the {@code amount} param. + */ + @SerializedName("amount_type") + String amountType; + + /** + * A description of the mandate or subscription that is meant to be displayed to the + * customer. + */ + @SerializedName("description") + String description; + + /** + * End date of the mandate or subscription. If not provided, the mandate will be active + * until canceled. If provided, end date should be after start date. + */ + @SerializedName("end_date") + Long endDate; + } + } + /** * For more details about UsBankAccount, please refer to the API Reference. diff --git a/src/main/java/com/stripe/model/billing/MeterUsage.java b/src/main/java/com/stripe/model/billing/MeterUsage.java new file mode 100644 index 00000000000..12bc8a41975 --- /dev/null +++ b/src/main/java/com/stripe/model/billing/MeterUsage.java @@ -0,0 +1,94 @@ +// File generated from our OpenAPI spec +package com.stripe.model.billing; + +import com.google.gson.annotations.SerializedName; +import com.stripe.exception.StripeException; +import com.stripe.net.ApiRequest; +import com.stripe.net.ApiRequestParams; +import com.stripe.net.ApiResource; +import com.stripe.net.BaseAddress; +import com.stripe.net.RequestOptions; +import com.stripe.param.billing.MeterUsageRetrieveParams; +import java.util.List; +import java.util.Map; +import lombok.EqualsAndHashCode; +import lombok.Getter; +import lombok.Setter; + +/** + * A billing meter usage event represents an aggregated view of a customer’s billing meter events + * within a specified timeframe. + */ +@Getter +@Setter +@EqualsAndHashCode(callSuper = false) +public class MeterUsage extends ApiResource { + /** The aggregated meter usage data for the specified customer and time range. */ + @SerializedName("data") + List data; + + /** Timestamp indicating how fresh the data is. Measured in seconds since the Unix epoch. */ + @SerializedName("data_refreshed_at") + Long dataRefreshedAt; + + /** + * Has the value {@code true} if the object exists in live mode or the value {@code false} if the + * object exists in test mode. + */ + @SerializedName("livemode") + Boolean livemode; + + /** + * String representing the object's type. Objects of the same type share the same value. + * + *

Equal to {@code billing.meter_usage}. + */ + @SerializedName("object") + String object; + + /** + * Returns aggregated meter usage data for a customer within a specified time interval. The data + * can be grouped by various dimensions and can include multiple meters if specified. + */ + public static MeterUsage retrieve() throws StripeException { + return retrieve((Map) null, (RequestOptions) null); + } + + /** + * Returns aggregated meter usage data for a customer within a specified time interval. The data + * can be grouped by various dimensions and can include multiple meters if specified. + */ + public static MeterUsage retrieve(RequestOptions options) throws StripeException { + return retrieve((Map) null, options); + } + + /** + * Returns aggregated meter usage data for a customer within a specified time interval. The data + * can be grouped by various dimensions and can include multiple meters if specified. + */ + public static MeterUsage retrieve(Map params, RequestOptions options) + throws StripeException { + String path = "/v1/billing/analytics/meter_usage"; + ApiRequest request = + new ApiRequest(BaseAddress.API, ApiResource.RequestMethod.GET, path, params, options); + return getGlobalResponseGetter().request(request, MeterUsage.class); + } + + /** + * Returns aggregated meter usage data for a customer within a specified time interval. The data + * can be grouped by various dimensions and can include multiple meters if specified. + */ + public static MeterUsage retrieve(MeterUsageRetrieveParams params, RequestOptions options) + throws StripeException { + String path = "/v1/billing/analytics/meter_usage"; + ApiResource.checkNullTypedParams(path, params); + ApiRequest request = + new ApiRequest( + BaseAddress.API, + ApiResource.RequestMethod.GET, + path, + ApiRequestParams.paramsToMap(params), + options); + return getGlobalResponseGetter().request(request, MeterUsage.class); + } +} diff --git a/src/main/java/com/stripe/model/billing/MeterUsageRow.java b/src/main/java/com/stripe/model/billing/MeterUsageRow.java new file mode 100644 index 00000000000..e6d0763e549 --- /dev/null +++ b/src/main/java/com/stripe/model/billing/MeterUsageRow.java @@ -0,0 +1,49 @@ +// File generated from our OpenAPI spec +package com.stripe.model.billing; + +import com.google.gson.annotations.SerializedName; +import com.stripe.model.HasId; +import com.stripe.model.StripeObject; +import java.math.BigDecimal; +import java.util.Map; +import lombok.EqualsAndHashCode; +import lombok.Getter; +import lombok.Setter; + +@Getter +@Setter +@EqualsAndHashCode(callSuper = false) +public class MeterUsageRow extends StripeObject implements HasId { + /** Timestamp indicating the end of the bucket. Measured in seconds since the Unix epoch. */ + @SerializedName("bucket_end_time") + Long bucketEndTime; + + /** Timestamp indicating the start of the bucket. Measured in seconds since the Unix epoch. */ + @SerializedName("bucket_start_time") + Long bucketStartTime; + + /** The aggregated meter usage value for the specified bucket. */ + @SerializedName("bucket_value") + BigDecimal bucketValue; + + /** A set of key-value pairs representing the dimensions of the meter usage. */ + @SerializedName("dimensions") + Map dimensions; + + /** Unique identifier for the object. */ + @Getter(onMethod_ = {@Override}) + @SerializedName("id") + String id; + + /** The unique identifier for the meter. */ + @SerializedName("meter_id") + String meterId; + + /** + * String representing the object's type. Objects of the same type share the same value. + * + *

Equal to {@code billing.meter_usage_row}. + */ + @SerializedName("object") + String object; +} diff --git a/src/main/java/com/stripe/model/billingportal/Configuration.java b/src/main/java/com/stripe/model/billingportal/Configuration.java index 954b2ea235c..89077de319b 100644 --- a/src/main/java/com/stripe/model/billingportal/Configuration.java +++ b/src/main/java/com/stripe/model/billingportal/Configuration.java @@ -453,6 +453,9 @@ public static class SubscriptionUpdate extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class Product extends StripeObject { + @SerializedName("adjustable_quantity") + AdjustableQuantity adjustableQuantity; + /** The list of price IDs which, when subscribed to, a subscription can be updated. */ @SerializedName("prices") List prices; @@ -460,6 +463,27 @@ public static class Product extends StripeObject { /** The product ID. */ @SerializedName("product") String product; + + /** + * For more details about AdjustableQuantity, please refer to the API Reference. + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class AdjustableQuantity extends StripeObject { + /** If true, the quantity can be adjusted to any non-negative integer. */ + @SerializedName("enabled") + Boolean enabled; + + /** The maximum quantity that can be set for the product. */ + @SerializedName("maximum") + Long maximum; + + /** The minimum quantity that can be set for the product. */ + @SerializedName("minimum") + Long minimum; + } } /** diff --git a/src/main/java/com/stripe/model/checkout/Session.java b/src/main/java/com/stripe/model/checkout/Session.java index 5aca8196a99..b4dd69d43a5 100644 --- a/src/main/java/com/stripe/model/checkout/Session.java +++ b/src/main/java/com/stripe/model/checkout/Session.java @@ -278,6 +278,14 @@ public class Session extends ApiResource implements HasId, MetadataStore optionalItems; + /** + * Where the user is coming from. This informs the optimizations that are applied to the session. + * + *

One of {@code mobile_app}, or {@code web}. + */ + @SerializedName("origin_context") + String originContext; + /** * The ID of the PaymentIntent for Checkout Sessions in {@code payment} mode. You can't confirm or * cancel the PaymentIntent for a Checkout Session. To cancel, 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. + * + *

Equal to {@code none}. + */ + @SerializedName("setup_future_usage") + String setupFutureUsage; } /** @@ -3776,7 +3812,9 @@ public static class PhoneNumberCollection extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class PresentmentDetails extends StripeObject { - /** Amount intended to be collected by this payment, denominated in presentment_currency. */ + /** + * Amount intended to be collected by this payment, denominated in {@code presentment_currency}. + */ @SerializedName("presentment_amount") Long presentmentAmount; diff --git a/src/main/java/com/stripe/model/radar/ValueList.java b/src/main/java/com/stripe/model/radar/ValueList.java index f6acf98e336..88a9eb36714 100644 --- a/src/main/java/com/stripe/model/radar/ValueList.java +++ b/src/main/java/com/stripe/model/radar/ValueList.java @@ -52,10 +52,9 @@ public class ValueList extends ApiResource implements HasId, MetadataStoreAPI Reference. + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Standard extends StripeObject { + /** + * Place of supply scheme used in an Default standard registration. + * + *

One of {@code inbound_goods}, or {@code standard}. + */ + @SerializedName("place_of_supply_scheme") + String placeOfSupplyScheme; + } } /** @@ -650,7 +670,7 @@ public static class Standard extends StripeObject { /** * Place of supply scheme used in an EU standard registration. * - *

One of {@code small_seller}, or {@code standard}. + *

One of {@code inbound_goods}, {@code small_seller}, or {@code standard}. */ @SerializedName("place_of_supply_scheme") String placeOfSupplyScheme; @@ -665,6 +685,9 @@ public static class Standard extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class Au extends StripeObject { + @SerializedName("standard") + Standard standard; + /** * Type of registration in {@code country}. * @@ -672,6 +695,23 @@ public static class Au extends StripeObject { */ @SerializedName("type") String type; + + /** + * For more details about Standard, please refer to the API Reference. + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Standard extends StripeObject { + /** + * Place of supply scheme used in an Default standard registration. + * + *

One of {@code inbound_goods}, or {@code standard}. + */ + @SerializedName("place_of_supply_scheme") + String placeOfSupplyScheme; + } } /** @@ -789,7 +829,7 @@ public static class Standard extends StripeObject { /** * Place of supply scheme used in an EU standard registration. * - *

One of {@code small_seller}, or {@code standard}. + *

One of {@code inbound_goods}, {@code small_seller}, or {@code standard}. */ @SerializedName("place_of_supply_scheme") String placeOfSupplyScheme; @@ -843,7 +883,7 @@ public static class Standard extends StripeObject { /** * Place of supply scheme used in an EU standard registration. * - *

One of {@code small_seller}, or {@code standard}. + *

One of {@code inbound_goods}, {@code small_seller}, or {@code standard}. */ @SerializedName("place_of_supply_scheme") String placeOfSupplyScheme; @@ -979,6 +1019,9 @@ public static class Cd extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class Ch extends StripeObject { + @SerializedName("standard") + Standard standard; + /** * Type of registration in {@code country}. * @@ -986,6 +1029,23 @@ public static class Ch extends StripeObject { */ @SerializedName("type") String type; + + /** + * For more details about Standard, please refer to the API Reference. + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Standard extends StripeObject { + /** + * Place of supply scheme used in an Default standard registration. + * + *

One of {@code inbound_goods}, or {@code standard}. + */ + @SerializedName("place_of_supply_scheme") + String placeOfSupplyScheme; + } } /** @@ -1103,7 +1163,7 @@ public static class Standard extends StripeObject { /** * Place of supply scheme used in an EU standard registration. * - *

One of {@code small_seller}, or {@code standard}. + *

One of {@code inbound_goods}, {@code small_seller}, or {@code standard}. */ @SerializedName("place_of_supply_scheme") String placeOfSupplyScheme; @@ -1140,7 +1200,7 @@ public static class Standard extends StripeObject { /** * Place of supply scheme used in an EU standard registration. * - *

One of {@code small_seller}, or {@code standard}. + *

One of {@code inbound_goods}, {@code small_seller}, or {@code standard}. */ @SerializedName("place_of_supply_scheme") String placeOfSupplyScheme; @@ -1177,7 +1237,7 @@ public static class Standard extends StripeObject { /** * Place of supply scheme used in an EU standard registration. * - *

One of {@code small_seller}, or {@code standard}. + *

One of {@code inbound_goods}, {@code small_seller}, or {@code standard}. */ @SerializedName("place_of_supply_scheme") String placeOfSupplyScheme; @@ -1214,7 +1274,7 @@ public static class Standard extends StripeObject { /** * Place of supply scheme used in an EU standard registration. * - *

One of {@code small_seller}, or {@code standard}. + *

One of {@code inbound_goods}, {@code small_seller}, or {@code standard}. */ @SerializedName("place_of_supply_scheme") String placeOfSupplyScheme; @@ -1268,7 +1328,7 @@ public static class Standard extends StripeObject { /** * Place of supply scheme used in an EU standard registration. * - *

One of {@code small_seller}, or {@code standard}. + *

One of {@code inbound_goods}, {@code small_seller}, or {@code standard}. */ @SerializedName("place_of_supply_scheme") String placeOfSupplyScheme; @@ -1322,7 +1382,7 @@ public static class Standard extends StripeObject { /** * Place of supply scheme used in an EU standard registration. * - *

One of {@code small_seller}, or {@code standard}. + *

One of {@code inbound_goods}, {@code small_seller}, or {@code standard}. */ @SerializedName("place_of_supply_scheme") String placeOfSupplyScheme; @@ -1376,7 +1436,7 @@ public static class Standard extends StripeObject { /** * Place of supply scheme used in an EU standard registration. * - *

One of {@code small_seller}, or {@code standard}. + *

One of {@code inbound_goods}, {@code small_seller}, or {@code standard}. */ @SerializedName("place_of_supply_scheme") String placeOfSupplyScheme; @@ -1413,7 +1473,7 @@ public static class Standard extends StripeObject { /** * Place of supply scheme used in an EU standard registration. * - *

One of {@code small_seller}, or {@code standard}. + *

One of {@code inbound_goods}, {@code small_seller}, or {@code standard}. */ @SerializedName("place_of_supply_scheme") String placeOfSupplyScheme; @@ -1428,6 +1488,9 @@ public static class Standard extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class Gb extends StripeObject { + @SerializedName("standard") + Standard standard; + /** * Type of registration in {@code country}. * @@ -1435,6 +1498,23 @@ public static class Gb extends StripeObject { */ @SerializedName("type") String type; + + /** + * For more details about Standard, please refer to the API Reference. + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Standard extends StripeObject { + /** + * Place of supply scheme used in an Default standard registration. + * + *

One of {@code inbound_goods}, or {@code standard}. + */ + @SerializedName("place_of_supply_scheme") + String placeOfSupplyScheme; + } } /** @@ -1501,7 +1581,7 @@ public static class Standard extends StripeObject { /** * Place of supply scheme used in an EU standard registration. * - *

One of {@code small_seller}, or {@code standard}. + *

One of {@code inbound_goods}, {@code small_seller}, or {@code standard}. */ @SerializedName("place_of_supply_scheme") String placeOfSupplyScheme; @@ -1538,7 +1618,7 @@ public static class Standard extends StripeObject { /** * Place of supply scheme used in an EU standard registration. * - *

One of {@code small_seller}, or {@code standard}. + *

One of {@code inbound_goods}, {@code small_seller}, or {@code standard}. */ @SerializedName("place_of_supply_scheme") String placeOfSupplyScheme; @@ -1575,7 +1655,7 @@ public static class Standard extends StripeObject { /** * Place of supply scheme used in an EU standard registration. * - *

One of {@code small_seller}, or {@code standard}. + *

One of {@code inbound_goods}, {@code small_seller}, or {@code standard}. */ @SerializedName("place_of_supply_scheme") String placeOfSupplyScheme; @@ -1629,7 +1709,7 @@ public static class Standard extends StripeObject { /** * Place of supply scheme used in an EU standard registration. * - *

One of {@code small_seller}, or {@code standard}. + *

One of {@code inbound_goods}, {@code small_seller}, or {@code standard}. */ @SerializedName("place_of_supply_scheme") String placeOfSupplyScheme; @@ -1700,7 +1780,7 @@ public static class Standard extends StripeObject { /** * Place of supply scheme used in an EU standard registration. * - *

One of {@code small_seller}, or {@code standard}. + *

One of {@code inbound_goods}, {@code small_seller}, or {@code standard}. */ @SerializedName("place_of_supply_scheme") String placeOfSupplyScheme; @@ -1715,6 +1795,9 @@ public static class Standard extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class Jp extends StripeObject { + @SerializedName("standard") + Standard standard; + /** * Type of registration in {@code country}. * @@ -1722,6 +1805,23 @@ public static class Jp extends StripeObject { */ @SerializedName("type") String type; + + /** + * For more details about Standard, please refer to the API Reference. + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Standard extends StripeObject { + /** + * Place of supply scheme used in an Default standard registration. + * + *

One of {@code inbound_goods}, or {@code standard}. + */ + @SerializedName("place_of_supply_scheme") + String placeOfSupplyScheme; + } } /** @@ -1856,7 +1956,7 @@ public static class Standard extends StripeObject { /** * Place of supply scheme used in an EU standard registration. * - *

One of {@code small_seller}, or {@code standard}. + *

One of {@code inbound_goods}, {@code small_seller}, or {@code standard}. */ @SerializedName("place_of_supply_scheme") String placeOfSupplyScheme; @@ -1893,7 +1993,7 @@ public static class Standard extends StripeObject { /** * Place of supply scheme used in an EU standard registration. * - *

One of {@code small_seller}, or {@code standard}. + *

One of {@code inbound_goods}, {@code small_seller}, or {@code standard}. */ @SerializedName("place_of_supply_scheme") String placeOfSupplyScheme; @@ -1930,7 +2030,7 @@ public static class Standard extends StripeObject { /** * Place of supply scheme used in an EU standard registration. * - *

One of {@code small_seller}, or {@code standard}. + *

One of {@code inbound_goods}, {@code small_seller}, or {@code standard}. */ @SerializedName("place_of_supply_scheme") String placeOfSupplyScheme; @@ -2052,7 +2152,7 @@ public static class Standard extends StripeObject { /** * Place of supply scheme used in an EU standard registration. * - *

One of {@code small_seller}, or {@code standard}. + *

One of {@code inbound_goods}, {@code small_seller}, or {@code standard}. */ @SerializedName("place_of_supply_scheme") String placeOfSupplyScheme; @@ -2140,7 +2240,7 @@ public static class Standard extends StripeObject { /** * Place of supply scheme used in an EU standard registration. * - *

One of {@code small_seller}, or {@code standard}. + *

One of {@code inbound_goods}, {@code small_seller}, or {@code standard}. */ @SerializedName("place_of_supply_scheme") String placeOfSupplyScheme; @@ -2155,6 +2255,9 @@ public static class Standard extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class No extends StripeObject { + @SerializedName("standard") + Standard standard; + /** * Type of registration in {@code country}. * @@ -2162,6 +2265,23 @@ public static class No extends StripeObject { */ @SerializedName("type") String type; + + /** + * For more details about Standard, please refer to the API Reference. + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Standard extends StripeObject { + /** + * Place of supply scheme used in an Default standard registration. + * + *

One of {@code inbound_goods}, or {@code standard}. + */ + @SerializedName("place_of_supply_scheme") + String placeOfSupplyScheme; + } } /** @@ -2189,6 +2309,9 @@ public static class Np extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class Nz extends StripeObject { + @SerializedName("standard") + Standard standard; + /** * Type of registration in {@code country}. * @@ -2196,6 +2319,23 @@ public static class Nz extends StripeObject { */ @SerializedName("type") String type; + + /** + * For more details about Standard, please refer to the API Reference. + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Standard extends StripeObject { + /** + * Place of supply scheme used in an Default standard registration. + * + *

One of {@code inbound_goods}, or {@code standard}. + */ + @SerializedName("place_of_supply_scheme") + String placeOfSupplyScheme; + } } /** @@ -2279,7 +2419,7 @@ public static class Standard extends StripeObject { /** * Place of supply scheme used in an EU standard registration. * - *

One of {@code small_seller}, or {@code standard}. + *

One of {@code inbound_goods}, {@code small_seller}, or {@code standard}. */ @SerializedName("place_of_supply_scheme") String placeOfSupplyScheme; @@ -2316,7 +2456,7 @@ public static class Standard extends StripeObject { /** * Place of supply scheme used in an EU standard registration. * - *

One of {@code small_seller}, or {@code standard}. + *

One of {@code inbound_goods}, {@code small_seller}, or {@code standard}. */ @SerializedName("place_of_supply_scheme") String placeOfSupplyScheme; @@ -2353,7 +2493,7 @@ public static class Standard extends StripeObject { /** * Place of supply scheme used in an EU standard registration. * - *

One of {@code small_seller}, or {@code standard}. + *

One of {@code inbound_goods}, {@code small_seller}, or {@code standard}. */ @SerializedName("place_of_supply_scheme") String placeOfSupplyScheme; @@ -2441,7 +2581,7 @@ public static class Standard extends StripeObject { /** * Place of supply scheme used in an EU standard registration. * - *

One of {@code small_seller}, or {@code standard}. + *

One of {@code inbound_goods}, {@code small_seller}, or {@code standard}. */ @SerializedName("place_of_supply_scheme") String placeOfSupplyScheme; @@ -2456,6 +2596,9 @@ public static class Standard extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class Sg extends StripeObject { + @SerializedName("standard") + Standard standard; + /** * Type of registration in {@code country}. * @@ -2463,6 +2606,23 @@ public static class Sg extends StripeObject { */ @SerializedName("type") String type; + + /** + * For more details about Standard, please refer to the API Reference. + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Standard extends StripeObject { + /** + * Place of supply scheme used in an Default standard registration. + * + *

One of {@code inbound_goods}, or {@code standard}. + */ + @SerializedName("place_of_supply_scheme") + String placeOfSupplyScheme; + } } /** @@ -2495,7 +2655,7 @@ public static class Standard extends StripeObject { /** * Place of supply scheme used in an EU standard registration. * - *

One of {@code small_seller}, or {@code standard}. + *

One of {@code inbound_goods}, {@code small_seller}, or {@code standard}. */ @SerializedName("place_of_supply_scheme") String placeOfSupplyScheme; @@ -2532,7 +2692,7 @@ public static class Standard extends StripeObject { /** * Place of supply scheme used in an EU standard registration. * - *

One of {@code small_seller}, or {@code standard}. + *

One of {@code inbound_goods}, {@code small_seller}, or {@code standard}. */ @SerializedName("place_of_supply_scheme") String placeOfSupplyScheme; diff --git a/src/main/java/com/stripe/model/terminal/Configuration.java b/src/main/java/com/stripe/model/terminal/Configuration.java index 3ee272db124..cf9dfab40be 100644 --- a/src/main/java/com/stripe/model/terminal/Configuration.java +++ b/src/main/java/com/stripe/model/terminal/Configuration.java @@ -365,9 +365,15 @@ public void setSplashscreenObject(File expandableObject) { @Setter @EqualsAndHashCode(callSuper = false) public static class Tipping extends StripeObject { + @SerializedName("aed") + Aed aed; + @SerializedName("aud") Aud aud; + @SerializedName("bgn") + Bgn bgn; + @SerializedName("cad") Cad cad; @@ -389,6 +395,9 @@ public static class Tipping extends StripeObject { @SerializedName("hkd") Hkd hkd; + @SerializedName("huf") + Huf huf; + @SerializedName("jpy") Jpy jpy; @@ -404,6 +413,9 @@ public static class Tipping extends StripeObject { @SerializedName("pln") Pln pln; + @SerializedName("ron") + Ron ron; + @SerializedName("sek") Sek sek; @@ -413,6 +425,30 @@ public static class Tipping extends StripeObject { @SerializedName("usd") Usd usd; + /** + * For more details about Aed, please refer to the API + * Reference. + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Aed extends StripeObject { + /** Fixed amounts displayed when collecting a tip. */ + @SerializedName("fixed_amounts") + List fixedAmounts; + + /** Percentages displayed when collecting a tip. */ + @SerializedName("percentages") + List percentages; + + /** + * Below this amount, fixed amounts will be displayed; above it, percentages will be + * displayed. + */ + @SerializedName("smart_tip_threshold") + Long smartTipThreshold; + } + /** * For more details about Aud, please refer to the API * Reference. @@ -437,6 +473,30 @@ public static class Aud extends StripeObject { Long smartTipThreshold; } + /** + * For more details about Bgn, please refer to the API + * Reference. + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Bgn extends StripeObject { + /** Fixed amounts displayed when collecting a tip. */ + @SerializedName("fixed_amounts") + List fixedAmounts; + + /** Percentages displayed when collecting a tip. */ + @SerializedName("percentages") + List percentages; + + /** + * Below this amount, fixed amounts will be displayed; above it, percentages will be + * displayed. + */ + @SerializedName("smart_tip_threshold") + Long smartTipThreshold; + } + /** * For more details about Cad, please refer to the API * Reference. @@ -605,6 +665,30 @@ public static class Hkd extends StripeObject { Long smartTipThreshold; } + /** + * For more details about Huf, please refer to the API + * Reference. + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Huf extends StripeObject { + /** Fixed amounts displayed when collecting a tip. */ + @SerializedName("fixed_amounts") + List fixedAmounts; + + /** Percentages displayed when collecting a tip. */ + @SerializedName("percentages") + List percentages; + + /** + * Below this amount, fixed amounts will be displayed; above it, percentages will be + * displayed. + */ + @SerializedName("smart_tip_threshold") + Long smartTipThreshold; + } + /** * For more details about Jpy, please refer to the API * Reference. @@ -725,6 +809,30 @@ public static class Pln extends StripeObject { Long smartTipThreshold; } + /** + * For more details about Ron, please refer to the API + * Reference. + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Ron extends StripeObject { + /** Fixed amounts displayed when collecting a tip. */ + @SerializedName("fixed_amounts") + List fixedAmounts; + + /** Percentages displayed when collecting a tip. */ + @SerializedName("percentages") + List percentages; + + /** + * Below this amount, fixed amounts will be displayed; above it, percentages will be + * displayed. + */ + @SerializedName("smart_tip_threshold") + Long smartTipThreshold; + } + /** * For more details about Sek, please refer to the API * Reference. diff --git a/src/main/java/com/stripe/model/terminal/OnboardingLink.java b/src/main/java/com/stripe/model/terminal/OnboardingLink.java new file mode 100644 index 00000000000..2ebaf0badc9 --- /dev/null +++ b/src/main/java/com/stripe/model/terminal/OnboardingLink.java @@ -0,0 +1,122 @@ +// File generated from our OpenAPI spec +package com.stripe.model.terminal; + +import com.google.gson.annotations.SerializedName; +import com.stripe.exception.StripeException; +import com.stripe.model.StripeObject; +import com.stripe.net.ApiRequest; +import com.stripe.net.ApiRequestParams; +import com.stripe.net.ApiResource; +import com.stripe.net.BaseAddress; +import com.stripe.net.RequestOptions; +import com.stripe.net.StripeResponseGetter; +import com.stripe.param.terminal.OnboardingLinkCreateParams; +import java.util.Map; +import lombok.EqualsAndHashCode; +import lombok.Getter; +import lombok.Setter; + +/** Returns redirect links used for onboarding onto Tap to Pay on iPhone. */ +@Getter +@Setter +@EqualsAndHashCode(callSuper = false) +public class OnboardingLink extends ApiResource { + /** Link type options associated with the current onboarding link object. */ + @SerializedName("link_options") + LinkOptions linkOptions; + + /** + * The type of link being generated. + * + *

Equal to {@code apple_terms_and_conditions}. + */ + @SerializedName("link_type") + String linkType; + + @SerializedName("object") + String object; + + /** Stripe account ID to generate the link for. */ + @SerializedName("on_behalf_of") + String onBehalfOf; + + /** The link passed back to the user for their onboarding. */ + @SerializedName("redirect_url") + String redirectUrl; + + /** + * Creates a new {@code OnboardingLink} object that contains a redirect_url used for onboarding + * onto Tap to Pay on iPhone. + */ + public static OnboardingLink create(Map params) throws StripeException { + return create(params, (RequestOptions) null); + } + + /** + * Creates a new {@code OnboardingLink} object that contains a redirect_url used for onboarding + * onto Tap to Pay on iPhone. + */ + public static OnboardingLink create(Map params, RequestOptions options) + throws StripeException { + String path = "/v1/terminal/onboarding_links"; + ApiRequest request = + new ApiRequest(BaseAddress.API, ApiResource.RequestMethod.POST, path, params, options); + return getGlobalResponseGetter().request(request, OnboardingLink.class); + } + + /** + * Creates a new {@code OnboardingLink} object that contains a redirect_url used for onboarding + * onto Tap to Pay on iPhone. + */ + public static OnboardingLink create(OnboardingLinkCreateParams params) throws StripeException { + return create(params, (RequestOptions) null); + } + + /** + * Creates a new {@code OnboardingLink} object that contains a redirect_url used for onboarding + * onto Tap to Pay on iPhone. + */ + public static OnboardingLink create(OnboardingLinkCreateParams params, RequestOptions options) + throws StripeException { + String path = "/v1/terminal/onboarding_links"; + ApiResource.checkNullTypedParams(path, params); + ApiRequest request = + new ApiRequest( + BaseAddress.API, + ApiResource.RequestMethod.POST, + path, + ApiRequestParams.paramsToMap(params), + options); + return getGlobalResponseGetter().request(request, OnboardingLink.class); + } + + /** Link type options associated with the current onboarding link object. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class LinkOptions extends StripeObject { + /** The options associated with the Apple Terms and Conditions link type. */ + @SerializedName("apple_terms_and_conditions") + AppleTermsAndConditions appleTermsAndConditions; + + /** Options associated with the Apple Terms and Conditions link type. */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class AppleTermsAndConditions extends StripeObject { + /** Whether the link should also support users relinking their Apple account. */ + @SerializedName("allow_relinking") + Boolean allowRelinking; + + /** The business name of the merchant accepting Apple's Terms and Conditions. */ + @SerializedName("merchant_display_name") + String merchantDisplayName; + } + } + + @Override + public void setResponseGetter(StripeResponseGetter responseGetter) { + super.setResponseGetter(responseGetter); + trySetResponseGetter(linkOptions, responseGetter); + } +} diff --git a/src/main/java/com/stripe/model/v2/EventDataClassLookup.java b/src/main/java/com/stripe/model/v2/EventDataClassLookup.java index b615bde75b3..df0b9eff524 100644 --- a/src/main/java/com/stripe/model/v2/EventDataClassLookup.java +++ b/src/main/java/com/stripe/model/v2/EventDataClassLookup.java @@ -91,7 +91,7 @@ public final class EventDataClassLookup { "v2.core.account[requirements].updated", com.stripe.events.V2CoreAccountIncludingRequirementsUpdatedEvent.class); eventClassLookup.put( - "v2.core.account_link.completed", com.stripe.events.V2CoreAccountLinkCompletedEvent.class); + "v2.core.account_link.returned", com.stripe.events.V2CoreAccountLinkReturnedEvent.class); eventClassLookup.put( "v2.core.account.closed", com.stripe.events.V2CoreAccountClosedEvent.class); eventClassLookup.put( @@ -178,9 +178,6 @@ public final class EventDataClassLookup { com.stripe.events.V2MoneyManagementInboundTransferBankDebitSucceededEvent.class); eventClassLookup.put( "v2.core.event_destination.ping", com.stripe.events.V2CoreEventDestinationPingEvent.class); - eventClassLookup.put( - "v2.off_session_payment.requires_capture", - com.stripe.events.V2OffSessionPaymentRequiresCaptureEvent.class); eventClassLookup.put( "v2.payments.off_session_payment.authorization_attempt_failed", com.stripe.events.V2PaymentsOffSessionPaymentAuthorizationAttemptFailedEvent.class); @@ -235,6 +232,9 @@ public final class EventDataClassLookup { eventClassLookup.put( "v2.money_management.outbound_transfer.updated", com.stripe.events.V2MoneyManagementOutboundTransferUpdatedEvent.class); + eventClassLookup.put( + "v2.money_management.payout_method.updated", + com.stripe.events.V2MoneyManagementPayoutMethodUpdatedEvent.class); eventClassLookup.put( "v2.money_management.received_credit.available", com.stripe.events.V2MoneyManagementReceivedCreditAvailableEvent.class); 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 22c4fe2d5b3..18d15b75cd4 100644 --- a/src/main/java/com/stripe/model/v2/core/Account.java +++ b/src/main/java/com/stripe/model/v2/core/Account.java @@ -4945,6 +4945,10 @@ public static class TermsOfService extends StripeObject { @SerializedName("account") InnerAccount account; + /** Details on the Account's acceptance of Treasury-specific terms of service. */ + @SerializedName("storer") + Storer storer; + /** * For more details about InnerAccount, please refer to the API Reference. @@ -4974,6 +4978,36 @@ public static class InnerAccount extends StripeObject { @SerializedName("user_agent") String userAgent; } + + /** + * For more details about Storer, please refer to the API Reference. + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class Storer extends StripeObject { + /** + * The time when the Account's representative accepted the terms of service. Represented + * as a RFC 3339 date & time UTC value in millisecond precision, for example: + * 2022-09-18T13:22:18.123Z. + */ + @SerializedName("date") + Instant date; + + /** + * The IP address from which the Account's representative accepted the terms of service. + */ + @SerializedName("ip") + String ip; + + /** + * The user agent of the browser from which the Account's representative accepted the + * terms of service. + */ + @SerializedName("user_agent") + String userAgent; + } } } diff --git a/src/main/java/com/stripe/model/v2/core/AccountLink.java b/src/main/java/com/stripe/model/v2/core/AccountLink.java index dac4f5e9e4b..823215608ea 100644 --- a/src/main/java/com/stripe/model/v2/core/AccountLink.java +++ b/src/main/java/com/stripe/model/v2/core/AccountLink.java @@ -82,9 +82,16 @@ public static class UseCase extends StripeObject { @EqualsAndHashCode(callSuper = false) public static class AccountOnboarding extends StripeObject { /** - * Open Enum. A v2/account can be configured to enable certain functionality. The - * configuration param targets the v2/account_link to collect information for the specified - * v2/account configuration/s. + * Specifies the requirements that Stripe collects from v2/core/accounts in the Onboarding + * flow. + */ + @SerializedName("collection_options") + CollectionOptions collectionOptions; + + /** + * Open Enum. A v2/core/account can be configured to enable certain functionality. The + * configuration param targets the v2/core/account_link to collect information for the + * specified v2/core/account configuration/s. */ @SerializedName("configurations") List configurations; @@ -104,6 +111,35 @@ public static class AccountOnboarding extends StripeObject { /** The URL that the user will be redirected to upon completing the linked flow. */ @SerializedName("return_url") String returnUrl; + + /** + * For more details about CollectionOptions, please refer to the API Reference. + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class CollectionOptions extends StripeObject { + /** + * Specifies whether the platform collects only currently_due requirements ({@code + * currently_due}) or both currently_due and eventually_due requirements ({@code + * eventually_due}). If you don’t specify collection_options, the default value is + * currently_due. + * + *

One of {@code currently_due}, or {@code eventually_due}. + */ + @SerializedName("fields") + String fields; + + /** + * Specifies whether the platform collects future_requirements in addition to requirements + * in Connect Onboarding. The default value is {@code omit}. + * + *

One of {@code include}, or {@code omit}. + */ + @SerializedName("future_requirements") + String futureRequirements; + } } /** @@ -114,6 +150,13 @@ public static class AccountOnboarding extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class AccountUpdate extends StripeObject { + /** + * Specifies the requirements that Stripe collects from v2/core/accounts in the Onboarding + * flow. + */ + @SerializedName("collection_options") + CollectionOptions collectionOptions; + /** * Open Enum. A v2/account can be configured to enable certain functionality. The * configuration param targets the v2/account_link to collect information for the specified @@ -137,6 +180,35 @@ public static class AccountUpdate extends StripeObject { /** The URL that the user will be redirected to upon completing the linked flow. */ @SerializedName("return_url") String returnUrl; + + /** + * For more details about CollectionOptions, please refer to the API Reference. + */ + @Getter + @Setter + @EqualsAndHashCode(callSuper = false) + public static class CollectionOptions extends StripeObject { + /** + * Specifies whether the platform collects only currently_due requirements ({@code + * currently_due}) or both currently_due and eventually_due requirements ({@code + * eventually_due}). If you don’t specify collection_options, the default value is + * currently_due. + * + *

One of {@code currently_due}, or {@code eventually_due}. + */ + @SerializedName("fields") + String fields; + + /** + * Specifies whether the platform collects future_requirements in addition to requirements + * in Connect Onboarding. The default value is {@code omit}. + * + *

One of {@code include}, or {@code omit}. + */ + @SerializedName("future_requirements") + String futureRequirements; + } } } } diff --git a/src/main/java/com/stripe/model/v2/moneymanagement/PayoutMethod.java b/src/main/java/com/stripe/model/v2/moneymanagement/PayoutMethod.java index 41dc5eb8631..076373b395e 100644 --- a/src/main/java/com/stripe/model/v2/moneymanagement/PayoutMethod.java +++ b/src/main/java/com/stripe/model/v2/moneymanagement/PayoutMethod.java @@ -87,6 +87,14 @@ public static class BankAccount extends StripeObject { @SerializedName("archived") Boolean archived; + /** + * The type of bank account (checking or savings). + * + *

One of {@code checking}, or {@code savings}. + */ + @SerializedName("bank_account_type") + String bankAccountType; + /** * The name of the bank this bank account is in. This field is populated automatically by * Stripe. diff --git a/src/main/java/com/stripe/model/v2/payments/OffSessionPayment.java b/src/main/java/com/stripe/model/v2/payments/OffSessionPayment.java index c420e9a5b52..8f6cd546414 100644 --- a/src/main/java/com/stripe/model/v2/payments/OffSessionPayment.java +++ b/src/main/java/com/stripe/model/v2/payments/OffSessionPayment.java @@ -15,44 +15,47 @@ @Setter @EqualsAndHashCode(callSuper = false) public class OffSessionPayment extends StripeObject implements HasId { - /** The amount you requested to be collected on the OSP upon creation. */ + /** The “presentment amount” to be collected from the customer. */ @SerializedName("amount_requested") Amount amountRequested; /** - * The frequency of the underlying payment that this OSP represents. + * The frequency of the underlying payment. * *

One of {@code recurring}, or {@code unscheduled}. */ @SerializedName("cadence") String cadence; - /** ID of owning compartment. */ + /** ID of the owning compartment. */ @SerializedName("compartment_id") String compartmentId; - /** Timestamp of creation. */ + /** + * Creation time of the OffSessionPayment. Represented as a RFC 3339 date & time UTC value in + * millisecond precision, for example: 2022-09-18T13:22:18.123Z. + */ @SerializedName("created") Instant created; - /** Customer owning the supplied payment method. */ + /** ID of the Customer to which this OffSessionPayment belongs. */ @SerializedName("customer") String customer; /** - * Reason why the OSP failed. + * The reason why the OffSessionPayment failed. * *

One of {@code rejected_by_partner}, or {@code retries_exhausted}. */ @SerializedName("failure_reason") String failureReason; - /** ID of the OSP. */ + /** Unique identifier for the object.. */ @Getter(onMethod_ = {@Override}) @SerializedName("id") String id; - /** Last error returned by the financial partner for a failed authorization. */ + /** The payment error encountered in the previous attempt to authorize the payment. */ @SerializedName("last_authorization_attempt_error") String lastAuthorizationAttemptError; @@ -60,11 +63,20 @@ public class OffSessionPayment extends StripeObject implements HasId { @SerializedName("latest_payment_attempt_record") String latestPaymentAttemptRecord; - /** True if the txn is livemode, false otherwise. */ + /** + * Has the value true if the object exists in live mode or the value false if the object exists in + * test mode. + */ @SerializedName("livemode") Boolean livemode; - /** Metadata you provided. */ + /** + * Set of key-value pairs that you can + * attach to an object. This can be useful for storing additional information about the object in + * a structured format. Learn more about storing + * information in metadata. + */ @SerializedName("metadata") Map metadata; @@ -77,44 +89,57 @@ public class OffSessionPayment extends StripeObject implements HasId { @SerializedName("object") String object; - /** OBO, same as on the PI. */ + /** The account (if any) for which the funds of the OffSessionPayment are intended. */ @SerializedName("on_behalf_of") String onBehalfOf; - /** ID of payment method. */ + /** ID of the payment method used in this OffSessionPayment. */ @SerializedName("payment_method") String paymentMethod; - /** Payment record associated with the OSP. consistent across attempts. */ + /** Payment record associated with the OffSessionPayment. */ @SerializedName("payment_record") String paymentRecord; - /** Details about the OSP retries. */ + /** Details about the OffSessionPayment retries. */ @SerializedName("retry_details") RetryDetails retryDetails; - /** Statement descriptor you provided. */ + /** + * Text that appears on the customer’s statement as the statement descriptor for a non-card + * charge. This value overrides the account’s default statement descriptor. For information about + * requirements, including the 22-character limit, see the Statement Descriptor + * docs. + */ @SerializedName("statement_descriptor") String statementDescriptor; - /** Statement descriptor suffix you provided, similar to that on the PI. */ + /** + * Provides information about a card charge. Concatenated to the account’s statement + * descriptor prefix to form the complete statement descriptor that appears on the customer’s + * statement. + */ @SerializedName("statement_descriptor_suffix") String statementDescriptorSuffix; /** - * Status of the OSP. - * - *

One of {@code canceled}, {@code failed}, {@code pending}, {@code pending_retry}, {@code - * processing}, {@code requires_capture}, or {@code succeeded}. + * Status of this OffSessionPayment, one of {@code pending}, {@code pending_retry}, {@code + * processing}, {@code failed}, {@code canceled}, {@code requires_capture}, or {@code succeeded}. */ @SerializedName("status") String status; - /** Test clock to be used to advance the retry attempts. */ + /** Test clock that can be used to advance the retry attempts in a sandbox. */ @SerializedName("test_clock") String testClock; - /** Instructions for the transfer to be made with this OSP after successful money movement. */ + /** + * The data that automatically creates a Transfer after the payment finalizes. Learn more about + * the use case for connected + * accounts. + */ @SerializedName("transfer_data") TransferData transferData; @@ -131,7 +156,7 @@ public static class RetryDetails extends StripeObject { Integer attempts; /** - * How you want Stripe to retry the payment. + * Indicates the strategy for how you want Stripe to retry the payment. * *

One of {@code none}, or {@code smart}. */ @@ -147,11 +172,21 @@ public static class RetryDetails extends StripeObject { @Setter @EqualsAndHashCode(callSuper = false) public static class TransferData extends StripeObject { - /** Amount in minor units that you want to transfer. */ + /** + * The amount transferred to the destination account. This transfer will occur automatically + * after the payment succeeds. If no amount is specified, by default the entire payment amount + * is transferred to the destination account. The amount must be less than or equal to the amount_requested, + * and must be a positive integer representing how much to transfer in the smallest currency + * unit (e.g., 100 cents to charge $1.00). + */ @SerializedName("amount") Integer amount; - /** ID of the connected account where you want money to go. */ + /** + * The account (if any) that the payment is attributed to for tax reporting, and where funds + * from the payment are transferred to after payment success. + */ @SerializedName("destination") String destination; } diff --git a/src/main/java/com/stripe/param/AccountCreateParams.java b/src/main/java/com/stripe/param/AccountCreateParams.java index 24edd33dabe..b1cc90f795c 100644 --- a/src/main/java/com/stripe/param/AccountCreateParams.java +++ b/src/main/java/com/stripe/param/AccountCreateParams.java @@ -627,7 +627,7 @@ public static class BusinessProfile { @SerializedName("mcc") String mcc; - /** Whether the business is a minority-owned, women-owned, and/or LGBTQI+-owned business. */ + /** Whether the business is a minority-owned, women-owned, and/or LGBTQI+ -owned business. */ @SerializedName("minority_owned_business_designation") List minorityOwnedBusinessDesignation; diff --git a/src/main/java/com/stripe/param/AccountLinkCreateParams.java b/src/main/java/com/stripe/param/AccountLinkCreateParams.java index 0acb88ca29e..87b53d6591c 100644 --- a/src/main/java/com/stripe/param/AccountLinkCreateParams.java +++ b/src/main/java/com/stripe/param/AccountLinkCreateParams.java @@ -57,8 +57,15 @@ public class AccountLinkCreateParams extends ApiRequestParams { String returnUrl; /** - * Required. The type of account link the user is requesting. Possible values are - * {@code account_onboarding} or {@code account_update}. + * Required. The type of account link the user is requesting. + * + *

You can create Account Links of type {@code account_update} only for connected accounts + * where your platform is responsible for collecting requirements, including Custom accounts. You + * can't create them for accounts that have access to a Stripe-hosted Dashboard. If you use Connect embedded + * components, you can include components that allow your connected accounts to update their + * own information. For an account without Stripe-hosted Dashboard access where Stripe is liable + * for negative balances, you must use embedded components. */ @SerializedName("type") Type type; @@ -210,8 +217,15 @@ public Builder setReturnUrl(String returnUrl) { } /** - * Required. The type of account link the user is requesting. Possible values - * are {@code account_onboarding} or {@code account_update}. + * Required. The type of account link the user is requesting. + * + *

You can create Account Links of type {@code account_update} only for connected accounts + * where your platform is responsible for collecting requirements, including Custom accounts. + * You can't create them for accounts that have access to a Stripe-hosted Dashboard. If you use + * Connect embedded + * components, you can include components that allow your connected accounts to update their + * own information. For an account without Stripe-hosted Dashboard access where Stripe is liable + * for negative balances, you must use embedded components. */ public Builder setType(AccountLinkCreateParams.Type type) { this.type = type; diff --git a/src/main/java/com/stripe/param/AccountSessionCreateParams.java b/src/main/java/com/stripe/param/AccountSessionCreateParams.java index 3baf36e3de1..ee561901ada 100644 --- a/src/main/java/com/stripe/param/AccountSessionCreateParams.java +++ b/src/main/java/com/stripe/param/AccountSessionCreateParams.java @@ -259,6 +259,14 @@ public static class Components { @SerializedName("financial_account_transactions") FinancialAccountTransactions financialAccountTransactions; + /** + * Configuration for the instant + * payouts promotion embedded component. + */ + @SerializedName("instant_payouts_promotion") + InstantPayoutsPromotion instantPayoutsPromotion; + /** * Configuration for the issuing @@ -395,6 +403,7 @@ private Components( Map extraParams, FinancialAccount financialAccount, FinancialAccountTransactions financialAccountTransactions, + InstantPayoutsPromotion instantPayoutsPromotion, IssuingCard issuingCard, IssuingCardsList issuingCardsList, NotificationBanner notificationBanner, @@ -425,6 +434,7 @@ private Components( this.extraParams = extraParams; this.financialAccount = financialAccount; this.financialAccountTransactions = financialAccountTransactions; + this.instantPayoutsPromotion = instantPayoutsPromotion; this.issuingCard = issuingCard; this.issuingCardsList = issuingCardsList; this.notificationBanner = notificationBanner; @@ -477,6 +487,8 @@ public static class Builder { private FinancialAccountTransactions financialAccountTransactions; + private InstantPayoutsPromotion instantPayoutsPromotion; + private IssuingCard issuingCard; private IssuingCardsList issuingCardsList; @@ -525,6 +537,7 @@ public AccountSessionCreateParams.Components build() { this.extraParams, this.financialAccount, this.financialAccountTransactions, + this.instantPayoutsPromotion, this.issuingCard, this.issuingCardsList, this.notificationBanner, @@ -721,6 +734,17 @@ public Builder setFinancialAccountTransactions( return this; } + /** + * Configuration for the instant + * payouts promotion embedded component. + */ + public Builder setInstantPayoutsPromotion( + AccountSessionCreateParams.Components.InstantPayoutsPromotion instantPayoutsPromotion) { + this.instantPayoutsPromotion = instantPayoutsPromotion; + return this; + } + /** * Configuration for the issuing @@ -3470,6 +3494,235 @@ public Builder putAllExtraParam(Map map) { } } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class InstantPayoutsPromotion { + /** Required. Whether the embedded component is enabled. */ + @SerializedName("enabled") + Boolean enabled; + + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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 list of features enabled in the embedded component. */ + @SerializedName("features") + Features features; + + private InstantPayoutsPromotion( + Boolean enabled, Map extraParams, Features features) { + this.enabled = enabled; + this.extraParams = extraParams; + this.features = features; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Boolean enabled; + + private Map extraParams; + + private Features features; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountSessionCreateParams.Components.InstantPayoutsPromotion build() { + return new AccountSessionCreateParams.Components.InstantPayoutsPromotion( + this.enabled, this.extraParams, this.features); + } + + /** Required. Whether the embedded component is enabled. */ + public Builder setEnabled(Boolean enabled) { + this.enabled = enabled; + 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 + * AccountSessionCreateParams.Components.InstantPayoutsPromotion#extraParams} for the field + * documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link + * AccountSessionCreateParams.Components.InstantPayoutsPromotion#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 list of features enabled in the embedded component. */ + public Builder setFeatures( + AccountSessionCreateParams.Components.InstantPayoutsPromotion.Features features) { + this.features = features; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Features { + /** + * Whether Stripe user authentication is disabled. This value can only be {@code true} for + * accounts where {@code controller.requirement_collection} is {@code application} for the + * account. The default value is the opposite of the {@code external_account_collection} + * value. For example, if you don't set {@code external_account_collection}, it defaults to + * {@code true} and {@code disable_stripe_user_authentication} defaults to {@code false}. + */ + @SerializedName("disable_stripe_user_authentication") + Boolean disableStripeUserAuthentication; + + /** + * Whether external account collection is enabled. This feature can only be {@code false} + * for accounts where you’re responsible for collecting updated information when + * requirements are due or change, like Custom accounts. The default value for this feature + * is {@code true}. + */ + @SerializedName("external_account_collection") + Boolean externalAccountCollection; + + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-level field + * (serialized) name in this param object. Effectively, this map is flattened to its parent + * instance. + */ + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** + * Whether to allow creation of instant payouts. Defaults to {@code true} when {@code + * controller.losses.payments} is set to {@code stripe} for the account, otherwise {@code + * false}. + */ + @SerializedName("instant_payouts") + Boolean instantPayouts; + + private Features( + Boolean disableStripeUserAuthentication, + Boolean externalAccountCollection, + Map extraParams, + Boolean instantPayouts) { + this.disableStripeUserAuthentication = disableStripeUserAuthentication; + this.externalAccountCollection = externalAccountCollection; + this.extraParams = extraParams; + this.instantPayouts = instantPayouts; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Boolean disableStripeUserAuthentication; + + private Boolean externalAccountCollection; + + private Map extraParams; + + private Boolean instantPayouts; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountSessionCreateParams.Components.InstantPayoutsPromotion.Features build() { + return new AccountSessionCreateParams.Components.InstantPayoutsPromotion.Features( + this.disableStripeUserAuthentication, + this.externalAccountCollection, + this.extraParams, + this.instantPayouts); + } + + /** + * Whether Stripe user authentication is disabled. This value can only be {@code true} for + * accounts where {@code controller.requirement_collection} is {@code application} for the + * account. The default value is the opposite of the {@code external_account_collection} + * value. For example, if you don't set {@code external_account_collection}, it defaults + * to {@code true} and {@code disable_stripe_user_authentication} defaults to {@code + * false}. + */ + public Builder setDisableStripeUserAuthentication( + Boolean disableStripeUserAuthentication) { + this.disableStripeUserAuthentication = disableStripeUserAuthentication; + return this; + } + + /** + * Whether external account collection is enabled. This feature can only be {@code false} + * for accounts where you’re responsible for collecting updated information when + * requirements are due or change, like Custom accounts. The default value for this + * feature is {@code true}. + */ + public Builder setExternalAccountCollection(Boolean externalAccountCollection) { + this.externalAccountCollection = externalAccountCollection; + 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 + * AccountSessionCreateParams.Components.InstantPayoutsPromotion.Features#extraParams} for + * the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link + * AccountSessionCreateParams.Components.InstantPayoutsPromotion.Features#extraParams} for + * the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** + * Whether to allow creation of instant payouts. Defaults to {@code true} when {@code + * controller.losses.payments} is set to {@code stripe} for the account, otherwise {@code + * false}. + */ + public Builder setInstantPayouts(Boolean instantPayouts) { + this.instantPayouts = instantPayouts; + return this; + } + } + } + } + @Getter @EqualsAndHashCode(callSuper = false) public static class IssuingCard { diff --git a/src/main/java/com/stripe/param/AccountUpdateParams.java b/src/main/java/com/stripe/param/AccountUpdateParams.java index f02835c4a2c..583808036e4 100644 --- a/src/main/java/com/stripe/param/AccountUpdateParams.java +++ b/src/main/java/com/stripe/param/AccountUpdateParams.java @@ -614,7 +614,7 @@ public static class BusinessProfile { @SerializedName("mcc") Object mcc; - /** Whether the business is a minority-owned, women-owned, and/or LGBTQI+-owned business. */ + /** Whether the business is a minority-owned, women-owned, and/or LGBTQI+ -owned business. */ @SerializedName("minority_owned_business_designation") List minorityOwnedBusinessDesignation; diff --git a/src/main/java/com/stripe/param/BalanceSettingsUpdateParams.java b/src/main/java/com/stripe/param/BalanceSettingsUpdateParams.java index 7001fd76052..039cc4aae22 100644 --- a/src/main/java/com/stripe/param/BalanceSettingsUpdateParams.java +++ b/src/main/java/com/stripe/param/BalanceSettingsUpdateParams.java @@ -286,30 +286,31 @@ public static class Schedule { Interval interval; /** - * The day of the month when available funds are paid out, specified as a number between - * 1--31. Payouts nominally scheduled between the 29th and 31st of the month are instead sent - * on the last day of a shorter month. Required and applicable only if {@code interval} is - * {@code monthly}. + * The days of the month when available funds are paid out, specified as an array of numbers + * between 1--31. Payouts nominally scheduled between the 29th and 31st of the month are + * instead sent on the last day of a shorter month. Required and applicable only if {@code + * interval} is {@code monthly}. */ - @SerializedName("monthly_anchor") - Long monthlyAnchor; + @SerializedName("monthly_payout_days") + List monthlyPayoutDays; /** - * The day of the week when available funds are paid out (required and applicable only if - * {@code interval} is {@code weekly}.). + * The days of the week when available funds are paid out, specified as an array, e.g., + * [{@code monday}, {@code tuesday}]. (required and applicable only if {@code interval} is + * {@code weekly}.) */ - @SerializedName("weekly_anchor") - WeeklyAnchor weeklyAnchor; + @SerializedName("weekly_payout_days") + List weeklyPayoutDays; private Schedule( Map extraParams, Interval interval, - Long monthlyAnchor, - WeeklyAnchor weeklyAnchor) { + List monthlyPayoutDays, + List weeklyPayoutDays) { this.extraParams = extraParams; this.interval = interval; - this.monthlyAnchor = monthlyAnchor; - this.weeklyAnchor = weeklyAnchor; + this.monthlyPayoutDays = monthlyPayoutDays; + this.weeklyPayoutDays = weeklyPayoutDays; } public static Builder builder() { @@ -321,14 +322,14 @@ public static class Builder { private Interval interval; - private Long monthlyAnchor; + private List monthlyPayoutDays; - private WeeklyAnchor weeklyAnchor; + private List weeklyPayoutDays; /** Finalize and obtain parameter instance from this builder. */ public BalanceSettingsUpdateParams.Payouts.Schedule build() { return new BalanceSettingsUpdateParams.Payouts.Schedule( - this.extraParams, this.interval, this.monthlyAnchor, this.weeklyAnchor); + this.extraParams, this.interval, this.monthlyPayoutDays, this.weeklyPayoutDays); } /** @@ -369,23 +370,60 @@ public Builder setInterval(BalanceSettingsUpdateParams.Payouts.Schedule.Interval } /** - * The day of the month when available funds are paid out, specified as a number between - * 1--31. Payouts nominally scheduled between the 29th and 31st of the month are instead - * sent on the last day of a shorter month. Required and applicable only if {@code interval} - * is {@code monthly}. + * Add an element to `monthlyPayoutDays` list. A list is initialized for the first + * `add/addAll` call, and subsequent calls adds additional elements to the original list. + * See {@link BalanceSettingsUpdateParams.Payouts.Schedule#monthlyPayoutDays} for the field + * documentation. + */ + public Builder addMonthlyPayoutDay(Long element) { + if (this.monthlyPayoutDays == null) { + this.monthlyPayoutDays = new ArrayList<>(); + } + this.monthlyPayoutDays.add(element); + return this; + } + + /** + * Add all elements to `monthlyPayoutDays` list. A list is initialized for the first + * `add/addAll` call, and subsequent calls adds additional elements to the original list. + * See {@link BalanceSettingsUpdateParams.Payouts.Schedule#monthlyPayoutDays} for the field + * documentation. + */ + public Builder addAllMonthlyPayoutDay(List elements) { + if (this.monthlyPayoutDays == null) { + this.monthlyPayoutDays = new ArrayList<>(); + } + this.monthlyPayoutDays.addAll(elements); + return this; + } + + /** + * Add an element to `weeklyPayoutDays` list. A list is initialized for the first + * `add/addAll` call, and subsequent calls adds additional elements to the original list. + * See {@link BalanceSettingsUpdateParams.Payouts.Schedule#weeklyPayoutDays} for the field + * documentation. */ - public Builder setMonthlyAnchor(Long monthlyAnchor) { - this.monthlyAnchor = monthlyAnchor; + public Builder addWeeklyPayoutDay( + BalanceSettingsUpdateParams.Payouts.Schedule.WeeklyPayoutDay element) { + if (this.weeklyPayoutDays == null) { + this.weeklyPayoutDays = new ArrayList<>(); + } + this.weeklyPayoutDays.add(element); return this; } /** - * The day of the week when available funds are paid out (required and applicable only if - * {@code interval} is {@code weekly}.). + * Add all elements to `weeklyPayoutDays` list. A list is initialized for the first + * `add/addAll` call, and subsequent calls adds additional elements to the original list. + * See {@link BalanceSettingsUpdateParams.Payouts.Schedule#weeklyPayoutDays} for the field + * documentation. */ - public Builder setWeeklyAnchor( - BalanceSettingsUpdateParams.Payouts.Schedule.WeeklyAnchor weeklyAnchor) { - this.weeklyAnchor = weeklyAnchor; + public Builder addAllWeeklyPayoutDay( + List elements) { + if (this.weeklyPayoutDays == null) { + this.weeklyPayoutDays = new ArrayList<>(); + } + this.weeklyPayoutDays.addAll(elements); return this; } } @@ -411,13 +449,19 @@ public enum Interval implements ApiRequestParams.EnumParam { } } - public enum WeeklyAnchor implements ApiRequestParams.EnumParam { + public enum WeeklyPayoutDay implements ApiRequestParams.EnumParam { @SerializedName("friday") FRIDAY("friday"), @SerializedName("monday") MONDAY("monday"), + @SerializedName("saturday") + SATURDAY("saturday"), + + @SerializedName("sunday") + SUNDAY("sunday"), + @SerializedName("thursday") THURSDAY("thursday"), @@ -430,7 +474,7 @@ public enum WeeklyAnchor implements ApiRequestParams.EnumParam { @Getter(onMethod_ = {@Override}) private final String value; - WeeklyAnchor(String value) { + WeeklyPayoutDay(String value) { this.value = value; } } @@ -448,8 +492,8 @@ public static class SettlementTiming { * href="https://stripe.com/connect/manage-payout-schedule">Learn more about controlling payout * delay days. */ - @SerializedName("delay_days") - Long delayDays; + @SerializedName("delay_days_override") + Long delayDaysOverride; /** * Map of extra parameters for custom features not available in this client library. The content @@ -460,8 +504,8 @@ public static class SettlementTiming { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - private SettlementTiming(Long delayDays, Map extraParams) { - this.delayDays = delayDays; + private SettlementTiming(Long delayDaysOverride, Map extraParams) { + this.delayDaysOverride = delayDaysOverride; this.extraParams = extraParams; } @@ -470,13 +514,14 @@ public static Builder builder() { } public static class Builder { - private Long delayDays; + private Long delayDaysOverride; private Map extraParams; /** Finalize and obtain parameter instance from this builder. */ public BalanceSettingsUpdateParams.SettlementTiming build() { - return new BalanceSettingsUpdateParams.SettlementTiming(this.delayDays, this.extraParams); + return new BalanceSettingsUpdateParams.SettlementTiming( + this.delayDaysOverride, this.extraParams); } /** @@ -487,8 +532,8 @@ public BalanceSettingsUpdateParams.SettlementTiming build() { * href="https://stripe.com/connect/manage-payout-schedule">Learn more about controlling * payout delay days. */ - public Builder setDelayDays(Long delayDays) { - this.delayDays = delayDays; + public Builder setDelayDaysOverride(Long delayDaysOverride) { + this.delayDaysOverride = delayDaysOverride; return this; } diff --git a/src/main/java/com/stripe/param/InvoiceCreateParams.java b/src/main/java/com/stripe/param/InvoiceCreateParams.java index 7dbb7c4332c..c596878c5dd 100644 --- a/src/main/java/com/stripe/param/InvoiceCreateParams.java +++ b/src/main/java/com/stripe/param/InvoiceCreateParams.java @@ -39,7 +39,7 @@ public class InvoiceCreateParams extends ApiRequestParams { * Controls whether Stripe performs automatic * collection of the invoice. If {@code false}, the invoice's state doesn't automatically - * advance without an explicit action. + * advance without an explicit action. Defaults to false. */ @SerializedName("auto_advance") Boolean autoAdvance; @@ -49,8 +49,8 @@ public class InvoiceCreateParams extends ApiRequestParams { AutomaticTax automaticTax; /** - * The time when this invoice should be scheduled to finalize. The invoice will be finalized at - * this time if it is still in draft state. + * The time when this invoice should be scheduled to finalize (up to 5 years in the future). The + * invoice is finalized at this time if it's still in draft state. */ @SerializedName("automatically_finalizes_at") Long automaticallyFinalizesAt; @@ -560,7 +560,7 @@ public Builder setApplicationFeeAmount(Long applicationFeeAmount) { * Controls whether Stripe performs automatic * collection of the invoice. If {@code false}, the invoice's state doesn't automatically - * advance without an explicit action. + * advance without an explicit action. Defaults to false. */ public Builder setAutoAdvance(Boolean autoAdvance) { this.autoAdvance = autoAdvance; @@ -574,8 +574,8 @@ public Builder setAutomaticTax(InvoiceCreateParams.AutomaticTax automaticTax) { } /** - * The time when this invoice should be scheduled to finalize. The invoice will be finalized at - * this time if it is still in draft state. + * The time when this invoice should be scheduled to finalize (up to 5 years in the future). The + * invoice is finalized at this time if it's still in draft state. */ public Builder setAutomaticallyFinalizesAt(Long automaticallyFinalizesAt) { this.automaticallyFinalizesAt = automaticallyFinalizesAt; @@ -2237,6 +2237,13 @@ public static class PaymentMethodOptions { @SerializedName("sepa_debit") Object sepaDebit; + /** + * If paying by {@code upi}, this sub-hash contains details about the UPI payment method + * options to pass to the invoice’s PaymentIntent. + */ + @SerializedName("upi") + Object upi; + /** * If paying by {@code us_bank_account}, this sub-hash contains details about the ACH direct * debit payment method options to pass to the invoice’s PaymentIntent. @@ -2253,6 +2260,7 @@ private PaymentMethodOptions( Object idBankTransfer, Object konbini, Object sepaDebit, + Object upi, Object usBankAccount) { this.acssDebit = acssDebit; this.bancontact = bancontact; @@ -2262,6 +2270,7 @@ private PaymentMethodOptions( this.idBankTransfer = idBankTransfer; this.konbini = konbini; this.sepaDebit = sepaDebit; + this.upi = upi; this.usBankAccount = usBankAccount; } @@ -2286,6 +2295,8 @@ public static class Builder { private Object sepaDebit; + private Object upi; + private Object usBankAccount; /** Finalize and obtain parameter instance from this builder. */ @@ -2299,6 +2310,7 @@ public InvoiceCreateParams.PaymentSettings.PaymentMethodOptions build() { this.idBankTransfer, this.konbini, this.sepaDebit, + this.upi, this.usBankAccount); } @@ -2464,6 +2476,24 @@ public Builder setSepaDebit(EmptyParam sepaDebit) { return this; } + /** + * If paying by {@code upi}, this sub-hash contains details about the UPI payment method + * options to pass to the invoice’s PaymentIntent. + */ + public Builder setUpi(InvoiceCreateParams.PaymentSettings.PaymentMethodOptions.Upi upi) { + this.upi = upi; + return this; + } + + /** + * If paying by {@code upi}, this sub-hash contains details about the UPI payment method + * options to pass to the invoice’s PaymentIntent. + */ + public Builder setUpi(EmptyParam upi) { + this.upi = upi; + return this; + } + /** * If paying by {@code us_bank_account}, this sub-hash contains details about the ACH direct * debit payment method options to pass to the invoice’s PaymentIntent. @@ -2809,7 +2839,7 @@ public static class Card { Map extraParams; /** - * Installment configuration for payments attempted on this invoice (Mexico Only). + * Installment configuration for payments attempted on this invoice. * *

For more information, see the installments integration guide. @@ -2887,7 +2917,7 @@ public Builder putAllExtraParam(Map map) { } /** - * Installment configuration for payments attempted on this invoice (Mexico Only). + * Installment configuration for payments attempted on this invoice. * *

For more information, see the installments integration @@ -3675,6 +3705,242 @@ public Builder putAllExtraParam(Map map) { } } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Upi { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-level field + * (serialized) name in this param object. Effectively, this map is flattened to its parent + * instance. + */ + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** Configuration options for setting up an eMandate. */ + @SerializedName("mandate_options") + MandateOptions mandateOptions; + + private Upi(Map extraParams, MandateOptions mandateOptions) { + this.extraParams = extraParams; + this.mandateOptions = mandateOptions; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private MandateOptions mandateOptions; + + /** Finalize and obtain parameter instance from this builder. */ + public InvoiceCreateParams.PaymentSettings.PaymentMethodOptions.Upi build() { + return new InvoiceCreateParams.PaymentSettings.PaymentMethodOptions.Upi( + this.extraParams, this.mandateOptions); + } + + /** + * Add a key/value pair to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link + * InvoiceCreateParams.PaymentSettings.PaymentMethodOptions.Upi#extraParams} for the field + * documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link + * InvoiceCreateParams.PaymentSettings.PaymentMethodOptions.Upi#extraParams} for the field + * documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Configuration options for setting up an eMandate. */ + public Builder setMandateOptions( + InvoiceCreateParams.PaymentSettings.PaymentMethodOptions.Upi.MandateOptions + mandateOptions) { + this.mandateOptions = mandateOptions; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class MandateOptions { + /** Amount to be charged for future payments. */ + @SerializedName("amount") + Long amount; + + /** + * One of {@code fixed} or {@code maximum}. If {@code fixed}, the {@code amount} param + * refers to the exact amount to be charged in future payments. If {@code maximum}, the + * amount charged can be up to the value passed for the {@code amount} param. + */ + @SerializedName("amount_type") + AmountType amountType; + + /** + * A description of the mandate or subscription that is meant to be displayed to the + * customer. + */ + @SerializedName("description") + String description; + + /** + * End date of the mandate or subscription. If not provided, the mandate will be active + * until canceled. If provided, end date should be after start date. + */ + @SerializedName("end_date") + Long endDate; + + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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 MandateOptions( + Long amount, + AmountType amountType, + String description, + Long endDate, + Map extraParams) { + this.amount = amount; + this.amountType = amountType; + this.description = description; + this.endDate = endDate; + this.extraParams = extraParams; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Long amount; + + private AmountType amountType; + + private String description; + + private Long endDate; + + private Map extraParams; + + /** Finalize and obtain parameter instance from this builder. */ + public InvoiceCreateParams.PaymentSettings.PaymentMethodOptions.Upi.MandateOptions + build() { + return new InvoiceCreateParams.PaymentSettings.PaymentMethodOptions.Upi + .MandateOptions( + this.amount, this.amountType, this.description, this.endDate, this.extraParams); + } + + /** Amount to be charged for future payments. */ + public Builder setAmount(Long amount) { + this.amount = amount; + return this; + } + + /** + * One of {@code fixed} or {@code maximum}. If {@code fixed}, the {@code amount} param + * refers to the exact amount to be charged in future payments. If {@code maximum}, the + * amount charged can be up to the value passed for the {@code amount} param. + */ + public Builder setAmountType( + InvoiceCreateParams.PaymentSettings.PaymentMethodOptions.Upi.MandateOptions + .AmountType + amountType) { + this.amountType = amountType; + return this; + } + + /** + * A description of the mandate or subscription that is meant to be displayed to the + * customer. + */ + public Builder setDescription(String description) { + this.description = description; + return this; + } + + /** + * End date of the mandate or subscription. If not provided, the mandate will be active + * until canceled. If provided, end date should be after start date. + */ + public Builder setEndDate(Long endDate) { + this.endDate = endDate; + 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 + * InvoiceCreateParams.PaymentSettings.PaymentMethodOptions.Upi.MandateOptions#extraParams} + * for the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the + * original map. See {@link + * InvoiceCreateParams.PaymentSettings.PaymentMethodOptions.Upi.MandateOptions#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 AmountType implements ApiRequestParams.EnumParam { + @SerializedName("fixed") + FIXED("fixed"), + + @SerializedName("maximum") + MAXIMUM("maximum"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + AmountType(String value) { + this.value = value; + } + } + } + } + @Getter @EqualsAndHashCode(callSuper = false) public static class UsBankAccount { @@ -4305,6 +4571,9 @@ public enum PaymentMethodType implements ApiRequestParams.EnumParam { @SerializedName("swish") SWISH("swish"), + @SerializedName("upi") + UPI("upi"), + @SerializedName("us_bank_account") US_BANK_ACCOUNT("us_bank_account"), diff --git a/src/main/java/com/stripe/param/InvoiceCreatePreviewParams.java b/src/main/java/com/stripe/param/InvoiceCreatePreviewParams.java index 08b765a4b31..397a141c101 100644 --- a/src/main/java/com/stripe/param/InvoiceCreatePreviewParams.java +++ b/src/main/java/com/stripe/param/InvoiceCreatePreviewParams.java @@ -7849,7 +7849,10 @@ public static class BillingMode { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** Required. */ + /** + * Required. Controls the calculation and orchestration of prorations and + * invoices for subscriptions. + */ @SerializedName("type") Type type; @@ -7901,7 +7904,10 @@ public Builder putAllExtraParam(Map map) { return this; } - /** Required. */ + /** + * Required. Controls the calculation and orchestration of prorations and + * invoices for subscriptions. + */ public Builder setType(InvoiceCreatePreviewParams.ScheduleDetails.BillingMode.Type type) { this.type = type; return this; @@ -8018,6 +8024,12 @@ public static class Phase { @SerializedName("discounts") Object discounts; + /** + * The number of intervals the phase should last. If set, {@code end_date} must not be set. + */ + @SerializedName("duration") + Duration duration; + /** * The date at which this phase of the subscription schedule ends. If set, {@code iterations} * must not be set. @@ -8049,7 +8061,8 @@ public static class Phase { * Integer representing the multiplier applied to the price interval. For example, {@code * iterations=2} applied to a price with {@code interval=month} and {@code interval_count=3} * results in a phase of duration {@code 2 * 3 months = 6 months}. If set, {@code end_date} - * must not be set. + * must not be set. This parameter is deprecated and will be removed in a future version. Use + * {@code duration} instead. */ @SerializedName("iterations") Long iterations; @@ -8142,6 +8155,7 @@ private Phase( Object defaultTaxRates, Object description, Object discounts, + Duration duration, Object endDate, Map extraParams, InvoiceSettings invoiceSettings, @@ -8168,6 +8182,7 @@ private Phase( this.defaultTaxRates = defaultTaxRates; this.description = description; this.discounts = discounts; + this.duration = duration; this.endDate = endDate; this.extraParams = extraParams; this.invoiceSettings = invoiceSettings; @@ -8213,6 +8228,8 @@ public static class Builder { private Object discounts; + private Duration duration; + private Object endDate; private Map extraParams; @@ -8257,6 +8274,7 @@ public InvoiceCreatePreviewParams.ScheduleDetails.Phase build() { this.defaultTaxRates, this.description, this.discounts, + this.duration, this.endDate, this.extraParams, this.invoiceSettings, @@ -8520,6 +8538,15 @@ public Builder setDiscounts( return this; } + /** + * The number of intervals the phase should last. If set, {@code end_date} must not be set. + */ + public Builder setDuration( + InvoiceCreatePreviewParams.ScheduleDetails.Phase.Duration duration) { + this.duration = duration; + return this; + } + /** * The date at which this phase of the subscription schedule ends. If set, {@code * iterations} must not be set. @@ -8605,7 +8632,8 @@ public Builder addAllItem( * Integer representing the multiplier applied to the price interval. For example, {@code * iterations=2} applied to a price with {@code interval=month} and {@code interval_count=3} * results in a phase of duration {@code 2 * 3 months = 6 months}. If set, {@code end_date} - * must not be set. + * must not be set. This parameter is deprecated and will be removed in a future version. + * Use {@code duration} instead. */ public Builder setIterations(Long iterations) { this.iterations = iterations; @@ -10234,6 +10262,120 @@ public enum Type implements ApiRequestParams.EnumParam { } } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Duration { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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. Specifies phase duration. Either {@code day}, {@code week}, + * {@code month} or {@code year}. + */ + @SerializedName("interval") + Interval interval; + + /** The multiplier applied to the interval. */ + @SerializedName("interval_count") + Long intervalCount; + + private Duration(Map extraParams, Interval interval, Long intervalCount) { + this.extraParams = extraParams; + this.interval = interval; + this.intervalCount = intervalCount; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Interval interval; + + private Long intervalCount; + + /** Finalize and obtain parameter instance from this builder. */ + public InvoiceCreatePreviewParams.ScheduleDetails.Phase.Duration build() { + return new InvoiceCreatePreviewParams.ScheduleDetails.Phase.Duration( + this.extraParams, this.interval, this.intervalCount); + } + + /** + * Add a key/value pair to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link InvoiceCreatePreviewParams.ScheduleDetails.Phase.Duration#extraParams} + * for the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link InvoiceCreatePreviewParams.ScheduleDetails.Phase.Duration#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. Specifies phase duration. Either {@code day}, {@code week}, + * {@code month} or {@code year}. + */ + public Builder setInterval( + InvoiceCreatePreviewParams.ScheduleDetails.Phase.Duration.Interval interval) { + this.interval = interval; + return this; + } + + /** The multiplier applied to the interval. */ + public Builder setIntervalCount(Long intervalCount) { + this.intervalCount = intervalCount; + return this; + } + } + + public enum Interval implements ApiRequestParams.EnumParam { + @SerializedName("day") + DAY("day"), + + @SerializedName("month") + MONTH("month"), + + @SerializedName("week") + WEEK("week"), + + @SerializedName("year") + YEAR("year"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + Interval(String value) { + this.value = value; + } + } + } + @Getter @EqualsAndHashCode(callSuper = false) public static class InvoiceSettings { @@ -13241,7 +13383,10 @@ public static class BillingMode { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** Required. */ + /** + * Required. Controls the calculation and orchestration of prorations and + * invoices for subscriptions. + */ @SerializedName("type") Type type; @@ -13293,7 +13438,10 @@ public Builder putAllExtraParam(Map map) { return this; } - /** Required. */ + /** + * Required. Controls the calculation and orchestration of prorations and + * invoices for subscriptions. + */ public Builder setType( InvoiceCreatePreviewParams.SubscriptionDetails.BillingMode.Type type) { this.type = type; diff --git a/src/main/java/com/stripe/param/InvoiceItemCreateParams.java b/src/main/java/com/stripe/param/InvoiceItemCreateParams.java index 2135e8f81e0..2896bc7a53e 100644 --- a/src/main/java/com/stripe/param/InvoiceItemCreateParams.java +++ b/src/main/java/com/stripe/param/InvoiceItemCreateParams.java @@ -73,10 +73,12 @@ public class InvoiceItemCreateParams extends ApiRequestParams { Map extraParams; /** - * The ID of an existing invoice to add this invoice item to. When left blank, the invoice item - * will be added to the next upcoming scheduled invoice. This is useful when adding invoice items - * in response to an invoice.created webhook. You can only add invoice items to draft invoices and - * there is a maximum of 250 items per invoice. + * The ID of an existing invoice to add this invoice item to. For subscription invoices, when left + * blank, the invoice item will be added to the next upcoming scheduled invoice. For standalone + * invoices, the invoice item won't be automatically added unless you pass {@code + * pending_invoice_item_behavior: 'include'} when creating the invoice. This is useful when adding + * invoice items in response to an invoice.created webhook. You can only add invoice items to + * draft invoices and there is a maximum of 250 items per invoice. */ @SerializedName("invoice") String invoice; @@ -430,10 +432,12 @@ public Builder putAllExtraParam(Map map) { } /** - * The ID of an existing invoice to add this invoice item to. When left blank, the invoice item - * will be added to the next upcoming scheduled invoice. This is useful when adding invoice - * items in response to an invoice.created webhook. You can only add invoice items to draft - * invoices and there is a maximum of 250 items per invoice. + * The ID of an existing invoice to add this invoice item to. For subscription invoices, when + * left blank, the invoice item will be added to the next upcoming scheduled invoice. For + * standalone invoices, the invoice item won't be automatically added unless you pass {@code + * pending_invoice_item_behavior: 'include'} when creating the invoice. This is useful when + * adding invoice items in response to an invoice.created webhook. You can only add invoice + * items to draft invoices and there is a maximum of 250 items per invoice. */ public Builder setInvoice(String invoice) { this.invoice = invoice; diff --git a/src/main/java/com/stripe/param/InvoiceUpdateParams.java b/src/main/java/com/stripe/param/InvoiceUpdateParams.java index dc77d7ba1d4..576c6c20c3f 100644 --- a/src/main/java/com/stripe/param/InvoiceUpdateParams.java +++ b/src/main/java/com/stripe/param/InvoiceUpdateParams.java @@ -48,9 +48,9 @@ public class InvoiceUpdateParams extends ApiRequestParams { AutomaticTax automaticTax; /** - * The time when this invoice should be scheduled to finalize. The invoice will be finalized at - * this time if it is still in draft state. To turn off automatic finalization, set {@code - * auto_advance} to false. + * The time when this invoice should be scheduled to finalize (up to 5 years in the future). The + * invoice is finalized at this time if it's still in draft state. To turn off automatic + * finalization, set {@code auto_advance} to false. */ @SerializedName("automatically_finalizes_at") Long automaticallyFinalizesAt; @@ -512,9 +512,9 @@ public Builder setAutomaticTax(InvoiceUpdateParams.AutomaticTax automaticTax) { } /** - * The time when this invoice should be scheduled to finalize. The invoice will be finalized at - * this time if it is still in draft state. To turn off automatic finalization, set {@code - * auto_advance} to false. + * The time when this invoice should be scheduled to finalize (up to 5 years in the future). The + * invoice is finalized at this time if it's still in draft state. To turn off automatic + * finalization, set {@code auto_advance} to false. */ public Builder setAutomaticallyFinalizesAt(Long automaticallyFinalizesAt) { this.automaticallyFinalizesAt = automaticallyFinalizesAt; @@ -2231,6 +2231,13 @@ public static class PaymentMethodOptions { @SerializedName("sepa_debit") Object sepaDebit; + /** + * If paying by {@code upi}, this sub-hash contains details about the UPI payment method + * options to pass to the invoice’s PaymentIntent. + */ + @SerializedName("upi") + Object upi; + /** * If paying by {@code us_bank_account}, this sub-hash contains details about the ACH direct * debit payment method options to pass to the invoice’s PaymentIntent. @@ -2247,6 +2254,7 @@ private PaymentMethodOptions( Object idBankTransfer, Object konbini, Object sepaDebit, + Object upi, Object usBankAccount) { this.acssDebit = acssDebit; this.bancontact = bancontact; @@ -2256,6 +2264,7 @@ private PaymentMethodOptions( this.idBankTransfer = idBankTransfer; this.konbini = konbini; this.sepaDebit = sepaDebit; + this.upi = upi; this.usBankAccount = usBankAccount; } @@ -2280,6 +2289,8 @@ public static class Builder { private Object sepaDebit; + private Object upi; + private Object usBankAccount; /** Finalize and obtain parameter instance from this builder. */ @@ -2293,6 +2304,7 @@ public InvoiceUpdateParams.PaymentSettings.PaymentMethodOptions build() { this.idBankTransfer, this.konbini, this.sepaDebit, + this.upi, this.usBankAccount); } @@ -2458,6 +2470,24 @@ public Builder setSepaDebit(EmptyParam sepaDebit) { return this; } + /** + * If paying by {@code upi}, this sub-hash contains details about the UPI payment method + * options to pass to the invoice’s PaymentIntent. + */ + public Builder setUpi(InvoiceUpdateParams.PaymentSettings.PaymentMethodOptions.Upi upi) { + this.upi = upi; + return this; + } + + /** + * If paying by {@code upi}, this sub-hash contains details about the UPI payment method + * options to pass to the invoice’s PaymentIntent. + */ + public Builder setUpi(EmptyParam upi) { + this.upi = upi; + return this; + } + /** * If paying by {@code us_bank_account}, this sub-hash contains details about the ACH direct * debit payment method options to pass to the invoice’s PaymentIntent. @@ -2803,7 +2833,7 @@ public static class Card { Map extraParams; /** - * Installment configuration for payments attempted on this invoice (Mexico Only). + * Installment configuration for payments attempted on this invoice. * *

For more information, see the installments integration guide. @@ -2881,7 +2911,7 @@ public Builder putAllExtraParam(Map map) { } /** - * Installment configuration for payments attempted on this invoice (Mexico Only). + * Installment configuration for payments attempted on this invoice. * *

For more information, see the installments integration @@ -3698,6 +3728,251 @@ public Builder putAllExtraParam(Map map) { } } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Upi { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-level field + * (serialized) name in this param object. Effectively, this map is flattened to its parent + * instance. + */ + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** Configuration options for setting up an eMandate. */ + @SerializedName("mandate_options") + MandateOptions mandateOptions; + + private Upi(Map extraParams, MandateOptions mandateOptions) { + this.extraParams = extraParams; + this.mandateOptions = mandateOptions; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private MandateOptions mandateOptions; + + /** Finalize and obtain parameter instance from this builder. */ + public InvoiceUpdateParams.PaymentSettings.PaymentMethodOptions.Upi build() { + return new InvoiceUpdateParams.PaymentSettings.PaymentMethodOptions.Upi( + this.extraParams, this.mandateOptions); + } + + /** + * Add a key/value pair to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link + * InvoiceUpdateParams.PaymentSettings.PaymentMethodOptions.Upi#extraParams} for the field + * documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link + * InvoiceUpdateParams.PaymentSettings.PaymentMethodOptions.Upi#extraParams} for the field + * documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Configuration options for setting up an eMandate. */ + public Builder setMandateOptions( + InvoiceUpdateParams.PaymentSettings.PaymentMethodOptions.Upi.MandateOptions + mandateOptions) { + this.mandateOptions = mandateOptions; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class MandateOptions { + /** Amount to be charged for future payments. */ + @SerializedName("amount") + Long amount; + + /** + * One of {@code fixed} or {@code maximum}. If {@code fixed}, the {@code amount} param + * refers to the exact amount to be charged in future payments. If {@code maximum}, the + * amount charged can be up to the value passed for the {@code amount} param. + */ + @SerializedName("amount_type") + AmountType amountType; + + /** + * A description of the mandate or subscription that is meant to be displayed to the + * customer. + */ + @SerializedName("description") + Object description; + + /** + * End date of the mandate or subscription. If not provided, the mandate will be active + * until canceled. If provided, end date should be after start date. + */ + @SerializedName("end_date") + Long endDate; + + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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 MandateOptions( + Long amount, + AmountType amountType, + Object description, + Long endDate, + Map extraParams) { + this.amount = amount; + this.amountType = amountType; + this.description = description; + this.endDate = endDate; + this.extraParams = extraParams; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Long amount; + + private AmountType amountType; + + private Object description; + + private Long endDate; + + private Map extraParams; + + /** Finalize and obtain parameter instance from this builder. */ + public InvoiceUpdateParams.PaymentSettings.PaymentMethodOptions.Upi.MandateOptions + build() { + return new InvoiceUpdateParams.PaymentSettings.PaymentMethodOptions.Upi + .MandateOptions( + this.amount, this.amountType, this.description, this.endDate, this.extraParams); + } + + /** Amount to be charged for future payments. */ + public Builder setAmount(Long amount) { + this.amount = amount; + return this; + } + + /** + * One of {@code fixed} or {@code maximum}. If {@code fixed}, the {@code amount} param + * refers to the exact amount to be charged in future payments. If {@code maximum}, the + * amount charged can be up to the value passed for the {@code amount} param. + */ + public Builder setAmountType( + InvoiceUpdateParams.PaymentSettings.PaymentMethodOptions.Upi.MandateOptions + .AmountType + amountType) { + this.amountType = amountType; + return this; + } + + /** + * A description of the mandate or subscription that is meant to be displayed to the + * customer. + */ + public Builder setDescription(String description) { + this.description = description; + return this; + } + + /** + * A description of the mandate or subscription that is meant to be displayed to the + * customer. + */ + public Builder setDescription(EmptyParam description) { + this.description = description; + return this; + } + + /** + * End date of the mandate or subscription. If not provided, the mandate will be active + * until canceled. If provided, end date should be after start date. + */ + public Builder setEndDate(Long endDate) { + this.endDate = endDate; + 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 + * InvoiceUpdateParams.PaymentSettings.PaymentMethodOptions.Upi.MandateOptions#extraParams} + * for the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the + * original map. See {@link + * InvoiceUpdateParams.PaymentSettings.PaymentMethodOptions.Upi.MandateOptions#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 AmountType implements ApiRequestParams.EnumParam { + @SerializedName("fixed") + FIXED("fixed"), + + @SerializedName("maximum") + MAXIMUM("maximum"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + AmountType(String value) { + this.value = value; + } + } + } + } + @Getter @EqualsAndHashCode(callSuper = false) public static class UsBankAccount { @@ -4334,6 +4609,9 @@ public enum PaymentMethodType implements ApiRequestParams.EnumParam { @SerializedName("swish") SWISH("swish"), + @SerializedName("upi") + UPI("upi"), + @SerializedName("us_bank_account") US_BANK_ACCOUNT("us_bank_account"), diff --git a/src/main/java/com/stripe/param/PaymentIntentCaptureParams.java b/src/main/java/com/stripe/param/PaymentIntentCaptureParams.java index 93055425e49..fe6fd0af3d4 100644 --- a/src/main/java/com/stripe/param/PaymentIntentCaptureParams.java +++ b/src/main/java/com/stripe/param/PaymentIntentCaptureParams.java @@ -14,6 +14,10 @@ @Getter @EqualsAndHashCode(callSuper = false) public class PaymentIntentCaptureParams extends ApiRequestParams { + /** Provides industry-specific information about the amount. */ + @SerializedName("amount_details") + AmountDetails amountDetails; + /** * The amount to capture from the PaymentIntent, which must be less than or equal to the original * amount. Defaults to the full {@code amount_capturable} if it's not provided. @@ -103,6 +107,7 @@ public class PaymentIntentCaptureParams extends ApiRequestParams { TransferData transferData; private PaymentIntentCaptureParams( + AmountDetails amountDetails, Long amountToCapture, Long applicationFeeAmount, List expand, @@ -114,6 +119,7 @@ private PaymentIntentCaptureParams( String statementDescriptor, String statementDescriptorSuffix, TransferData transferData) { + this.amountDetails = amountDetails; this.amountToCapture = amountToCapture; this.applicationFeeAmount = applicationFeeAmount; this.expand = expand; @@ -132,6 +138,8 @@ public static Builder builder() { } public static class Builder { + private AmountDetails amountDetails; + private Long amountToCapture; private Long applicationFeeAmount; @@ -157,6 +165,7 @@ public static class Builder { /** Finalize and obtain parameter instance from this builder. */ public PaymentIntentCaptureParams build() { return new PaymentIntentCaptureParams( + this.amountDetails, this.amountToCapture, this.applicationFeeAmount, this.expand, @@ -170,6 +179,12 @@ public PaymentIntentCaptureParams build() { this.transferData); } + /** Provides industry-specific information about the amount. */ + public Builder setAmountDetails(PaymentIntentCaptureParams.AmountDetails amountDetails) { + this.amountDetails = amountDetails; + return this; + } + /** * The amount to capture from the PaymentIntent, which must be less than or equal to the * original amount. Defaults to the full {@code amount_capturable} if it's not provided. @@ -362,6 +377,1180 @@ public Builder setTransferData(PaymentIntentCaptureParams.TransferData transferD } } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class AmountDetails { + /** The amount an item was discounted for. */ + @SerializedName("discount_amount") + Object discountAmount; + + /** + * Map of extra parameters for custom features not available in this client library. The content + * in this map is not serialized under this field's {@code @SerializedName} value. Instead, each + * key/value pair is serialized as if the key is a root-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 list of line items, each containing information about a product in the PaymentIntent. There + * is a maximum of 100 line items. + */ + @SerializedName("line_items") + Object lineItems; + + /** Contains information about the shipping portion of the amount. */ + @SerializedName("shipping") + Object shipping; + + /** Contains information about the tax portion of the amount. */ + @SerializedName("tax") + Object tax; + + private AmountDetails( + Object discountAmount, + Map extraParams, + Object lineItems, + Object shipping, + Object tax) { + this.discountAmount = discountAmount; + this.extraParams = extraParams; + this.lineItems = lineItems; + this.shipping = shipping; + this.tax = tax; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Object discountAmount; + + private Map extraParams; + + private Object lineItems; + + private Object shipping; + + private Object tax; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentCaptureParams.AmountDetails build() { + return new PaymentIntentCaptureParams.AmountDetails( + this.discountAmount, this.extraParams, this.lineItems, this.shipping, this.tax); + } + + /** The amount an item was discounted for. */ + public Builder setDiscountAmount(Long discountAmount) { + this.discountAmount = discountAmount; + return this; + } + + /** The amount an item was discounted for. */ + public Builder setDiscountAmount(EmptyParam discountAmount) { + this.discountAmount = discountAmount; + 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 + * PaymentIntentCaptureParams.AmountDetails#extraParams} for the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original map. + * See {@link PaymentIntentCaptureParams.AmountDetails#extraParams} for the field + * documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** + * Add an element to `lineItems` list. A list is initialized for the first `add/addAll` call, + * and subsequent calls adds additional elements to the original list. See {@link + * PaymentIntentCaptureParams.AmountDetails#lineItems} for the field documentation. + */ + @SuppressWarnings("unchecked") + public Builder addLineItem(PaymentIntentCaptureParams.AmountDetails.LineItem element) { + if (this.lineItems == null || this.lineItems instanceof EmptyParam) { + this.lineItems = new ArrayList(); + } + ((List) this.lineItems).add(element); + return this; + } + + /** + * Add all elements 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 + * PaymentIntentCaptureParams.AmountDetails#lineItems} for the field documentation. + */ + @SuppressWarnings("unchecked") + public Builder addAllLineItem( + List elements) { + if (this.lineItems == null || this.lineItems instanceof EmptyParam) { + this.lineItems = new ArrayList(); + } + ((List) this.lineItems).addAll(elements); + return this; + } + + /** + * A list of line items, each containing information about a product in the PaymentIntent. + * There is a maximum of 100 line items. + */ + public Builder setLineItems(EmptyParam lineItems) { + this.lineItems = lineItems; + return this; + } + + /** + * A list of line items, each containing information about a product in the PaymentIntent. + * There is a maximum of 100 line items. + */ + public Builder setLineItems( + List lineItems) { + this.lineItems = lineItems; + return this; + } + + /** Contains information about the shipping portion of the amount. */ + public Builder setShipping(PaymentIntentCaptureParams.AmountDetails.Shipping shipping) { + this.shipping = shipping; + return this; + } + + /** Contains information about the shipping portion of the amount. */ + public Builder setShipping(EmptyParam shipping) { + this.shipping = shipping; + return this; + } + + /** Contains information about the tax portion of the amount. */ + public Builder setTax(PaymentIntentCaptureParams.AmountDetails.Tax tax) { + this.tax = tax; + return this; + } + + /** Contains information about the tax portion of the amount. */ + public Builder setTax(EmptyParam tax) { + this.tax = tax; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class LineItem { + /** The amount an item was discounted for. Positive integer. */ + @SerializedName("discount_amount") + Long discountAmount; + + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-level field (serialized) + * name in this param object. Effectively, this map is flattened to its parent instance. + */ + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** Payment method-specific information for line items. */ + @SerializedName("payment_method_options") + PaymentMethodOptions paymentMethodOptions; + + /** Unique identifier of the product. At most 12 characters long. */ + @SerializedName("product_code") + String productCode; + + /** Required. Name of the product. At most 100 characters long. */ + @SerializedName("product_name") + String productName; + + /** Required. Number of items of the product. Positive integer. */ + @SerializedName("quantity") + Long quantity; + + /** Contains information about the tax on the item. */ + @SerializedName("tax") + Tax tax; + + /** Required. Cost of the product. Non-negative integer. */ + @SerializedName("unit_cost") + Long unitCost; + + /** A unit of measure for the line item, such as gallons, feet, meters, etc. */ + @SerializedName("unit_of_measure") + String unitOfMeasure; + + private LineItem( + Long discountAmount, + Map extraParams, + PaymentMethodOptions paymentMethodOptions, + String productCode, + String productName, + Long quantity, + Tax tax, + Long unitCost, + String unitOfMeasure) { + this.discountAmount = discountAmount; + this.extraParams = extraParams; + this.paymentMethodOptions = paymentMethodOptions; + this.productCode = productCode; + this.productName = productName; + this.quantity = quantity; + this.tax = tax; + this.unitCost = unitCost; + this.unitOfMeasure = unitOfMeasure; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Long discountAmount; + + private Map extraParams; + + private PaymentMethodOptions paymentMethodOptions; + + private String productCode; + + private String productName; + + private Long quantity; + + private Tax tax; + + private Long unitCost; + + private String unitOfMeasure; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentCaptureParams.AmountDetails.LineItem build() { + return new PaymentIntentCaptureParams.AmountDetails.LineItem( + this.discountAmount, + this.extraParams, + this.paymentMethodOptions, + this.productCode, + this.productName, + this.quantity, + this.tax, + this.unitCost, + this.unitOfMeasure); + } + + /** The amount an item was discounted for. Positive integer. */ + public Builder setDiscountAmount(Long discountAmount) { + this.discountAmount = discountAmount; + 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 PaymentIntentCaptureParams.AmountDetails.LineItem#extraParams} for the + * field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link PaymentIntentCaptureParams.AmountDetails.LineItem#extraParams} for the + * field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Payment method-specific information for line items. */ + public Builder setPaymentMethodOptions( + PaymentIntentCaptureParams.AmountDetails.LineItem.PaymentMethodOptions + paymentMethodOptions) { + this.paymentMethodOptions = paymentMethodOptions; + return this; + } + + /** Unique identifier of the product. At most 12 characters long. */ + public Builder setProductCode(String productCode) { + this.productCode = productCode; + return this; + } + + /** Required. Name of the product. At most 100 characters long. */ + public Builder setProductName(String productName) { + this.productName = productName; + return this; + } + + /** Required. Number of items of the product. Positive integer. */ + public Builder setQuantity(Long quantity) { + this.quantity = quantity; + return this; + } + + /** Contains information about the tax on the item. */ + public Builder setTax(PaymentIntentCaptureParams.AmountDetails.LineItem.Tax tax) { + this.tax = tax; + return this; + } + + /** Required. Cost of the product. Non-negative integer. */ + public Builder setUnitCost(Long unitCost) { + this.unitCost = unitCost; + return this; + } + + /** A unit of measure for the line item, such as gallons, feet, meters, etc. */ + public Builder setUnitOfMeasure(String unitOfMeasure) { + this.unitOfMeasure = unitOfMeasure; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PaymentMethodOptions { + /** + * This sub-hash contains line item details that are specific to {@code card} payment + * method.". + */ + @SerializedName("card") + Card card; + + /** + * This sub-hash contains line item details that are specific to {@code card_present} + * payment method.". + */ + @SerializedName("card_present") + CardPresent cardPresent; + + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-level field + * (serialized) name in this param object. Effectively, this map is flattened to its parent + * instance. + */ + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** + * This sub-hash contains line item details that are specific to {@code klarna} payment + * method.". + */ + @SerializedName("klarna") + Klarna klarna; + + /** + * This sub-hash contains line item details that are specific to {@code paypal} payment + * method.". + */ + @SerializedName("paypal") + Paypal paypal; + + private PaymentMethodOptions( + Card card, + CardPresent cardPresent, + Map extraParams, + Klarna klarna, + Paypal paypal) { + this.card = card; + this.cardPresent = cardPresent; + this.extraParams = extraParams; + this.klarna = klarna; + this.paypal = paypal; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Card card; + + private CardPresent cardPresent; + + private Map extraParams; + + private Klarna klarna; + + private Paypal paypal; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentCaptureParams.AmountDetails.LineItem.PaymentMethodOptions build() { + return new PaymentIntentCaptureParams.AmountDetails.LineItem.PaymentMethodOptions( + this.card, this.cardPresent, this.extraParams, this.klarna, this.paypal); + } + + /** + * This sub-hash contains line item details that are specific to {@code card} payment + * method.". + */ + public Builder setCard( + PaymentIntentCaptureParams.AmountDetails.LineItem.PaymentMethodOptions.Card card) { + this.card = card; + return this; + } + + /** + * This sub-hash contains line item details that are specific to {@code card_present} + * payment method.". + */ + public Builder setCardPresent( + PaymentIntentCaptureParams.AmountDetails.LineItem.PaymentMethodOptions.CardPresent + cardPresent) { + this.cardPresent = cardPresent; + 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 + * PaymentIntentCaptureParams.AmountDetails.LineItem.PaymentMethodOptions#extraParams} for + * the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link + * PaymentIntentCaptureParams.AmountDetails.LineItem.PaymentMethodOptions#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 sub-hash contains line item details that are specific to {@code klarna} payment + * method.". + */ + public Builder setKlarna( + PaymentIntentCaptureParams.AmountDetails.LineItem.PaymentMethodOptions.Klarna + klarna) { + this.klarna = klarna; + return this; + } + + /** + * This sub-hash contains line item details that are specific to {@code paypal} payment + * method.". + */ + public Builder setPaypal( + PaymentIntentCaptureParams.AmountDetails.LineItem.PaymentMethodOptions.Paypal + paypal) { + this.paypal = paypal; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Card { + /** + * Identifier that categorizes the items being purchased using a standardized commodity + * scheme such as (but not limited to) UNSPSC, NAICS, NAPCS, etc. + */ + @SerializedName("commodity_code") + String commodityCode; + + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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(String commodityCode, Map extraParams) { + this.commodityCode = commodityCode; + this.extraParams = extraParams; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private String commodityCode; + + private Map extraParams; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentCaptureParams.AmountDetails.LineItem.PaymentMethodOptions.Card + build() { + return new PaymentIntentCaptureParams.AmountDetails.LineItem.PaymentMethodOptions + .Card(this.commodityCode, this.extraParams); + } + + /** + * Identifier that categorizes the items being purchased using a standardized commodity + * scheme such as (but not limited to) UNSPSC, NAICS, NAPCS, etc. + */ + public Builder setCommodityCode(String commodityCode) { + this.commodityCode = commodityCode; + 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 + * PaymentIntentCaptureParams.AmountDetails.LineItem.PaymentMethodOptions.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 + * PaymentIntentCaptureParams.AmountDetails.LineItem.PaymentMethodOptions.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 CardPresent { + /** + * Identifier that categorizes the items being purchased using a standardized commodity + * scheme such as (but not limited to) UNSPSC, NAICS, NAPCS, etc. + */ + @SerializedName("commodity_code") + String commodityCode; + + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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 CardPresent(String commodityCode, Map extraParams) { + this.commodityCode = commodityCode; + this.extraParams = extraParams; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private String commodityCode; + + private Map extraParams; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentCaptureParams.AmountDetails.LineItem.PaymentMethodOptions + .CardPresent + build() { + return new PaymentIntentCaptureParams.AmountDetails.LineItem.PaymentMethodOptions + .CardPresent(this.commodityCode, this.extraParams); + } + + /** + * Identifier that categorizes the items being purchased using a standardized commodity + * scheme such as (but not limited to) UNSPSC, NAICS, NAPCS, etc. + */ + public Builder setCommodityCode(String commodityCode) { + this.commodityCode = commodityCode; + 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 + * PaymentIntentCaptureParams.AmountDetails.LineItem.PaymentMethodOptions.CardPresent#extraParams} + * for the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the + * original map. See {@link + * PaymentIntentCaptureParams.AmountDetails.LineItem.PaymentMethodOptions.CardPresent#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 Klarna { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-level field + * (serialized) name in this param object. Effectively, this map is flattened to its + * parent instance. + */ + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** URL to an image for the product. Max length, 4096 characters. */ + @SerializedName("image_url") + String imageUrl; + + /** URL to the product page. Max length, 4096 characters. */ + @SerializedName("product_url") + String productUrl; + + /** Reference for the subscription this line item is for. */ + @SerializedName("subscription_reference") + String subscriptionReference; + + private Klarna( + Map extraParams, + String imageUrl, + String productUrl, + String subscriptionReference) { + this.extraParams = extraParams; + this.imageUrl = imageUrl; + this.productUrl = productUrl; + this.subscriptionReference = subscriptionReference; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private String imageUrl; + + private String productUrl; + + private String subscriptionReference; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentCaptureParams.AmountDetails.LineItem.PaymentMethodOptions.Klarna + build() { + return new PaymentIntentCaptureParams.AmountDetails.LineItem.PaymentMethodOptions + .Klarna( + this.extraParams, this.imageUrl, this.productUrl, this.subscriptionReference); + } + + /** + * Add a key/value pair to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the + * original map. See {@link + * PaymentIntentCaptureParams.AmountDetails.LineItem.PaymentMethodOptions.Klarna#extraParams} + * for the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the + * original map. See {@link + * PaymentIntentCaptureParams.AmountDetails.LineItem.PaymentMethodOptions.Klarna#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** URL to an image for the product. Max length, 4096 characters. */ + public Builder setImageUrl(String imageUrl) { + this.imageUrl = imageUrl; + return this; + } + + /** URL to the product page. Max length, 4096 characters. */ + public Builder setProductUrl(String productUrl) { + this.productUrl = productUrl; + return this; + } + + /** Reference for the subscription this line item is for. */ + public Builder setSubscriptionReference(String subscriptionReference) { + this.subscriptionReference = subscriptionReference; + return this; + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Paypal { + /** Type of the line item. */ + @SerializedName("category") + Category category; + + /** Description of the line item. */ + @SerializedName("description") + String description; + + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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 Stripe account ID of the connected account that sells the item. */ + @SerializedName("sold_by") + String soldBy; + + private Paypal( + Category category, + String description, + Map extraParams, + String soldBy) { + this.category = category; + this.description = description; + this.extraParams = extraParams; + this.soldBy = soldBy; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Category category; + + private String description; + + private Map extraParams; + + private String soldBy; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentCaptureParams.AmountDetails.LineItem.PaymentMethodOptions.Paypal + build() { + return new PaymentIntentCaptureParams.AmountDetails.LineItem.PaymentMethodOptions + .Paypal(this.category, this.description, this.extraParams, this.soldBy); + } + + /** Type of the line item. */ + public Builder setCategory( + PaymentIntentCaptureParams.AmountDetails.LineItem.PaymentMethodOptions.Paypal + .Category + category) { + this.category = category; + return this; + } + + /** Description of the line item. */ + public Builder setDescription(String description) { + this.description = description; + 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 + * PaymentIntentCaptureParams.AmountDetails.LineItem.PaymentMethodOptions.Paypal#extraParams} + * for the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the + * original map. See {@link + * PaymentIntentCaptureParams.AmountDetails.LineItem.PaymentMethodOptions.Paypal#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 Stripe account ID of the connected account that sells the item. */ + public Builder setSoldBy(String soldBy) { + this.soldBy = soldBy; + return this; + } + } + + public enum Category implements ApiRequestParams.EnumParam { + @SerializedName("digital_goods") + DIGITAL_GOODS("digital_goods"), + + @SerializedName("donation") + DONATION("donation"), + + @SerializedName("physical_goods") + PHYSICAL_GOODS("physical_goods"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + Category(String value) { + this.value = value; + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Tax { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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 total tax on an item. Non-negative integer. */ + @SerializedName("total_tax_amount") + Long totalTaxAmount; + + private Tax(Map extraParams, Long totalTaxAmount) { + this.extraParams = extraParams; + this.totalTaxAmount = totalTaxAmount; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Long totalTaxAmount; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentCaptureParams.AmountDetails.LineItem.Tax build() { + return new PaymentIntentCaptureParams.AmountDetails.LineItem.Tax( + this.extraParams, this.totalTaxAmount); + } + + /** + * Add a key/value pair to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link PaymentIntentCaptureParams.AmountDetails.LineItem.Tax#extraParams} for + * the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link PaymentIntentCaptureParams.AmountDetails.LineItem.Tax#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 total tax on an item. Non-negative integer. */ + public Builder setTotalTaxAmount(Long totalTaxAmount) { + this.totalTaxAmount = totalTaxAmount; + return this; + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Shipping { + /** Portion of the amount that is for shipping. */ + @SerializedName("amount") + Object amount; + + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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 postal code that represents the shipping source. */ + @SerializedName("from_postal_code") + Object fromPostalCode; + + /** The postal code that represents the shipping destination. */ + @SerializedName("to_postal_code") + Object toPostalCode; + + private Shipping( + Object amount, + Map extraParams, + Object fromPostalCode, + Object toPostalCode) { + this.amount = amount; + this.extraParams = extraParams; + this.fromPostalCode = fromPostalCode; + this.toPostalCode = toPostalCode; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Object amount; + + private Map extraParams; + + private Object fromPostalCode; + + private Object toPostalCode; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentCaptureParams.AmountDetails.Shipping build() { + return new PaymentIntentCaptureParams.AmountDetails.Shipping( + this.amount, this.extraParams, this.fromPostalCode, this.toPostalCode); + } + + /** Portion of the amount that is for shipping. */ + public Builder setAmount(Long amount) { + this.amount = amount; + return this; + } + + /** Portion of the amount that is for shipping. */ + public Builder setAmount(EmptyParam amount) { + this.amount = amount; + 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 PaymentIntentCaptureParams.AmountDetails.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 PaymentIntentCaptureParams.AmountDetails.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; + } + + /** The postal code that represents the shipping source. */ + public Builder setFromPostalCode(String fromPostalCode) { + this.fromPostalCode = fromPostalCode; + return this; + } + + /** The postal code that represents the shipping source. */ + public Builder setFromPostalCode(EmptyParam fromPostalCode) { + this.fromPostalCode = fromPostalCode; + return this; + } + + /** The postal code that represents the shipping destination. */ + public Builder setToPostalCode(String toPostalCode) { + this.toPostalCode = toPostalCode; + return this; + } + + /** The postal code that represents the shipping destination. */ + public Builder setToPostalCode(EmptyParam toPostalCode) { + this.toPostalCode = toPostalCode; + return this; + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Tax { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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. Total portion of the amount that is for tax. */ + @SerializedName("total_tax_amount") + Long totalTaxAmount; + + private Tax(Map extraParams, Long totalTaxAmount) { + this.extraParams = extraParams; + this.totalTaxAmount = totalTaxAmount; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Long totalTaxAmount; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentCaptureParams.AmountDetails.Tax build() { + return new PaymentIntentCaptureParams.AmountDetails.Tax( + this.extraParams, this.totalTaxAmount); + } + + /** + * Add a key/value pair to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link PaymentIntentCaptureParams.AmountDetails.Tax#extraParams} for the field + * documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link PaymentIntentCaptureParams.AmountDetails.Tax#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. Total portion of the amount that is for tax. */ + public Builder setTotalTaxAmount(Long totalTaxAmount) { + this.totalTaxAmount = totalTaxAmount; + return this; + } + } + } + } + @Getter @EqualsAndHashCode(callSuper = false) public static class Hooks { diff --git a/src/main/java/com/stripe/param/PaymentIntentConfirmParams.java b/src/main/java/com/stripe/param/PaymentIntentConfirmParams.java index 47692d0ff6e..e51ff7ca5fb 100644 --- a/src/main/java/com/stripe/param/PaymentIntentConfirmParams.java +++ b/src/main/java/com/stripe/param/PaymentIntentConfirmParams.java @@ -14,6 +14,10 @@ @Getter @EqualsAndHashCode(callSuper = false) public class PaymentIntentConfirmParams extends ApiRequestParams { + /** Provides industry-specific information about the amount. */ + @SerializedName("amount_details") + Object amountDetails; + /** * The amount of the application fee (if any) that will be requested to be applied to the payment * and transferred to the application owner's Stripe account. The amount of the application fee @@ -186,6 +190,7 @@ public class PaymentIntentConfirmParams extends ApiRequestParams { Boolean useStripeSdk; private PaymentIntentConfirmParams( + Object amountDetails, Object applicationFeeAmount, CaptureMethod captureMethod, String confirmationToken, @@ -208,6 +213,7 @@ private PaymentIntentConfirmParams( ApiRequestParams.EnumParam setupFutureUsage, Object shipping, Boolean useStripeSdk) { + this.amountDetails = amountDetails; this.applicationFeeAmount = applicationFeeAmount; this.captureMethod = captureMethod; this.confirmationToken = confirmationToken; @@ -237,6 +243,8 @@ public static Builder builder() { } public static class Builder { + private Object amountDetails; + private Object applicationFeeAmount; private CaptureMethod captureMethod; @@ -284,6 +292,7 @@ public static class Builder { /** Finalize and obtain parameter instance from this builder. */ public PaymentIntentConfirmParams build() { return new PaymentIntentConfirmParams( + this.amountDetails, this.applicationFeeAmount, this.captureMethod, this.confirmationToken, @@ -308,6 +317,18 @@ public PaymentIntentConfirmParams build() { this.useStripeSdk); } + /** Provides industry-specific information about the amount. */ + public Builder setAmountDetails(PaymentIntentConfirmParams.AmountDetails amountDetails) { + this.amountDetails = amountDetails; + return this; + } + + /** Provides industry-specific information about the amount. */ + public Builder setAmountDetails(EmptyParam amountDetails) { + this.amountDetails = amountDetails; + return this; + } + /** * The amount of the application fee (if any) that will be requested to be applied to the * payment and transferred to the application owner's Stripe account. The amount of the @@ -656,6 +677,1180 @@ public Builder setUseStripeSdk(Boolean useStripeSdk) { } } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class AmountDetails { + /** The amount an item was discounted for. */ + @SerializedName("discount_amount") + Object discountAmount; + + /** + * Map of extra parameters for custom features not available in this client library. The content + * in this map is not serialized under this field's {@code @SerializedName} value. Instead, each + * key/value pair is serialized as if the key is a root-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 list of line items, each containing information about a product in the PaymentIntent. There + * is a maximum of 100 line items. + */ + @SerializedName("line_items") + Object lineItems; + + /** Contains information about the shipping portion of the amount. */ + @SerializedName("shipping") + Object shipping; + + /** Contains information about the tax portion of the amount. */ + @SerializedName("tax") + Object tax; + + private AmountDetails( + Object discountAmount, + Map extraParams, + Object lineItems, + Object shipping, + Object tax) { + this.discountAmount = discountAmount; + this.extraParams = extraParams; + this.lineItems = lineItems; + this.shipping = shipping; + this.tax = tax; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Object discountAmount; + + private Map extraParams; + + private Object lineItems; + + private Object shipping; + + private Object tax; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentConfirmParams.AmountDetails build() { + return new PaymentIntentConfirmParams.AmountDetails( + this.discountAmount, this.extraParams, this.lineItems, this.shipping, this.tax); + } + + /** The amount an item was discounted for. */ + public Builder setDiscountAmount(Long discountAmount) { + this.discountAmount = discountAmount; + return this; + } + + /** The amount an item was discounted for. */ + public Builder setDiscountAmount(EmptyParam discountAmount) { + this.discountAmount = discountAmount; + 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.AmountDetails#extraParams} for the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. 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.AmountDetails#extraParams} for the field + * documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** + * Add an element to `lineItems` list. A list is initialized for the first `add/addAll` call, + * and subsequent calls adds additional elements to the original list. See {@link + * PaymentIntentConfirmParams.AmountDetails#lineItems} for the field documentation. + */ + @SuppressWarnings("unchecked") + public Builder addLineItem(PaymentIntentConfirmParams.AmountDetails.LineItem element) { + if (this.lineItems == null || this.lineItems instanceof EmptyParam) { + this.lineItems = new ArrayList(); + } + ((List) this.lineItems).add(element); + return this; + } + + /** + * Add all elements 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 + * PaymentIntentConfirmParams.AmountDetails#lineItems} for the field documentation. + */ + @SuppressWarnings("unchecked") + public Builder addAllLineItem( + List elements) { + if (this.lineItems == null || this.lineItems instanceof EmptyParam) { + this.lineItems = new ArrayList(); + } + ((List) this.lineItems).addAll(elements); + return this; + } + + /** + * A list of line items, each containing information about a product in the PaymentIntent. + * There is a maximum of 100 line items. + */ + public Builder setLineItems(EmptyParam lineItems) { + this.lineItems = lineItems; + return this; + } + + /** + * A list of line items, each containing information about a product in the PaymentIntent. + * There is a maximum of 100 line items. + */ + public Builder setLineItems( + List lineItems) { + this.lineItems = lineItems; + return this; + } + + /** Contains information about the shipping portion of the amount. */ + public Builder setShipping(PaymentIntentConfirmParams.AmountDetails.Shipping shipping) { + this.shipping = shipping; + return this; + } + + /** Contains information about the shipping portion of the amount. */ + public Builder setShipping(EmptyParam shipping) { + this.shipping = shipping; + return this; + } + + /** Contains information about the tax portion of the amount. */ + public Builder setTax(PaymentIntentConfirmParams.AmountDetails.Tax tax) { + this.tax = tax; + return this; + } + + /** Contains information about the tax portion of the amount. */ + public Builder setTax(EmptyParam tax) { + this.tax = tax; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class LineItem { + /** The amount an item was discounted for. Positive integer. */ + @SerializedName("discount_amount") + Long discountAmount; + + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-level field (serialized) + * name in this param object. Effectively, this map is flattened to its parent instance. + */ + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** Payment method-specific information for line items. */ + @SerializedName("payment_method_options") + PaymentMethodOptions paymentMethodOptions; + + /** Unique identifier of the product. At most 12 characters long. */ + @SerializedName("product_code") + String productCode; + + /** Required. Name of the product. At most 100 characters long. */ + @SerializedName("product_name") + String productName; + + /** Required. Number of items of the product. Positive integer. */ + @SerializedName("quantity") + Long quantity; + + /** Contains information about the tax on the item. */ + @SerializedName("tax") + Tax tax; + + /** Required. Cost of the product. Non-negative integer. */ + @SerializedName("unit_cost") + Long unitCost; + + /** A unit of measure for the line item, such as gallons, feet, meters, etc. */ + @SerializedName("unit_of_measure") + String unitOfMeasure; + + private LineItem( + Long discountAmount, + Map extraParams, + PaymentMethodOptions paymentMethodOptions, + String productCode, + String productName, + Long quantity, + Tax tax, + Long unitCost, + String unitOfMeasure) { + this.discountAmount = discountAmount; + this.extraParams = extraParams; + this.paymentMethodOptions = paymentMethodOptions; + this.productCode = productCode; + this.productName = productName; + this.quantity = quantity; + this.tax = tax; + this.unitCost = unitCost; + this.unitOfMeasure = unitOfMeasure; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Long discountAmount; + + private Map extraParams; + + private PaymentMethodOptions paymentMethodOptions; + + private String productCode; + + private String productName; + + private Long quantity; + + private Tax tax; + + private Long unitCost; + + private String unitOfMeasure; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentConfirmParams.AmountDetails.LineItem build() { + return new PaymentIntentConfirmParams.AmountDetails.LineItem( + this.discountAmount, + this.extraParams, + this.paymentMethodOptions, + this.productCode, + this.productName, + this.quantity, + this.tax, + this.unitCost, + this.unitOfMeasure); + } + + /** The amount an item was discounted for. Positive integer. */ + public Builder setDiscountAmount(Long discountAmount) { + this.discountAmount = discountAmount; + 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.AmountDetails.LineItem#extraParams} for the + * field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. 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.AmountDetails.LineItem#extraParams} for the + * field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Payment method-specific information for line items. */ + public Builder setPaymentMethodOptions( + PaymentIntentConfirmParams.AmountDetails.LineItem.PaymentMethodOptions + paymentMethodOptions) { + this.paymentMethodOptions = paymentMethodOptions; + return this; + } + + /** Unique identifier of the product. At most 12 characters long. */ + public Builder setProductCode(String productCode) { + this.productCode = productCode; + return this; + } + + /** Required. Name of the product. At most 100 characters long. */ + public Builder setProductName(String productName) { + this.productName = productName; + return this; + } + + /** Required. Number of items of the product. Positive integer. */ + public Builder setQuantity(Long quantity) { + this.quantity = quantity; + return this; + } + + /** Contains information about the tax on the item. */ + public Builder setTax(PaymentIntentConfirmParams.AmountDetails.LineItem.Tax tax) { + this.tax = tax; + return this; + } + + /** Required. Cost of the product. Non-negative integer. */ + public Builder setUnitCost(Long unitCost) { + this.unitCost = unitCost; + return this; + } + + /** A unit of measure for the line item, such as gallons, feet, meters, etc. */ + public Builder setUnitOfMeasure(String unitOfMeasure) { + this.unitOfMeasure = unitOfMeasure; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PaymentMethodOptions { + /** + * This sub-hash contains line item details that are specific to {@code card} payment + * method.". + */ + @SerializedName("card") + Card card; + + /** + * This sub-hash contains line item details that are specific to {@code card_present} + * payment method.". + */ + @SerializedName("card_present") + CardPresent cardPresent; + + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-level field + * (serialized) name in this param object. Effectively, this map is flattened to its parent + * instance. + */ + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** + * This sub-hash contains line item details that are specific to {@code klarna} payment + * method.". + */ + @SerializedName("klarna") + Klarna klarna; + + /** + * This sub-hash contains line item details that are specific to {@code paypal} payment + * method.". + */ + @SerializedName("paypal") + Paypal paypal; + + private PaymentMethodOptions( + Card card, + CardPresent cardPresent, + Map extraParams, + Klarna klarna, + Paypal paypal) { + this.card = card; + this.cardPresent = cardPresent; + this.extraParams = extraParams; + this.klarna = klarna; + this.paypal = paypal; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Card card; + + private CardPresent cardPresent; + + private Map extraParams; + + private Klarna klarna; + + private Paypal paypal; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentConfirmParams.AmountDetails.LineItem.PaymentMethodOptions build() { + return new PaymentIntentConfirmParams.AmountDetails.LineItem.PaymentMethodOptions( + this.card, this.cardPresent, this.extraParams, this.klarna, this.paypal); + } + + /** + * This sub-hash contains line item details that are specific to {@code card} payment + * method.". + */ + public Builder setCard( + PaymentIntentConfirmParams.AmountDetails.LineItem.PaymentMethodOptions.Card card) { + this.card = card; + return this; + } + + /** + * This sub-hash contains line item details that are specific to {@code card_present} + * payment method.". + */ + public Builder setCardPresent( + PaymentIntentConfirmParams.AmountDetails.LineItem.PaymentMethodOptions.CardPresent + cardPresent) { + this.cardPresent = cardPresent; + 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.AmountDetails.LineItem.PaymentMethodOptions#extraParams} for + * the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. 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.AmountDetails.LineItem.PaymentMethodOptions#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 sub-hash contains line item details that are specific to {@code klarna} payment + * method.". + */ + public Builder setKlarna( + PaymentIntentConfirmParams.AmountDetails.LineItem.PaymentMethodOptions.Klarna + klarna) { + this.klarna = klarna; + return this; + } + + /** + * This sub-hash contains line item details that are specific to {@code paypal} payment + * method.". + */ + public Builder setPaypal( + PaymentIntentConfirmParams.AmountDetails.LineItem.PaymentMethodOptions.Paypal + paypal) { + this.paypal = paypal; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Card { + /** + * Identifier that categorizes the items being purchased using a standardized commodity + * scheme such as (but not limited to) UNSPSC, NAICS, NAPCS, etc. + */ + @SerializedName("commodity_code") + String commodityCode; + + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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(String commodityCode, Map extraParams) { + this.commodityCode = commodityCode; + this.extraParams = extraParams; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private String commodityCode; + + private Map extraParams; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentConfirmParams.AmountDetails.LineItem.PaymentMethodOptions.Card + build() { + return new PaymentIntentConfirmParams.AmountDetails.LineItem.PaymentMethodOptions + .Card(this.commodityCode, this.extraParams); + } + + /** + * Identifier that categorizes the items being purchased using a standardized commodity + * scheme such as (but not limited to) UNSPSC, NAICS, NAPCS, etc. + */ + public Builder setCommodityCode(String commodityCode) { + this.commodityCode = commodityCode; + 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.AmountDetails.LineItem.PaymentMethodOptions.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 + * PaymentIntentConfirmParams.AmountDetails.LineItem.PaymentMethodOptions.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 CardPresent { + /** + * Identifier that categorizes the items being purchased using a standardized commodity + * scheme such as (but not limited to) UNSPSC, NAICS, NAPCS, etc. + */ + @SerializedName("commodity_code") + String commodityCode; + + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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 CardPresent(String commodityCode, Map extraParams) { + this.commodityCode = commodityCode; + this.extraParams = extraParams; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private String commodityCode; + + private Map extraParams; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentConfirmParams.AmountDetails.LineItem.PaymentMethodOptions + .CardPresent + build() { + return new PaymentIntentConfirmParams.AmountDetails.LineItem.PaymentMethodOptions + .CardPresent(this.commodityCode, this.extraParams); + } + + /** + * Identifier that categorizes the items being purchased using a standardized commodity + * scheme such as (but not limited to) UNSPSC, NAICS, NAPCS, etc. + */ + public Builder setCommodityCode(String commodityCode) { + this.commodityCode = commodityCode; + 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.AmountDetails.LineItem.PaymentMethodOptions.CardPresent#extraParams} + * for the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. 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.AmountDetails.LineItem.PaymentMethodOptions.CardPresent#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 Klarna { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-level field + * (serialized) name in this param object. Effectively, this map is flattened to its + * parent instance. + */ + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** URL to an image for the product. Max length, 4096 characters. */ + @SerializedName("image_url") + String imageUrl; + + /** URL to the product page. Max length, 4096 characters. */ + @SerializedName("product_url") + String productUrl; + + /** Reference for the subscription this line item is for. */ + @SerializedName("subscription_reference") + String subscriptionReference; + + private Klarna( + Map extraParams, + String imageUrl, + String productUrl, + String subscriptionReference) { + this.extraParams = extraParams; + this.imageUrl = imageUrl; + this.productUrl = productUrl; + this.subscriptionReference = subscriptionReference; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private String imageUrl; + + private String productUrl; + + private String subscriptionReference; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentConfirmParams.AmountDetails.LineItem.PaymentMethodOptions.Klarna + build() { + return new PaymentIntentConfirmParams.AmountDetails.LineItem.PaymentMethodOptions + .Klarna( + this.extraParams, this.imageUrl, this.productUrl, this.subscriptionReference); + } + + /** + * Add a key/value pair to `extraParams` map. 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.AmountDetails.LineItem.PaymentMethodOptions.Klarna#extraParams} + * for the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. 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.AmountDetails.LineItem.PaymentMethodOptions.Klarna#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** URL to an image for the product. Max length, 4096 characters. */ + public Builder setImageUrl(String imageUrl) { + this.imageUrl = imageUrl; + return this; + } + + /** URL to the product page. Max length, 4096 characters. */ + public Builder setProductUrl(String productUrl) { + this.productUrl = productUrl; + return this; + } + + /** Reference for the subscription this line item is for. */ + public Builder setSubscriptionReference(String subscriptionReference) { + this.subscriptionReference = subscriptionReference; + return this; + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Paypal { + /** Type of the line item. */ + @SerializedName("category") + Category category; + + /** Description of the line item. */ + @SerializedName("description") + String description; + + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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 Stripe account ID of the connected account that sells the item. */ + @SerializedName("sold_by") + String soldBy; + + private Paypal( + Category category, + String description, + Map extraParams, + String soldBy) { + this.category = category; + this.description = description; + this.extraParams = extraParams; + this.soldBy = soldBy; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Category category; + + private String description; + + private Map extraParams; + + private String soldBy; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentConfirmParams.AmountDetails.LineItem.PaymentMethodOptions.Paypal + build() { + return new PaymentIntentConfirmParams.AmountDetails.LineItem.PaymentMethodOptions + .Paypal(this.category, this.description, this.extraParams, this.soldBy); + } + + /** Type of the line item. */ + public Builder setCategory( + PaymentIntentConfirmParams.AmountDetails.LineItem.PaymentMethodOptions.Paypal + .Category + category) { + this.category = category; + return this; + } + + /** Description of the line item. */ + public Builder setDescription(String description) { + this.description = description; + 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.AmountDetails.LineItem.PaymentMethodOptions.Paypal#extraParams} + * for the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. 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.AmountDetails.LineItem.PaymentMethodOptions.Paypal#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 Stripe account ID of the connected account that sells the item. */ + public Builder setSoldBy(String soldBy) { + this.soldBy = soldBy; + return this; + } + } + + public enum Category implements ApiRequestParams.EnumParam { + @SerializedName("digital_goods") + DIGITAL_GOODS("digital_goods"), + + @SerializedName("donation") + DONATION("donation"), + + @SerializedName("physical_goods") + PHYSICAL_GOODS("physical_goods"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + Category(String value) { + this.value = value; + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Tax { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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 total tax on an item. Non-negative integer. */ + @SerializedName("total_tax_amount") + Long totalTaxAmount; + + private Tax(Map extraParams, Long totalTaxAmount) { + this.extraParams = extraParams; + this.totalTaxAmount = totalTaxAmount; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Long totalTaxAmount; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentConfirmParams.AmountDetails.LineItem.Tax build() { + return new PaymentIntentConfirmParams.AmountDetails.LineItem.Tax( + this.extraParams, this.totalTaxAmount); + } + + /** + * Add a key/value pair to `extraParams` map. 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.AmountDetails.LineItem.Tax#extraParams} for + * the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. 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.AmountDetails.LineItem.Tax#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 total tax on an item. Non-negative integer. */ + public Builder setTotalTaxAmount(Long totalTaxAmount) { + this.totalTaxAmount = totalTaxAmount; + return this; + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Shipping { + /** Portion of the amount that is for shipping. */ + @SerializedName("amount") + Object amount; + + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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 postal code that represents the shipping source. */ + @SerializedName("from_postal_code") + Object fromPostalCode; + + /** The postal code that represents the shipping destination. */ + @SerializedName("to_postal_code") + Object toPostalCode; + + private Shipping( + Object amount, + Map extraParams, + Object fromPostalCode, + Object toPostalCode) { + this.amount = amount; + this.extraParams = extraParams; + this.fromPostalCode = fromPostalCode; + this.toPostalCode = toPostalCode; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Object amount; + + private Map extraParams; + + private Object fromPostalCode; + + private Object toPostalCode; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentConfirmParams.AmountDetails.Shipping build() { + return new PaymentIntentConfirmParams.AmountDetails.Shipping( + this.amount, this.extraParams, this.fromPostalCode, this.toPostalCode); + } + + /** Portion of the amount that is for shipping. */ + public Builder setAmount(Long amount) { + this.amount = amount; + return this; + } + + /** Portion of the amount that is for shipping. */ + public Builder setAmount(EmptyParam amount) { + this.amount = amount; + 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.AmountDetails.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 PaymentIntentConfirmParams.AmountDetails.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; + } + + /** The postal code that represents the shipping source. */ + public Builder setFromPostalCode(String fromPostalCode) { + this.fromPostalCode = fromPostalCode; + return this; + } + + /** The postal code that represents the shipping source. */ + public Builder setFromPostalCode(EmptyParam fromPostalCode) { + this.fromPostalCode = fromPostalCode; + return this; + } + + /** The postal code that represents the shipping destination. */ + public Builder setToPostalCode(String toPostalCode) { + this.toPostalCode = toPostalCode; + return this; + } + + /** The postal code that represents the shipping destination. */ + public Builder setToPostalCode(EmptyParam toPostalCode) { + this.toPostalCode = toPostalCode; + return this; + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Tax { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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. Total portion of the amount that is for tax. */ + @SerializedName("total_tax_amount") + Long totalTaxAmount; + + private Tax(Map extraParams, Long totalTaxAmount) { + this.extraParams = extraParams; + this.totalTaxAmount = totalTaxAmount; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Long totalTaxAmount; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentConfirmParams.AmountDetails.Tax build() { + return new PaymentIntentConfirmParams.AmountDetails.Tax( + this.extraParams, this.totalTaxAmount); + } + + /** + * Add a key/value pair to `extraParams` map. 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.AmountDetails.Tax#extraParams} for the field + * documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. 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.AmountDetails.Tax#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. Total portion of the amount that is for tax. */ + public Builder setTotalTaxAmount(Long totalTaxAmount) { + this.totalTaxAmount = totalTaxAmount; + return this; + } + } + } + } + @Getter @EqualsAndHashCode(callSuper = false) public static class Hooks { @@ -16423,7 +17618,7 @@ public static class Card { Map extraParams; /** - * Installment configuration for payments attempted on this PaymentIntent (Mexico Only). + * Installment configuration for payments attempted on this PaymentIntent. * *

For more information, see the installments integration guide. @@ -16756,7 +17951,7 @@ public Builder putAllExtraParam(Map map) { } /** - * Installment configuration for payments attempted on this PaymentIntent (Mexico Only). + * Installment configuration for payments attempted on this PaymentIntent. * *

For more information, see the installments integration guide. diff --git a/src/main/java/com/stripe/param/PaymentIntentCreateParams.java b/src/main/java/com/stripe/param/PaymentIntentCreateParams.java index bb36666714d..de439e6e57f 100644 --- a/src/main/java/com/stripe/param/PaymentIntentCreateParams.java +++ b/src/main/java/com/stripe/param/PaymentIntentCreateParams.java @@ -27,6 +27,10 @@ public class PaymentIntentCreateParams extends ApiRequestParams { @SerializedName("amount") Long amount; + /** Provides industry-specific information about the amount. */ + @SerializedName("amount_details") + AmountDetails amountDetails; + /** * The amount of the application fee (if any) that will be requested to be applied to the payment * and transferred to the application owner's Stripe account. The amount of the application fee @@ -354,6 +358,7 @@ public class PaymentIntentCreateParams extends ApiRequestParams { private PaymentIntentCreateParams( Long amount, + AmountDetails amountDetails, Long applicationFeeAmount, AutomaticPaymentMethods automaticPaymentMethods, CaptureMethod captureMethod, @@ -392,6 +397,7 @@ private PaymentIntentCreateParams( String transferGroup, Boolean useStripeSdk) { this.amount = amount; + this.amountDetails = amountDetails; this.applicationFeeAmount = applicationFeeAmount; this.automaticPaymentMethods = automaticPaymentMethods; this.captureMethod = captureMethod; @@ -438,6 +444,8 @@ public static Builder builder() { public static class Builder { private Long amount; + private AmountDetails amountDetails; + private Long applicationFeeAmount; private AutomaticPaymentMethods automaticPaymentMethods; @@ -516,6 +524,7 @@ public static class Builder { public PaymentIntentCreateParams build() { return new PaymentIntentCreateParams( this.amount, + this.amountDetails, this.applicationFeeAmount, this.automaticPaymentMethods, this.captureMethod, @@ -570,6 +579,12 @@ public Builder setAmount(Long amount) { return this; } + /** Provides industry-specific information about the amount. */ + public Builder setAmountDetails(PaymentIntentCreateParams.AmountDetails amountDetails) { + this.amountDetails = amountDetails; + return this; + } + /** * The amount of the application fee (if any) that will be requested to be applied to the * payment and transferred to the application owner's Stripe account. The amount of the @@ -1068,6 +1083,1177 @@ public Builder setUseStripeSdk(Boolean useStripeSdk) { } } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class AmountDetails { + /** The amount an item was discounted for. */ + @SerializedName("discount_amount") + Object discountAmount; + + /** + * Map of extra parameters for custom features not available in this client library. The content + * in this map is not serialized under this field's {@code @SerializedName} value. Instead, each + * key/value pair is serialized as if the key is a root-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 list of line items, each containing information about a product in the PaymentIntent. There + * is a maximum of 100 line items. + */ + @SerializedName("line_items") + Object lineItems; + + /** Contains information about the shipping portion of the amount. */ + @SerializedName("shipping") + Object shipping; + + /** Contains information about the tax portion of the amount. */ + @SerializedName("tax") + Object tax; + + private AmountDetails( + Object discountAmount, + Map extraParams, + Object lineItems, + Object shipping, + Object tax) { + this.discountAmount = discountAmount; + this.extraParams = extraParams; + this.lineItems = lineItems; + this.shipping = shipping; + this.tax = tax; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Object discountAmount; + + private Map extraParams; + + private Object lineItems; + + private Object shipping; + + private Object tax; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentCreateParams.AmountDetails build() { + return new PaymentIntentCreateParams.AmountDetails( + this.discountAmount, this.extraParams, this.lineItems, this.shipping, this.tax); + } + + /** The amount an item was discounted for. */ + public Builder setDiscountAmount(Long discountAmount) { + this.discountAmount = discountAmount; + return this; + } + + /** The amount an item was discounted for. */ + public Builder setDiscountAmount(EmptyParam discountAmount) { + this.discountAmount = discountAmount; + 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.AmountDetails#extraParams} for the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. 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.AmountDetails#extraParams} for the field + * documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** + * Add an element to `lineItems` list. A list is initialized for the first `add/addAll` call, + * and subsequent calls adds additional elements to the original list. See {@link + * PaymentIntentCreateParams.AmountDetails#lineItems} for the field documentation. + */ + @SuppressWarnings("unchecked") + public Builder addLineItem(PaymentIntentCreateParams.AmountDetails.LineItem element) { + if (this.lineItems == null || this.lineItems instanceof EmptyParam) { + this.lineItems = new ArrayList(); + } + ((List) this.lineItems).add(element); + return this; + } + + /** + * Add all elements 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 + * PaymentIntentCreateParams.AmountDetails#lineItems} for the field documentation. + */ + @SuppressWarnings("unchecked") + public Builder addAllLineItem( + List elements) { + if (this.lineItems == null || this.lineItems instanceof EmptyParam) { + this.lineItems = new ArrayList(); + } + ((List) this.lineItems).addAll(elements); + return this; + } + + /** + * A list of line items, each containing information about a product in the PaymentIntent. + * There is a maximum of 100 line items. + */ + public Builder setLineItems(EmptyParam lineItems) { + this.lineItems = lineItems; + return this; + } + + /** + * A list of line items, each containing information about a product in the PaymentIntent. + * There is a maximum of 100 line items. + */ + public Builder setLineItems( + List lineItems) { + this.lineItems = lineItems; + return this; + } + + /** Contains information about the shipping portion of the amount. */ + public Builder setShipping(PaymentIntentCreateParams.AmountDetails.Shipping shipping) { + this.shipping = shipping; + return this; + } + + /** Contains information about the shipping portion of the amount. */ + public Builder setShipping(EmptyParam shipping) { + this.shipping = shipping; + return this; + } + + /** Contains information about the tax portion of the amount. */ + public Builder setTax(PaymentIntentCreateParams.AmountDetails.Tax tax) { + this.tax = tax; + return this; + } + + /** Contains information about the tax portion of the amount. */ + public Builder setTax(EmptyParam tax) { + this.tax = tax; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class LineItem { + /** The amount an item was discounted for. Positive integer. */ + @SerializedName("discount_amount") + Long discountAmount; + + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-level field (serialized) + * name in this param object. Effectively, this map is flattened to its parent instance. + */ + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** Payment method-specific information for line items. */ + @SerializedName("payment_method_options") + PaymentMethodOptions paymentMethodOptions; + + /** Unique identifier of the product. At most 12 characters long. */ + @SerializedName("product_code") + String productCode; + + /** Required. Name of the product. At most 100 characters long. */ + @SerializedName("product_name") + String productName; + + /** Required. Number of items of the product. Positive integer. */ + @SerializedName("quantity") + Long quantity; + + /** Contains information about the tax on the item. */ + @SerializedName("tax") + Tax tax; + + /** Required. Cost of the product. Non-negative integer. */ + @SerializedName("unit_cost") + Long unitCost; + + /** A unit of measure for the line item, such as gallons, feet, meters, etc. */ + @SerializedName("unit_of_measure") + String unitOfMeasure; + + private LineItem( + Long discountAmount, + Map extraParams, + PaymentMethodOptions paymentMethodOptions, + String productCode, + String productName, + Long quantity, + Tax tax, + Long unitCost, + String unitOfMeasure) { + this.discountAmount = discountAmount; + this.extraParams = extraParams; + this.paymentMethodOptions = paymentMethodOptions; + this.productCode = productCode; + this.productName = productName; + this.quantity = quantity; + this.tax = tax; + this.unitCost = unitCost; + this.unitOfMeasure = unitOfMeasure; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Long discountAmount; + + private Map extraParams; + + private PaymentMethodOptions paymentMethodOptions; + + private String productCode; + + private String productName; + + private Long quantity; + + private Tax tax; + + private Long unitCost; + + private String unitOfMeasure; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentCreateParams.AmountDetails.LineItem build() { + return new PaymentIntentCreateParams.AmountDetails.LineItem( + this.discountAmount, + this.extraParams, + this.paymentMethodOptions, + this.productCode, + this.productName, + this.quantity, + this.tax, + this.unitCost, + this.unitOfMeasure); + } + + /** The amount an item was discounted for. Positive integer. */ + public Builder setDiscountAmount(Long discountAmount) { + this.discountAmount = discountAmount; + 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.AmountDetails.LineItem#extraParams} for the + * field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. 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.AmountDetails.LineItem#extraParams} for the + * field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Payment method-specific information for line items. */ + public Builder setPaymentMethodOptions( + PaymentIntentCreateParams.AmountDetails.LineItem.PaymentMethodOptions + paymentMethodOptions) { + this.paymentMethodOptions = paymentMethodOptions; + return this; + } + + /** Unique identifier of the product. At most 12 characters long. */ + public Builder setProductCode(String productCode) { + this.productCode = productCode; + return this; + } + + /** Required. Name of the product. At most 100 characters long. */ + public Builder setProductName(String productName) { + this.productName = productName; + return this; + } + + /** Required. Number of items of the product. Positive integer. */ + public Builder setQuantity(Long quantity) { + this.quantity = quantity; + return this; + } + + /** Contains information about the tax on the item. */ + public Builder setTax(PaymentIntentCreateParams.AmountDetails.LineItem.Tax tax) { + this.tax = tax; + return this; + } + + /** Required. Cost of the product. Non-negative integer. */ + public Builder setUnitCost(Long unitCost) { + this.unitCost = unitCost; + return this; + } + + /** A unit of measure for the line item, such as gallons, feet, meters, etc. */ + public Builder setUnitOfMeasure(String unitOfMeasure) { + this.unitOfMeasure = unitOfMeasure; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PaymentMethodOptions { + /** + * This sub-hash contains line item details that are specific to {@code card} payment + * method.". + */ + @SerializedName("card") + Card card; + + /** + * This sub-hash contains line item details that are specific to {@code card_present} + * payment method.". + */ + @SerializedName("card_present") + CardPresent cardPresent; + + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-level field + * (serialized) name in this param object. Effectively, this map is flattened to its parent + * instance. + */ + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** + * This sub-hash contains line item details that are specific to {@code klarna} payment + * method.". + */ + @SerializedName("klarna") + Klarna klarna; + + /** + * This sub-hash contains line item details that are specific to {@code paypal} payment + * method.". + */ + @SerializedName("paypal") + Paypal paypal; + + private PaymentMethodOptions( + Card card, + CardPresent cardPresent, + Map extraParams, + Klarna klarna, + Paypal paypal) { + this.card = card; + this.cardPresent = cardPresent; + this.extraParams = extraParams; + this.klarna = klarna; + this.paypal = paypal; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Card card; + + private CardPresent cardPresent; + + private Map extraParams; + + private Klarna klarna; + + private Paypal paypal; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentCreateParams.AmountDetails.LineItem.PaymentMethodOptions build() { + return new PaymentIntentCreateParams.AmountDetails.LineItem.PaymentMethodOptions( + this.card, this.cardPresent, this.extraParams, this.klarna, this.paypal); + } + + /** + * This sub-hash contains line item details that are specific to {@code card} payment + * method.". + */ + public Builder setCard( + PaymentIntentCreateParams.AmountDetails.LineItem.PaymentMethodOptions.Card card) { + this.card = card; + return this; + } + + /** + * This sub-hash contains line item details that are specific to {@code card_present} + * payment method.". + */ + public Builder setCardPresent( + PaymentIntentCreateParams.AmountDetails.LineItem.PaymentMethodOptions.CardPresent + cardPresent) { + this.cardPresent = cardPresent; + 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.AmountDetails.LineItem.PaymentMethodOptions#extraParams} for + * the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. 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.AmountDetails.LineItem.PaymentMethodOptions#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 sub-hash contains line item details that are specific to {@code klarna} payment + * method.". + */ + public Builder setKlarna( + PaymentIntentCreateParams.AmountDetails.LineItem.PaymentMethodOptions.Klarna klarna) { + this.klarna = klarna; + return this; + } + + /** + * This sub-hash contains line item details that are specific to {@code paypal} payment + * method.". + */ + public Builder setPaypal( + PaymentIntentCreateParams.AmountDetails.LineItem.PaymentMethodOptions.Paypal paypal) { + this.paypal = paypal; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Card { + /** + * Identifier that categorizes the items being purchased using a standardized commodity + * scheme such as (but not limited to) UNSPSC, NAICS, NAPCS, etc. + */ + @SerializedName("commodity_code") + String commodityCode; + + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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(String commodityCode, Map extraParams) { + this.commodityCode = commodityCode; + this.extraParams = extraParams; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private String commodityCode; + + private Map extraParams; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentCreateParams.AmountDetails.LineItem.PaymentMethodOptions.Card + build() { + return new PaymentIntentCreateParams.AmountDetails.LineItem.PaymentMethodOptions.Card( + this.commodityCode, this.extraParams); + } + + /** + * Identifier that categorizes the items being purchased using a standardized commodity + * scheme such as (but not limited to) UNSPSC, NAICS, NAPCS, etc. + */ + public Builder setCommodityCode(String commodityCode) { + this.commodityCode = commodityCode; + 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.AmountDetails.LineItem.PaymentMethodOptions.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 + * PaymentIntentCreateParams.AmountDetails.LineItem.PaymentMethodOptions.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 CardPresent { + /** + * Identifier that categorizes the items being purchased using a standardized commodity + * scheme such as (but not limited to) UNSPSC, NAICS, NAPCS, etc. + */ + @SerializedName("commodity_code") + String commodityCode; + + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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 CardPresent(String commodityCode, Map extraParams) { + this.commodityCode = commodityCode; + this.extraParams = extraParams; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private String commodityCode; + + private Map extraParams; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentCreateParams.AmountDetails.LineItem.PaymentMethodOptions.CardPresent + build() { + return new PaymentIntentCreateParams.AmountDetails.LineItem.PaymentMethodOptions + .CardPresent(this.commodityCode, this.extraParams); + } + + /** + * Identifier that categorizes the items being purchased using a standardized commodity + * scheme such as (but not limited to) UNSPSC, NAICS, NAPCS, etc. + */ + public Builder setCommodityCode(String commodityCode) { + this.commodityCode = commodityCode; + 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.AmountDetails.LineItem.PaymentMethodOptions.CardPresent#extraParams} + * for the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. 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.AmountDetails.LineItem.PaymentMethodOptions.CardPresent#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 Klarna { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-level field + * (serialized) name in this param object. Effectively, this map is flattened to its + * parent instance. + */ + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** URL to an image for the product. Max length, 4096 characters. */ + @SerializedName("image_url") + String imageUrl; + + /** URL to the product page. Max length, 4096 characters. */ + @SerializedName("product_url") + String productUrl; + + /** Reference for the subscription this line item is for. */ + @SerializedName("subscription_reference") + String subscriptionReference; + + private Klarna( + Map extraParams, + String imageUrl, + String productUrl, + String subscriptionReference) { + this.extraParams = extraParams; + this.imageUrl = imageUrl; + this.productUrl = productUrl; + this.subscriptionReference = subscriptionReference; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private String imageUrl; + + private String productUrl; + + private String subscriptionReference; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentCreateParams.AmountDetails.LineItem.PaymentMethodOptions.Klarna + build() { + return new PaymentIntentCreateParams.AmountDetails.LineItem.PaymentMethodOptions + .Klarna( + this.extraParams, this.imageUrl, this.productUrl, this.subscriptionReference); + } + + /** + * Add a key/value pair to `extraParams` map. 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.AmountDetails.LineItem.PaymentMethodOptions.Klarna#extraParams} + * for the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. 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.AmountDetails.LineItem.PaymentMethodOptions.Klarna#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** URL to an image for the product. Max length, 4096 characters. */ + public Builder setImageUrl(String imageUrl) { + this.imageUrl = imageUrl; + return this; + } + + /** URL to the product page. Max length, 4096 characters. */ + public Builder setProductUrl(String productUrl) { + this.productUrl = productUrl; + return this; + } + + /** Reference for the subscription this line item is for. */ + public Builder setSubscriptionReference(String subscriptionReference) { + this.subscriptionReference = subscriptionReference; + return this; + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Paypal { + /** Type of the line item. */ + @SerializedName("category") + Category category; + + /** Description of the line item. */ + @SerializedName("description") + String description; + + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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 Stripe account ID of the connected account that sells the item. */ + @SerializedName("sold_by") + String soldBy; + + private Paypal( + Category category, + String description, + Map extraParams, + String soldBy) { + this.category = category; + this.description = description; + this.extraParams = extraParams; + this.soldBy = soldBy; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Category category; + + private String description; + + private Map extraParams; + + private String soldBy; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentCreateParams.AmountDetails.LineItem.PaymentMethodOptions.Paypal + build() { + return new PaymentIntentCreateParams.AmountDetails.LineItem.PaymentMethodOptions + .Paypal(this.category, this.description, this.extraParams, this.soldBy); + } + + /** Type of the line item. */ + public Builder setCategory( + PaymentIntentCreateParams.AmountDetails.LineItem.PaymentMethodOptions.Paypal + .Category + category) { + this.category = category; + return this; + } + + /** Description of the line item. */ + public Builder setDescription(String description) { + this.description = description; + 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.AmountDetails.LineItem.PaymentMethodOptions.Paypal#extraParams} + * for the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. 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.AmountDetails.LineItem.PaymentMethodOptions.Paypal#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 Stripe account ID of the connected account that sells the item. */ + public Builder setSoldBy(String soldBy) { + this.soldBy = soldBy; + return this; + } + } + + public enum Category implements ApiRequestParams.EnumParam { + @SerializedName("digital_goods") + DIGITAL_GOODS("digital_goods"), + + @SerializedName("donation") + DONATION("donation"), + + @SerializedName("physical_goods") + PHYSICAL_GOODS("physical_goods"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + Category(String value) { + this.value = value; + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Tax { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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 total tax on an item. Non-negative integer. */ + @SerializedName("total_tax_amount") + Long totalTaxAmount; + + private Tax(Map extraParams, Long totalTaxAmount) { + this.extraParams = extraParams; + this.totalTaxAmount = totalTaxAmount; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Long totalTaxAmount; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentCreateParams.AmountDetails.LineItem.Tax build() { + return new PaymentIntentCreateParams.AmountDetails.LineItem.Tax( + this.extraParams, this.totalTaxAmount); + } + + /** + * Add a key/value pair to `extraParams` map. 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.AmountDetails.LineItem.Tax#extraParams} for + * the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. 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.AmountDetails.LineItem.Tax#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 total tax on an item. Non-negative integer. */ + public Builder setTotalTaxAmount(Long totalTaxAmount) { + this.totalTaxAmount = totalTaxAmount; + return this; + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Shipping { + /** Portion of the amount that is for shipping. */ + @SerializedName("amount") + Object amount; + + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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 postal code that represents the shipping source. */ + @SerializedName("from_postal_code") + Object fromPostalCode; + + /** The postal code that represents the shipping destination. */ + @SerializedName("to_postal_code") + Object toPostalCode; + + private Shipping( + Object amount, + Map extraParams, + Object fromPostalCode, + Object toPostalCode) { + this.amount = amount; + this.extraParams = extraParams; + this.fromPostalCode = fromPostalCode; + this.toPostalCode = toPostalCode; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Object amount; + + private Map extraParams; + + private Object fromPostalCode; + + private Object toPostalCode; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentCreateParams.AmountDetails.Shipping build() { + return new PaymentIntentCreateParams.AmountDetails.Shipping( + this.amount, this.extraParams, this.fromPostalCode, this.toPostalCode); + } + + /** Portion of the amount that is for shipping. */ + public Builder setAmount(Long amount) { + this.amount = amount; + return this; + } + + /** Portion of the amount that is for shipping. */ + public Builder setAmount(EmptyParam amount) { + this.amount = amount; + 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.AmountDetails.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 PaymentIntentCreateParams.AmountDetails.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; + } + + /** The postal code that represents the shipping source. */ + public Builder setFromPostalCode(String fromPostalCode) { + this.fromPostalCode = fromPostalCode; + return this; + } + + /** The postal code that represents the shipping source. */ + public Builder setFromPostalCode(EmptyParam fromPostalCode) { + this.fromPostalCode = fromPostalCode; + return this; + } + + /** The postal code that represents the shipping destination. */ + public Builder setToPostalCode(String toPostalCode) { + this.toPostalCode = toPostalCode; + return this; + } + + /** The postal code that represents the shipping destination. */ + public Builder setToPostalCode(EmptyParam toPostalCode) { + this.toPostalCode = toPostalCode; + return this; + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Tax { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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. Total portion of the amount that is for tax. */ + @SerializedName("total_tax_amount") + Long totalTaxAmount; + + private Tax(Map extraParams, Long totalTaxAmount) { + this.extraParams = extraParams; + this.totalTaxAmount = totalTaxAmount; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Long totalTaxAmount; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentCreateParams.AmountDetails.Tax build() { + return new PaymentIntentCreateParams.AmountDetails.Tax( + this.extraParams, this.totalTaxAmount); + } + + /** + * Add a key/value pair to `extraParams` map. 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.AmountDetails.Tax#extraParams} for the field + * documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. 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.AmountDetails.Tax#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. Total portion of the amount that is for tax. */ + public Builder setTotalTaxAmount(Long totalTaxAmount) { + this.totalTaxAmount = totalTaxAmount; + return this; + } + } + } + } + @Getter @EqualsAndHashCode(callSuper = false) public static class AutomaticPaymentMethods { @@ -16941,7 +18127,7 @@ public static class Card { Map extraParams; /** - * Installment configuration for payments attempted on this PaymentIntent (Mexico Only). + * Installment configuration for payments attempted on this PaymentIntent. * *

For more information, see the installments integration guide. @@ -17274,7 +18460,7 @@ public Builder putAllExtraParam(Map map) { } /** - * Installment configuration for payments attempted on this PaymentIntent (Mexico Only). + * Installment configuration for payments attempted on this PaymentIntent. * *

For more information, see the installments integration guide. diff --git a/src/main/java/com/stripe/param/PaymentIntentIncrementAuthorizationParams.java b/src/main/java/com/stripe/param/PaymentIntentIncrementAuthorizationParams.java index 3dd7226575b..8fd7e5d03e3 100644 --- a/src/main/java/com/stripe/param/PaymentIntentIncrementAuthorizationParams.java +++ b/src/main/java/com/stripe/param/PaymentIntentIncrementAuthorizationParams.java @@ -21,6 +21,10 @@ public class PaymentIntentIncrementAuthorizationParams extends ApiRequestParams @SerializedName("amount") Long amount; + /** Provides industry-specific information about the amount. */ + @SerializedName("amount_details") + AmountDetails amountDetails; + /** * The amount of the application fee (if any) that will be requested to be applied to the payment * and transferred to the application owner's Stripe account. The amount of the application fee @@ -61,6 +65,10 @@ public class PaymentIntentIncrementAuthorizationParams extends ApiRequestParams @SerializedName("metadata") Map metadata; + /** Provides industry-specific information about the charge. */ + @SerializedName("payment_details") + PaymentDetails paymentDetails; + /** Payment method-specific configuration for this PaymentIntent. */ @SerializedName("payment_method_options") PaymentMethodOptions paymentMethodOptions; @@ -85,22 +93,26 @@ public class PaymentIntentIncrementAuthorizationParams extends ApiRequestParams private PaymentIntentIncrementAuthorizationParams( Long amount, + AmountDetails amountDetails, Long applicationFeeAmount, String description, List expand, Map extraParams, Hooks hooks, Map metadata, + PaymentDetails paymentDetails, PaymentMethodOptions paymentMethodOptions, String statementDescriptor, TransferData transferData) { this.amount = amount; + this.amountDetails = amountDetails; this.applicationFeeAmount = applicationFeeAmount; this.description = description; this.expand = expand; this.extraParams = extraParams; this.hooks = hooks; this.metadata = metadata; + this.paymentDetails = paymentDetails; this.paymentMethodOptions = paymentMethodOptions; this.statementDescriptor = statementDescriptor; this.transferData = transferData; @@ -113,6 +125,8 @@ public static Builder builder() { public static class Builder { private Long amount; + private AmountDetails amountDetails; + private Long applicationFeeAmount; private String description; @@ -125,6 +139,8 @@ public static class Builder { private Map metadata; + private PaymentDetails paymentDetails; + private PaymentMethodOptions paymentMethodOptions; private String statementDescriptor; @@ -135,12 +151,14 @@ public static class Builder { public PaymentIntentIncrementAuthorizationParams build() { return new PaymentIntentIncrementAuthorizationParams( this.amount, + this.amountDetails, this.applicationFeeAmount, this.description, this.expand, this.extraParams, this.hooks, this.metadata, + this.paymentDetails, this.paymentMethodOptions, this.statementDescriptor, this.transferData); @@ -155,6 +173,13 @@ public Builder setAmount(Long amount) { return this; } + /** Provides industry-specific information about the amount. */ + public Builder setAmountDetails( + PaymentIntentIncrementAuthorizationParams.AmountDetails amountDetails) { + this.amountDetails = amountDetails; + return this; + } + /** * The amount of the application fee (if any) that will be requested to be applied to the * payment and transferred to the application owner's Stripe account. The amount of the @@ -258,6 +283,13 @@ public Builder putAllMetadata(Map map) { return this; } + /** Provides industry-specific information about the charge. */ + public Builder setPaymentDetails( + PaymentIntentIncrementAuthorizationParams.PaymentDetails paymentDetails) { + this.paymentDetails = paymentDetails; + return this; + } + /** Payment method-specific configuration for this PaymentIntent. */ public Builder setPaymentMethodOptions( PaymentIntentIncrementAuthorizationParams.PaymentMethodOptions paymentMethodOptions) { @@ -291,7 +323,11 @@ public Builder setTransferData( @Getter @EqualsAndHashCode(callSuper = false) - public static class Hooks { + public static class AmountDetails { + /** The amount an item was discounted for. */ + @SerializedName("discount_amount") + Object discountAmount; + /** * Map of extra parameters for custom features not available in this client library. The content * in this map is not serialized under this field's {@code @SerializedName} value. Instead, each @@ -301,13 +337,32 @@ public static class Hooks { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** Arguments passed in automations. */ - @SerializedName("inputs") - Inputs inputs; - - private Hooks(Map extraParams, Inputs inputs) { + /** + * A list of line items, each containing information about a product in the PaymentIntent. There + * is a maximum of 100 line items. + */ + @SerializedName("line_items") + Object lineItems; + + /** Contains information about the shipping portion of the amount. */ + @SerializedName("shipping") + Object shipping; + + /** Contains information about the tax portion of the amount. */ + @SerializedName("tax") + Object tax; + + private AmountDetails( + Object discountAmount, + Map extraParams, + Object lineItems, + Object shipping, + Object tax) { + this.discountAmount = discountAmount; this.extraParams = extraParams; - this.inputs = inputs; + this.lineItems = lineItems; + this.shipping = shipping; + this.tax = tax; } public static Builder builder() { @@ -315,19 +370,39 @@ public static Builder builder() { } public static class Builder { + private Object discountAmount; + private Map extraParams; - private Inputs inputs; + private Object lineItems; + + private Object shipping; + + private Object tax; /** Finalize and obtain parameter instance from this builder. */ - public PaymentIntentIncrementAuthorizationParams.Hooks build() { - return new PaymentIntentIncrementAuthorizationParams.Hooks(this.extraParams, this.inputs); + public PaymentIntentIncrementAuthorizationParams.AmountDetails build() { + return new PaymentIntentIncrementAuthorizationParams.AmountDetails( + this.discountAmount, this.extraParams, this.lineItems, this.shipping, this.tax); + } + + /** The amount an item was discounted for. */ + public Builder setDiscountAmount(Long discountAmount) { + this.discountAmount = discountAmount; + return this; + } + + /** The amount an item was discounted for. */ + public Builder setDiscountAmount(EmptyParam discountAmount) { + this.discountAmount = discountAmount; + 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 - * PaymentIntentIncrementAuthorizationParams.Hooks#extraParams} for the field documentation. + * PaymentIntentIncrementAuthorizationParams.AmountDetails#extraParams} for the field + * documentation. */ public Builder putExtraParam(String key, Object value) { if (this.extraParams == null) { @@ -340,8 +415,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 PaymentIntentIncrementAuthorizationParams.Hooks#extraParams} for the field - * documentation. + * See {@link PaymentIntentIncrementAuthorizationParams.AmountDetails#extraParams} for the + * field documentation. */ public Builder putAllExtraParam(Map map) { if (this.extraParams == null) { @@ -351,16 +426,94 @@ public Builder putAllExtraParam(Map map) { return this; } - /** Arguments passed in automations. */ - public Builder setInputs(PaymentIntentIncrementAuthorizationParams.Hooks.Inputs inputs) { - this.inputs = inputs; + /** + * 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 + * PaymentIntentIncrementAuthorizationParams.AmountDetails#lineItems} for the field + * documentation. + */ + @SuppressWarnings("unchecked") + public Builder addLineItem( + PaymentIntentIncrementAuthorizationParams.AmountDetails.LineItem element) { + if (this.lineItems == null || this.lineItems instanceof EmptyParam) { + this.lineItems = + new ArrayList(); + } + ((List) this.lineItems) + .add(element); + return this; + } + + /** + * Add all elements 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 + * PaymentIntentIncrementAuthorizationParams.AmountDetails#lineItems} for the field + * documentation. + */ + @SuppressWarnings("unchecked") + public Builder addAllLineItem( + List elements) { + if (this.lineItems == null || this.lineItems instanceof EmptyParam) { + this.lineItems = + new ArrayList(); + } + ((List) this.lineItems) + .addAll(elements); + return this; + } + + /** + * A list of line items, each containing information about a product in the PaymentIntent. + * There is a maximum of 100 line items. + */ + public Builder setLineItems(EmptyParam lineItems) { + this.lineItems = lineItems; + return this; + } + + /** + * A list of line items, each containing information about a product in the PaymentIntent. + * There is a maximum of 100 line items. + */ + public Builder setLineItems( + List lineItems) { + this.lineItems = lineItems; + return this; + } + + /** Contains information about the shipping portion of the amount. */ + public Builder setShipping( + PaymentIntentIncrementAuthorizationParams.AmountDetails.Shipping shipping) { + this.shipping = shipping; + return this; + } + + /** Contains information about the shipping portion of the amount. */ + public Builder setShipping(EmptyParam shipping) { + this.shipping = shipping; + return this; + } + + /** Contains information about the tax portion of the amount. */ + public Builder setTax(PaymentIntentIncrementAuthorizationParams.AmountDetails.Tax tax) { + this.tax = tax; + return this; + } + + /** Contains information about the tax portion of the amount. */ + public Builder setTax(EmptyParam tax) { + this.tax = tax; return this; } } @Getter @EqualsAndHashCode(callSuper = false) - public static class Inputs { + public static class LineItem { + /** The amount an item was discounted for. Positive integer. */ + @SerializedName("discount_amount") + Long discountAmount; + /** * Map of extra parameters for custom features not available in this client library. The * content in this map is not serialized under this field's {@code @SerializedName} value. @@ -370,13 +523,53 @@ public static class Inputs { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** Tax arguments for automations. */ + /** Payment method-specific information for line items. */ + @SerializedName("payment_method_options") + PaymentMethodOptions paymentMethodOptions; + + /** Unique identifier of the product. At most 12 characters long. */ + @SerializedName("product_code") + String productCode; + + /** Required. Name of the product. At most 100 characters long. */ + @SerializedName("product_name") + String productName; + + /** Required. Number of items of the product. Positive integer. */ + @SerializedName("quantity") + Long quantity; + + /** Contains information about the tax on the item. */ @SerializedName("tax") Tax tax; - private Inputs(Map extraParams, Tax tax) { + /** Required. Cost of the product. Non-negative integer. */ + @SerializedName("unit_cost") + Long unitCost; + + /** A unit of measure for the line item, such as gallons, feet, meters, etc. */ + @SerializedName("unit_of_measure") + String unitOfMeasure; + + private LineItem( + Long discountAmount, + Map extraParams, + PaymentMethodOptions paymentMethodOptions, + String productCode, + String productName, + Long quantity, + Tax tax, + Long unitCost, + String unitOfMeasure) { + this.discountAmount = discountAmount; this.extraParams = extraParams; + this.paymentMethodOptions = paymentMethodOptions; + this.productCode = productCode; + this.productName = productName; + this.quantity = quantity; this.tax = tax; + this.unitCost = unitCost; + this.unitOfMeasure = unitOfMeasure; } public static Builder builder() { @@ -384,21 +577,50 @@ public static Builder builder() { } public static class Builder { + private Long discountAmount; + private Map extraParams; + private PaymentMethodOptions paymentMethodOptions; + + private String productCode; + + private String productName; + + private Long quantity; + private Tax tax; + private Long unitCost; + + private String unitOfMeasure; + /** Finalize and obtain parameter instance from this builder. */ - public PaymentIntentIncrementAuthorizationParams.Hooks.Inputs build() { - return new PaymentIntentIncrementAuthorizationParams.Hooks.Inputs( - this.extraParams, this.tax); + public PaymentIntentIncrementAuthorizationParams.AmountDetails.LineItem build() { + return new PaymentIntentIncrementAuthorizationParams.AmountDetails.LineItem( + this.discountAmount, + this.extraParams, + this.paymentMethodOptions, + this.productCode, + this.productName, + this.quantity, + this.tax, + this.unitCost, + this.unitOfMeasure); + } + + /** The amount an item was discounted for. Positive integer. */ + public Builder setDiscountAmount(Long discountAmount) { + this.discountAmount = discountAmount; + 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 PaymentIntentIncrementAuthorizationParams.Hooks.Inputs#extraParams} for - * the field documentation. + * map. See {@link + * PaymentIntentIncrementAuthorizationParams.AmountDetails.LineItem#extraParams} for the + * field documentation. */ public Builder putExtraParam(String key, Object value) { if (this.extraParams == null) { @@ -411,8 +633,9 @@ 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 PaymentIntentIncrementAuthorizationParams.Hooks.Inputs#extraParams} for - * the field documentation. + * map. See {@link + * PaymentIntentIncrementAuthorizationParams.AmountDetails.LineItem#extraParams} for the + * field documentation. */ public Builder putAllExtraParam(Map map) { if (this.extraParams == null) { @@ -422,22 +645,68 @@ public Builder putAllExtraParam(Map map) { return this; } - /** Tax arguments for automations. */ - public Builder setTax(PaymentIntentIncrementAuthorizationParams.Hooks.Inputs.Tax tax) { + /** Payment method-specific information for line items. */ + public Builder setPaymentMethodOptions( + PaymentIntentIncrementAuthorizationParams.AmountDetails.LineItem.PaymentMethodOptions + paymentMethodOptions) { + this.paymentMethodOptions = paymentMethodOptions; + return this; + } + + /** Unique identifier of the product. At most 12 characters long. */ + public Builder setProductCode(String productCode) { + this.productCode = productCode; + return this; + } + + /** Required. Name of the product. At most 100 characters long. */ + public Builder setProductName(String productName) { + this.productName = productName; + return this; + } + + /** Required. Number of items of the product. Positive integer. */ + public Builder setQuantity(Long quantity) { + this.quantity = quantity; + return this; + } + + /** Contains information about the tax on the item. */ + public Builder setTax( + PaymentIntentIncrementAuthorizationParams.AmountDetails.LineItem.Tax tax) { this.tax = tax; return this; } + + /** Required. Cost of the product. Non-negative integer. */ + public Builder setUnitCost(Long unitCost) { + this.unitCost = unitCost; + return this; + } + + /** A unit of measure for the line item, such as gallons, feet, meters, etc. */ + public Builder setUnitOfMeasure(String unitOfMeasure) { + this.unitOfMeasure = unitOfMeasure; + return this; + } } @Getter @EqualsAndHashCode(callSuper = false) - public static class Tax { + public static class PaymentMethodOptions { /** - * Required. The TaxCalculation id + * This sub-hash contains line item details that are specific to {@code card} payment + * method.". */ - @SerializedName("calculation") - Object calculation; + @SerializedName("card") + Card card; + + /** + * This sub-hash contains line item details that are specific to {@code card_present} + * payment method.". + */ + @SerializedName("card_present") + CardPresent cardPresent; /** * Map of extra parameters for custom features not available in this client library. The @@ -449,9 +718,31 @@ public static class Tax { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - private Tax(Object calculation, Map extraParams) { - this.calculation = calculation; + /** + * This sub-hash contains line item details that are specific to {@code klarna} payment + * method.". + */ + @SerializedName("klarna") + Klarna klarna; + + /** + * This sub-hash contains line item details that are specific to {@code paypal} payment + * method.". + */ + @SerializedName("paypal") + Paypal paypal; + + private PaymentMethodOptions( + Card card, + CardPresent cardPresent, + Map extraParams, + Klarna klarna, + Paypal paypal) { + this.card = card; + this.cardPresent = cardPresent; this.extraParams = extraParams; + this.klarna = klarna; + this.paypal = paypal; } public static Builder builder() { @@ -459,38 +750,54 @@ public static Builder builder() { } public static class Builder { - private Object calculation; + private Card card; + + private CardPresent cardPresent; private Map extraParams; + private Klarna klarna; + + private Paypal paypal; + /** Finalize and obtain parameter instance from this builder. */ - public PaymentIntentIncrementAuthorizationParams.Hooks.Inputs.Tax build() { - return new PaymentIntentIncrementAuthorizationParams.Hooks.Inputs.Tax( - this.calculation, this.extraParams); + public PaymentIntentIncrementAuthorizationParams.AmountDetails.LineItem + .PaymentMethodOptions + build() { + return new PaymentIntentIncrementAuthorizationParams.AmountDetails.LineItem + .PaymentMethodOptions( + this.card, this.cardPresent, this.extraParams, this.klarna, this.paypal); } /** - * Required. The TaxCalculation id + * This sub-hash contains line item details that are specific to {@code card} payment + * method.". */ - public Builder setCalculation(String calculation) { - this.calculation = calculation; + public Builder setCard( + PaymentIntentIncrementAuthorizationParams.AmountDetails.LineItem.PaymentMethodOptions + .Card + card) { + this.card = card; return this; } /** - * Required. The TaxCalculation id + * This sub-hash contains line item details that are specific to {@code card_present} + * payment method.". */ - public Builder setCalculation(EmptyParam calculation) { - this.calculation = calculation; + public Builder setCardPresent( + PaymentIntentIncrementAuthorizationParams.AmountDetails.LineItem.PaymentMethodOptions + .CardPresent + cardPresent) { + this.cardPresent = cardPresent; 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 PaymentIntentIncrementAuthorizationParams.Hooks.Inputs.Tax#extraParams} + * map. See {@link + * PaymentIntentIncrementAuthorizationParams.AmountDetails.LineItem.PaymentMethodOptions#extraParams} * for the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -504,7 +811,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 PaymentIntentIncrementAuthorizationParams.Hooks.Inputs.Tax#extraParams} + * map. See {@link + * PaymentIntentIncrementAuthorizationParams.AmountDetails.LineItem.PaymentMethodOptions#extraParams} * for the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -514,7 +822,1040 @@ public Builder putAllExtraParam(Map map) { this.extraParams.putAll(map); return this; } + + /** + * This sub-hash contains line item details that are specific to {@code klarna} payment + * method.". + */ + public Builder setKlarna( + PaymentIntentIncrementAuthorizationParams.AmountDetails.LineItem.PaymentMethodOptions + .Klarna + klarna) { + this.klarna = klarna; + return this; + } + + /** + * This sub-hash contains line item details that are specific to {@code paypal} payment + * method.". + */ + public Builder setPaypal( + PaymentIntentIncrementAuthorizationParams.AmountDetails.LineItem.PaymentMethodOptions + .Paypal + paypal) { + this.paypal = paypal; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Card { + /** + * Identifier that categorizes the items being purchased using a standardized commodity + * scheme such as (but not limited to) UNSPSC, NAICS, NAPCS, etc. + */ + @SerializedName("commodity_code") + String commodityCode; + + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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(String commodityCode, Map extraParams) { + this.commodityCode = commodityCode; + this.extraParams = extraParams; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private String commodityCode; + + private Map extraParams; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentIncrementAuthorizationParams.AmountDetails.LineItem + .PaymentMethodOptions.Card + build() { + return new PaymentIntentIncrementAuthorizationParams.AmountDetails.LineItem + .PaymentMethodOptions.Card(this.commodityCode, this.extraParams); + } + + /** + * Identifier that categorizes the items being purchased using a standardized commodity + * scheme such as (but not limited to) UNSPSC, NAICS, NAPCS, etc. + */ + public Builder setCommodityCode(String commodityCode) { + this.commodityCode = commodityCode; + 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 + * PaymentIntentIncrementAuthorizationParams.AmountDetails.LineItem.PaymentMethodOptions.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 + * PaymentIntentIncrementAuthorizationParams.AmountDetails.LineItem.PaymentMethodOptions.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 CardPresent { + /** + * Identifier that categorizes the items being purchased using a standardized commodity + * scheme such as (but not limited to) UNSPSC, NAICS, NAPCS, etc. + */ + @SerializedName("commodity_code") + String commodityCode; + + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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 CardPresent(String commodityCode, Map extraParams) { + this.commodityCode = commodityCode; + this.extraParams = extraParams; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private String commodityCode; + + private Map extraParams; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentIncrementAuthorizationParams.AmountDetails.LineItem + .PaymentMethodOptions.CardPresent + build() { + return new PaymentIntentIncrementAuthorizationParams.AmountDetails.LineItem + .PaymentMethodOptions.CardPresent(this.commodityCode, this.extraParams); + } + + /** + * Identifier that categorizes the items being purchased using a standardized commodity + * scheme such as (but not limited to) UNSPSC, NAICS, NAPCS, etc. + */ + public Builder setCommodityCode(String commodityCode) { + this.commodityCode = commodityCode; + 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 + * PaymentIntentIncrementAuthorizationParams.AmountDetails.LineItem.PaymentMethodOptions.CardPresent#extraParams} + * for the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the + * original map. See {@link + * PaymentIntentIncrementAuthorizationParams.AmountDetails.LineItem.PaymentMethodOptions.CardPresent#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 Klarna { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-level field + * (serialized) name in this param object. Effectively, this map is flattened to its + * parent instance. + */ + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** URL to an image for the product. Max length, 4096 characters. */ + @SerializedName("image_url") + String imageUrl; + + /** URL to the product page. Max length, 4096 characters. */ + @SerializedName("product_url") + String productUrl; + + /** Reference for the subscription this line item is for. */ + @SerializedName("subscription_reference") + String subscriptionReference; + + private Klarna( + Map extraParams, + String imageUrl, + String productUrl, + String subscriptionReference) { + this.extraParams = extraParams; + this.imageUrl = imageUrl; + this.productUrl = productUrl; + this.subscriptionReference = subscriptionReference; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private String imageUrl; + + private String productUrl; + + private String subscriptionReference; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentIncrementAuthorizationParams.AmountDetails.LineItem + .PaymentMethodOptions.Klarna + build() { + return new PaymentIntentIncrementAuthorizationParams.AmountDetails.LineItem + .PaymentMethodOptions.Klarna( + this.extraParams, this.imageUrl, this.productUrl, this.subscriptionReference); + } + + /** + * Add a key/value pair to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the + * original map. See {@link + * PaymentIntentIncrementAuthorizationParams.AmountDetails.LineItem.PaymentMethodOptions.Klarna#extraParams} + * for the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the + * original map. See {@link + * PaymentIntentIncrementAuthorizationParams.AmountDetails.LineItem.PaymentMethodOptions.Klarna#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** URL to an image for the product. Max length, 4096 characters. */ + public Builder setImageUrl(String imageUrl) { + this.imageUrl = imageUrl; + return this; + } + + /** URL to the product page. Max length, 4096 characters. */ + public Builder setProductUrl(String productUrl) { + this.productUrl = productUrl; + return this; + } + + /** Reference for the subscription this line item is for. */ + public Builder setSubscriptionReference(String subscriptionReference) { + this.subscriptionReference = subscriptionReference; + return this; + } + } } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Paypal { + /** Type of the line item. */ + @SerializedName("category") + Category category; + + /** Description of the line item. */ + @SerializedName("description") + String description; + + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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 Stripe account ID of the connected account that sells the item. */ + @SerializedName("sold_by") + String soldBy; + + private Paypal( + Category category, + String description, + Map extraParams, + String soldBy) { + this.category = category; + this.description = description; + this.extraParams = extraParams; + this.soldBy = soldBy; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Category category; + + private String description; + + private Map extraParams; + + private String soldBy; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentIncrementAuthorizationParams.AmountDetails.LineItem + .PaymentMethodOptions.Paypal + build() { + return new PaymentIntentIncrementAuthorizationParams.AmountDetails.LineItem + .PaymentMethodOptions.Paypal( + this.category, this.description, this.extraParams, this.soldBy); + } + + /** Type of the line item. */ + public Builder setCategory( + PaymentIntentIncrementAuthorizationParams.AmountDetails.LineItem + .PaymentMethodOptions.Paypal.Category + category) { + this.category = category; + return this; + } + + /** Description of the line item. */ + public Builder setDescription(String description) { + this.description = description; + 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 + * PaymentIntentIncrementAuthorizationParams.AmountDetails.LineItem.PaymentMethodOptions.Paypal#extraParams} + * for the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the + * original map. See {@link + * PaymentIntentIncrementAuthorizationParams.AmountDetails.LineItem.PaymentMethodOptions.Paypal#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 Stripe account ID of the connected account that sells the item. */ + public Builder setSoldBy(String soldBy) { + this.soldBy = soldBy; + return this; + } + } + + public enum Category implements ApiRequestParams.EnumParam { + @SerializedName("digital_goods") + DIGITAL_GOODS("digital_goods"), + + @SerializedName("donation") + DONATION("donation"), + + @SerializedName("physical_goods") + PHYSICAL_GOODS("physical_goods"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + Category(String value) { + this.value = value; + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Tax { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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 total tax on an item. Non-negative integer. */ + @SerializedName("total_tax_amount") + Long totalTaxAmount; + + private Tax(Map extraParams, Long totalTaxAmount) { + this.extraParams = extraParams; + this.totalTaxAmount = totalTaxAmount; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Long totalTaxAmount; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentIncrementAuthorizationParams.AmountDetails.LineItem.Tax build() { + return new PaymentIntentIncrementAuthorizationParams.AmountDetails.LineItem.Tax( + this.extraParams, this.totalTaxAmount); + } + + /** + * Add a key/value pair to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link + * PaymentIntentIncrementAuthorizationParams.AmountDetails.LineItem.Tax#extraParams} for + * the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link + * PaymentIntentIncrementAuthorizationParams.AmountDetails.LineItem.Tax#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 total tax on an item. Non-negative integer. */ + public Builder setTotalTaxAmount(Long totalTaxAmount) { + this.totalTaxAmount = totalTaxAmount; + return this; + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Shipping { + /** Portion of the amount that is for shipping. */ + @SerializedName("amount") + Object amount; + + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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 postal code that represents the shipping source. */ + @SerializedName("from_postal_code") + Object fromPostalCode; + + /** The postal code that represents the shipping destination. */ + @SerializedName("to_postal_code") + Object toPostalCode; + + private Shipping( + Object amount, + Map extraParams, + Object fromPostalCode, + Object toPostalCode) { + this.amount = amount; + this.extraParams = extraParams; + this.fromPostalCode = fromPostalCode; + this.toPostalCode = toPostalCode; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Object amount; + + private Map extraParams; + + private Object fromPostalCode; + + private Object toPostalCode; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentIncrementAuthorizationParams.AmountDetails.Shipping build() { + return new PaymentIntentIncrementAuthorizationParams.AmountDetails.Shipping( + this.amount, this.extraParams, this.fromPostalCode, this.toPostalCode); + } + + /** Portion of the amount that is for shipping. */ + public Builder setAmount(Long amount) { + this.amount = amount; + return this; + } + + /** Portion of the amount that is for shipping. */ + public Builder setAmount(EmptyParam amount) { + this.amount = amount; + 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 + * PaymentIntentIncrementAuthorizationParams.AmountDetails.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 + * PaymentIntentIncrementAuthorizationParams.AmountDetails.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; + } + + /** The postal code that represents the shipping source. */ + public Builder setFromPostalCode(String fromPostalCode) { + this.fromPostalCode = fromPostalCode; + return this; + } + + /** The postal code that represents the shipping source. */ + public Builder setFromPostalCode(EmptyParam fromPostalCode) { + this.fromPostalCode = fromPostalCode; + return this; + } + + /** The postal code that represents the shipping destination. */ + public Builder setToPostalCode(String toPostalCode) { + this.toPostalCode = toPostalCode; + return this; + } + + /** The postal code that represents the shipping destination. */ + public Builder setToPostalCode(EmptyParam toPostalCode) { + this.toPostalCode = toPostalCode; + return this; + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Tax { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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. Total portion of the amount that is for tax. */ + @SerializedName("total_tax_amount") + Long totalTaxAmount; + + private Tax(Map extraParams, Long totalTaxAmount) { + this.extraParams = extraParams; + this.totalTaxAmount = totalTaxAmount; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Long totalTaxAmount; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentIncrementAuthorizationParams.AmountDetails.Tax build() { + return new PaymentIntentIncrementAuthorizationParams.AmountDetails.Tax( + this.extraParams, this.totalTaxAmount); + } + + /** + * Add a key/value pair to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link PaymentIntentIncrementAuthorizationParams.AmountDetails.Tax#extraParams} + * for the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link PaymentIntentIncrementAuthorizationParams.AmountDetails.Tax#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. Total portion of the amount that is for tax. */ + public Builder setTotalTaxAmount(Long totalTaxAmount) { + this.totalTaxAmount = totalTaxAmount; + return this; + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Hooks { + /** + * Map of extra parameters for custom features not available in this client library. The content + * in this map is not serialized under this field's {@code @SerializedName} value. Instead, each + * key/value pair is serialized as if the key is a root-level field (serialized) name in this + * param object. Effectively, this map is flattened to its parent instance. + */ + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** Arguments passed in automations. */ + @SerializedName("inputs") + Inputs inputs; + + private Hooks(Map extraParams, Inputs inputs) { + this.extraParams = extraParams; + this.inputs = inputs; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Inputs inputs; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentIncrementAuthorizationParams.Hooks build() { + return new PaymentIntentIncrementAuthorizationParams.Hooks(this.extraParams, this.inputs); + } + + /** + * Add a key/value pair to `extraParams` map. A map is initialized for the first `put/putAll` + * call, and subsequent calls add additional key/value pairs to the original map. See {@link + * PaymentIntentIncrementAuthorizationParams.Hooks#extraParams} for the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original map. + * See {@link PaymentIntentIncrementAuthorizationParams.Hooks#extraParams} for the field + * documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Arguments passed in automations. */ + public Builder setInputs(PaymentIntentIncrementAuthorizationParams.Hooks.Inputs inputs) { + this.inputs = inputs; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Inputs { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-level field (serialized) + * name in this param object. Effectively, this map is flattened to its parent instance. + */ + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** Tax arguments for automations. */ + @SerializedName("tax") + Tax tax; + + private Inputs(Map extraParams, Tax tax) { + this.extraParams = extraParams; + this.tax = tax; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Tax tax; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentIncrementAuthorizationParams.Hooks.Inputs build() { + return new PaymentIntentIncrementAuthorizationParams.Hooks.Inputs( + this.extraParams, this.tax); + } + + /** + * Add a key/value pair to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link PaymentIntentIncrementAuthorizationParams.Hooks.Inputs#extraParams} for + * the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link PaymentIntentIncrementAuthorizationParams.Hooks.Inputs#extraParams} for + * the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Tax arguments for automations. */ + public Builder setTax(PaymentIntentIncrementAuthorizationParams.Hooks.Inputs.Tax tax) { + this.tax = tax; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Tax { + /** + * Required. The TaxCalculation id + */ + @SerializedName("calculation") + Object calculation; + + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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 Tax(Object calculation, Map extraParams) { + this.calculation = calculation; + this.extraParams = extraParams; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Object calculation; + + private Map extraParams; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentIncrementAuthorizationParams.Hooks.Inputs.Tax build() { + return new PaymentIntentIncrementAuthorizationParams.Hooks.Inputs.Tax( + this.calculation, this.extraParams); + } + + /** + * Required. The TaxCalculation id + */ + public Builder setCalculation(String calculation) { + this.calculation = calculation; + return this; + } + + /** + * Required. The TaxCalculation id + */ + public Builder setCalculation(EmptyParam calculation) { + this.calculation = calculation; + 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 PaymentIntentIncrementAuthorizationParams.Hooks.Inputs.Tax#extraParams} + * for the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link PaymentIntentIncrementAuthorizationParams.Hooks.Inputs.Tax#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 PaymentDetails { + /** + * Some customers might be required by their company or organization to provide this + * information. If so, provide this value. Otherwise you can ignore this field. + */ + @SerializedName("customer_reference") + Object customerReference; + + /** + * Map of extra parameters for custom features not available in this client library. The content + * in this map is not serialized under this field's {@code @SerializedName} value. Instead, each + * key/value pair is serialized as if the key is a root-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 unique value assigned by the business to identify the transaction. */ + @SerializedName("order_reference") + Object orderReference; + + private PaymentDetails( + Object customerReference, Map extraParams, Object orderReference) { + this.customerReference = customerReference; + this.extraParams = extraParams; + this.orderReference = orderReference; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Object customerReference; + + private Map extraParams; + + private Object orderReference; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentIncrementAuthorizationParams.PaymentDetails build() { + return new PaymentIntentIncrementAuthorizationParams.PaymentDetails( + this.customerReference, this.extraParams, this.orderReference); + } + + /** + * Some customers might be required by their company or organization to provide this + * information. If so, provide this value. Otherwise you can ignore this field. + */ + public Builder setCustomerReference(String customerReference) { + this.customerReference = customerReference; + return this; + } + + /** + * Some customers might be required by their company or organization to provide this + * information. If so, provide this value. Otherwise you can ignore this field. + */ + public Builder setCustomerReference(EmptyParam customerReference) { + this.customerReference = customerReference; + 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 + * PaymentIntentIncrementAuthorizationParams.PaymentDetails#extraParams} for the field + * documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original map. + * See {@link PaymentIntentIncrementAuthorizationParams.PaymentDetails#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 unique value assigned by the business to identify the transaction. */ + public Builder setOrderReference(String orderReference) { + this.orderReference = orderReference; + return this; + } + + /** A unique value assigned by the business to identify the transaction. */ + public Builder setOrderReference(EmptyParam orderReference) { + this.orderReference = orderReference; + return this; } } } diff --git a/src/main/java/com/stripe/param/PaymentIntentUpdateParams.java b/src/main/java/com/stripe/param/PaymentIntentUpdateParams.java index bbe925a55c2..85b5f63397c 100644 --- a/src/main/java/com/stripe/param/PaymentIntentUpdateParams.java +++ b/src/main/java/com/stripe/param/PaymentIntentUpdateParams.java @@ -26,6 +26,10 @@ public class PaymentIntentUpdateParams extends ApiRequestParams { @SerializedName("amount") Long amount; + /** Provides industry-specific information about the amount. */ + @SerializedName("amount_details") + Object amountDetails; + /** * The amount of the application fee (if any) that will be requested to be applied to the payment * and transferred to the application owner's Stripe account. The amount of the application fee @@ -237,6 +241,7 @@ public class PaymentIntentUpdateParams extends ApiRequestParams { private PaymentIntentUpdateParams( Long amount, + Object amountDetails, Object applicationFeeAmount, CaptureMethod captureMethod, Object currency, @@ -263,6 +268,7 @@ private PaymentIntentUpdateParams( TransferData transferData, Object transferGroup) { this.amount = amount; + this.amountDetails = amountDetails; this.applicationFeeAmount = applicationFeeAmount; this.captureMethod = captureMethod; this.currency = currency; @@ -297,6 +303,8 @@ public static Builder builder() { public static class Builder { private Long amount; + private Object amountDetails; + private Object applicationFeeAmount; private CaptureMethod captureMethod; @@ -351,6 +359,7 @@ public static class Builder { public PaymentIntentUpdateParams build() { return new PaymentIntentUpdateParams( this.amount, + this.amountDetails, this.applicationFeeAmount, this.captureMethod, this.currency, @@ -392,6 +401,18 @@ public Builder setAmount(Long amount) { return this; } + /** Provides industry-specific information about the amount. */ + public Builder setAmountDetails(PaymentIntentUpdateParams.AmountDetails amountDetails) { + this.amountDetails = amountDetails; + return this; + } + + /** Provides industry-specific information about the amount. */ + public Builder setAmountDetails(EmptyParam amountDetails) { + this.amountDetails = amountDetails; + return this; + } + /** * The amount of the application fee (if any) that will be requested to be applied to the * payment and transferred to the application owner's Stripe account. The amount of the @@ -923,6 +944,1243 @@ public Builder setTransferGroup(EmptyParam transferGroup) { } } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class AmountDetails { + /** The amount an item was discounted for. */ + @SerializedName("discount_amount") + Object discountAmount; + + /** + * Map of extra parameters for custom features not available in this client library. The content + * in this map is not serialized under this field's {@code @SerializedName} value. Instead, each + * key/value pair is serialized as if the key is a root-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 list of line items, each containing information about a product in the PaymentIntent. There + * is a maximum of 100 line items. + */ + @SerializedName("line_items") + Object lineItems; + + /** Contains information about the shipping portion of the amount. */ + @SerializedName("shipping") + Object shipping; + + /** Contains information about the tax portion of the amount. */ + @SerializedName("tax") + Object tax; + + private AmountDetails( + Object discountAmount, + Map extraParams, + Object lineItems, + Object shipping, + Object tax) { + this.discountAmount = discountAmount; + this.extraParams = extraParams; + this.lineItems = lineItems; + this.shipping = shipping; + this.tax = tax; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Object discountAmount; + + private Map extraParams; + + private Object lineItems; + + private Object shipping; + + private Object tax; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentUpdateParams.AmountDetails build() { + return new PaymentIntentUpdateParams.AmountDetails( + this.discountAmount, this.extraParams, this.lineItems, this.shipping, this.tax); + } + + /** The amount an item was discounted for. */ + public Builder setDiscountAmount(Long discountAmount) { + this.discountAmount = discountAmount; + return this; + } + + /** The amount an item was discounted for. */ + public Builder setDiscountAmount(EmptyParam discountAmount) { + this.discountAmount = discountAmount; + 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.AmountDetails#extraParams} for the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. 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.AmountDetails#extraParams} for the field + * documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** + * Add an element to `lineItems` list. A list is initialized for the first `add/addAll` call, + * and subsequent calls adds additional elements to the original list. See {@link + * PaymentIntentUpdateParams.AmountDetails#lineItems} for the field documentation. + */ + @SuppressWarnings("unchecked") + public Builder addLineItem(PaymentIntentUpdateParams.AmountDetails.LineItem element) { + if (this.lineItems == null || this.lineItems instanceof EmptyParam) { + this.lineItems = new ArrayList(); + } + ((List) this.lineItems).add(element); + return this; + } + + /** + * Add all elements 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 + * PaymentIntentUpdateParams.AmountDetails#lineItems} for the field documentation. + */ + @SuppressWarnings("unchecked") + public Builder addAllLineItem( + List elements) { + if (this.lineItems == null || this.lineItems instanceof EmptyParam) { + this.lineItems = new ArrayList(); + } + ((List) this.lineItems).addAll(elements); + return this; + } + + /** + * A list of line items, each containing information about a product in the PaymentIntent. + * There is a maximum of 100 line items. + */ + public Builder setLineItems(EmptyParam lineItems) { + this.lineItems = lineItems; + return this; + } + + /** + * A list of line items, each containing information about a product in the PaymentIntent. + * There is a maximum of 100 line items. + */ + public Builder setLineItems( + List lineItems) { + this.lineItems = lineItems; + return this; + } + + /** Contains information about the shipping portion of the amount. */ + public Builder setShipping(PaymentIntentUpdateParams.AmountDetails.Shipping shipping) { + this.shipping = shipping; + return this; + } + + /** Contains information about the shipping portion of the amount. */ + public Builder setShipping(EmptyParam shipping) { + this.shipping = shipping; + return this; + } + + /** Contains information about the tax portion of the amount. */ + public Builder setTax(PaymentIntentUpdateParams.AmountDetails.Tax tax) { + this.tax = tax; + return this; + } + + /** Contains information about the tax portion of the amount. */ + public Builder setTax(EmptyParam tax) { + this.tax = tax; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class LineItem { + /** The amount an item was discounted for. Positive integer. */ + @SerializedName("discount_amount") + Long discountAmount; + + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-level field (serialized) + * name in this param object. Effectively, this map is flattened to its parent instance. + */ + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** Payment method-specific information for line items. */ + @SerializedName("payment_method_options") + PaymentMethodOptions paymentMethodOptions; + + /** Unique identifier of the product. At most 12 characters long. */ + @SerializedName("product_code") + Object productCode; + + /** Required. Name of the product. At most 100 characters long. */ + @SerializedName("product_name") + Object productName; + + /** Required. Number of items of the product. Positive integer. */ + @SerializedName("quantity") + Long quantity; + + /** Contains information about the tax on the item. */ + @SerializedName("tax") + Tax tax; + + /** Required. Cost of the product. Non-negative integer. */ + @SerializedName("unit_cost") + Long unitCost; + + /** A unit of measure for the line item, such as gallons, feet, meters, etc. */ + @SerializedName("unit_of_measure") + Object unitOfMeasure; + + private LineItem( + Long discountAmount, + Map extraParams, + PaymentMethodOptions paymentMethodOptions, + Object productCode, + Object productName, + Long quantity, + Tax tax, + Long unitCost, + Object unitOfMeasure) { + this.discountAmount = discountAmount; + this.extraParams = extraParams; + this.paymentMethodOptions = paymentMethodOptions; + this.productCode = productCode; + this.productName = productName; + this.quantity = quantity; + this.tax = tax; + this.unitCost = unitCost; + this.unitOfMeasure = unitOfMeasure; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Long discountAmount; + + private Map extraParams; + + private PaymentMethodOptions paymentMethodOptions; + + private Object productCode; + + private Object productName; + + private Long quantity; + + private Tax tax; + + private Long unitCost; + + private Object unitOfMeasure; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentUpdateParams.AmountDetails.LineItem build() { + return new PaymentIntentUpdateParams.AmountDetails.LineItem( + this.discountAmount, + this.extraParams, + this.paymentMethodOptions, + this.productCode, + this.productName, + this.quantity, + this.tax, + this.unitCost, + this.unitOfMeasure); + } + + /** The amount an item was discounted for. Positive integer. */ + public Builder setDiscountAmount(Long discountAmount) { + this.discountAmount = discountAmount; + 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.AmountDetails.LineItem#extraParams} for the + * field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. 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.AmountDetails.LineItem#extraParams} for the + * field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Payment method-specific information for line items. */ + public Builder setPaymentMethodOptions( + PaymentIntentUpdateParams.AmountDetails.LineItem.PaymentMethodOptions + paymentMethodOptions) { + this.paymentMethodOptions = paymentMethodOptions; + return this; + } + + /** Unique identifier of the product. At most 12 characters long. */ + public Builder setProductCode(String productCode) { + this.productCode = productCode; + return this; + } + + /** Unique identifier of the product. At most 12 characters long. */ + public Builder setProductCode(EmptyParam productCode) { + this.productCode = productCode; + return this; + } + + /** Required. Name of the product. At most 100 characters long. */ + public Builder setProductName(String productName) { + this.productName = productName; + return this; + } + + /** Required. Name of the product. At most 100 characters long. */ + public Builder setProductName(EmptyParam productName) { + this.productName = productName; + return this; + } + + /** Required. Number of items of the product. Positive integer. */ + public Builder setQuantity(Long quantity) { + this.quantity = quantity; + return this; + } + + /** Contains information about the tax on the item. */ + public Builder setTax(PaymentIntentUpdateParams.AmountDetails.LineItem.Tax tax) { + this.tax = tax; + return this; + } + + /** Required. Cost of the product. Non-negative integer. */ + public Builder setUnitCost(Long unitCost) { + this.unitCost = unitCost; + return this; + } + + /** A unit of measure for the line item, such as gallons, feet, meters, etc. */ + public Builder setUnitOfMeasure(String unitOfMeasure) { + this.unitOfMeasure = unitOfMeasure; + return this; + } + + /** A unit of measure for the line item, such as gallons, feet, meters, etc. */ + public Builder setUnitOfMeasure(EmptyParam unitOfMeasure) { + this.unitOfMeasure = unitOfMeasure; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PaymentMethodOptions { + /** + * This sub-hash contains line item details that are specific to {@code card} payment + * method.". + */ + @SerializedName("card") + Card card; + + /** + * This sub-hash contains line item details that are specific to {@code card_present} + * payment method.". + */ + @SerializedName("card_present") + CardPresent cardPresent; + + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-level field + * (serialized) name in this param object. Effectively, this map is flattened to its parent + * instance. + */ + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** + * This sub-hash contains line item details that are specific to {@code klarna} payment + * method.". + */ + @SerializedName("klarna") + Klarna klarna; + + /** + * This sub-hash contains line item details that are specific to {@code paypal} payment + * method.". + */ + @SerializedName("paypal") + Paypal paypal; + + private PaymentMethodOptions( + Card card, + CardPresent cardPresent, + Map extraParams, + Klarna klarna, + Paypal paypal) { + this.card = card; + this.cardPresent = cardPresent; + this.extraParams = extraParams; + this.klarna = klarna; + this.paypal = paypal; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Card card; + + private CardPresent cardPresent; + + private Map extraParams; + + private Klarna klarna; + + private Paypal paypal; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentUpdateParams.AmountDetails.LineItem.PaymentMethodOptions build() { + return new PaymentIntentUpdateParams.AmountDetails.LineItem.PaymentMethodOptions( + this.card, this.cardPresent, this.extraParams, this.klarna, this.paypal); + } + + /** + * This sub-hash contains line item details that are specific to {@code card} payment + * method.". + */ + public Builder setCard( + PaymentIntentUpdateParams.AmountDetails.LineItem.PaymentMethodOptions.Card card) { + this.card = card; + return this; + } + + /** + * This sub-hash contains line item details that are specific to {@code card_present} + * payment method.". + */ + public Builder setCardPresent( + PaymentIntentUpdateParams.AmountDetails.LineItem.PaymentMethodOptions.CardPresent + cardPresent) { + this.cardPresent = cardPresent; + 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.AmountDetails.LineItem.PaymentMethodOptions#extraParams} for + * the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. 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.AmountDetails.LineItem.PaymentMethodOptions#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 sub-hash contains line item details that are specific to {@code klarna} payment + * method.". + */ + public Builder setKlarna( + PaymentIntentUpdateParams.AmountDetails.LineItem.PaymentMethodOptions.Klarna klarna) { + this.klarna = klarna; + return this; + } + + /** + * This sub-hash contains line item details that are specific to {@code paypal} payment + * method.". + */ + public Builder setPaypal( + PaymentIntentUpdateParams.AmountDetails.LineItem.PaymentMethodOptions.Paypal paypal) { + this.paypal = paypal; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Card { + /** + * Identifier that categorizes the items being purchased using a standardized commodity + * scheme such as (but not limited to) UNSPSC, NAICS, NAPCS, etc. + */ + @SerializedName("commodity_code") + Object commodityCode; + + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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(Object commodityCode, Map extraParams) { + this.commodityCode = commodityCode; + this.extraParams = extraParams; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Object commodityCode; + + private Map extraParams; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentUpdateParams.AmountDetails.LineItem.PaymentMethodOptions.Card + build() { + return new PaymentIntentUpdateParams.AmountDetails.LineItem.PaymentMethodOptions.Card( + this.commodityCode, this.extraParams); + } + + /** + * Identifier that categorizes the items being purchased using a standardized commodity + * scheme such as (but not limited to) UNSPSC, NAICS, NAPCS, etc. + */ + public Builder setCommodityCode(String commodityCode) { + this.commodityCode = commodityCode; + return this; + } + + /** + * Identifier that categorizes the items being purchased using a standardized commodity + * scheme such as (but not limited to) UNSPSC, NAICS, NAPCS, etc. + */ + public Builder setCommodityCode(EmptyParam commodityCode) { + this.commodityCode = commodityCode; + 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.AmountDetails.LineItem.PaymentMethodOptions.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 + * PaymentIntentUpdateParams.AmountDetails.LineItem.PaymentMethodOptions.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 CardPresent { + /** + * Identifier that categorizes the items being purchased using a standardized commodity + * scheme such as (but not limited to) UNSPSC, NAICS, NAPCS, etc. + */ + @SerializedName("commodity_code") + Object commodityCode; + + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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 CardPresent(Object commodityCode, Map extraParams) { + this.commodityCode = commodityCode; + this.extraParams = extraParams; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Object commodityCode; + + private Map extraParams; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentUpdateParams.AmountDetails.LineItem.PaymentMethodOptions.CardPresent + build() { + return new PaymentIntentUpdateParams.AmountDetails.LineItem.PaymentMethodOptions + .CardPresent(this.commodityCode, this.extraParams); + } + + /** + * Identifier that categorizes the items being purchased using a standardized commodity + * scheme such as (but not limited to) UNSPSC, NAICS, NAPCS, etc. + */ + public Builder setCommodityCode(String commodityCode) { + this.commodityCode = commodityCode; + return this; + } + + /** + * Identifier that categorizes the items being purchased using a standardized commodity + * scheme such as (but not limited to) UNSPSC, NAICS, NAPCS, etc. + */ + public Builder setCommodityCode(EmptyParam commodityCode) { + this.commodityCode = commodityCode; + 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.AmountDetails.LineItem.PaymentMethodOptions.CardPresent#extraParams} + * for the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. 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.AmountDetails.LineItem.PaymentMethodOptions.CardPresent#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 Klarna { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-level field + * (serialized) name in this param object. Effectively, this map is flattened to its + * parent instance. + */ + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** URL to an image for the product. Max length, 4096 characters. */ + @SerializedName("image_url") + Object imageUrl; + + /** URL to the product page. Max length, 4096 characters. */ + @SerializedName("product_url") + Object productUrl; + + /** Reference for the subscription this line item is for. */ + @SerializedName("subscription_reference") + Object subscriptionReference; + + private Klarna( + Map extraParams, + Object imageUrl, + Object productUrl, + Object subscriptionReference) { + this.extraParams = extraParams; + this.imageUrl = imageUrl; + this.productUrl = productUrl; + this.subscriptionReference = subscriptionReference; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Object imageUrl; + + private Object productUrl; + + private Object subscriptionReference; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentUpdateParams.AmountDetails.LineItem.PaymentMethodOptions.Klarna + build() { + return new PaymentIntentUpdateParams.AmountDetails.LineItem.PaymentMethodOptions + .Klarna( + this.extraParams, this.imageUrl, this.productUrl, this.subscriptionReference); + } + + /** + * Add a key/value pair to `extraParams` map. 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.AmountDetails.LineItem.PaymentMethodOptions.Klarna#extraParams} + * for the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. 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.AmountDetails.LineItem.PaymentMethodOptions.Klarna#extraParams} + * for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** URL to an image for the product. Max length, 4096 characters. */ + public Builder setImageUrl(String imageUrl) { + this.imageUrl = imageUrl; + return this; + } + + /** URL to an image for the product. Max length, 4096 characters. */ + public Builder setImageUrl(EmptyParam imageUrl) { + this.imageUrl = imageUrl; + return this; + } + + /** URL to the product page. Max length, 4096 characters. */ + public Builder setProductUrl(String productUrl) { + this.productUrl = productUrl; + return this; + } + + /** URL to the product page. Max length, 4096 characters. */ + public Builder setProductUrl(EmptyParam productUrl) { + this.productUrl = productUrl; + return this; + } + + /** Reference for the subscription this line item is for. */ + public Builder setSubscriptionReference(String subscriptionReference) { + this.subscriptionReference = subscriptionReference; + return this; + } + + /** Reference for the subscription this line item is for. */ + public Builder setSubscriptionReference(EmptyParam subscriptionReference) { + this.subscriptionReference = subscriptionReference; + return this; + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Paypal { + /** Type of the line item. */ + @SerializedName("category") + Category category; + + /** Description of the line item. */ + @SerializedName("description") + Object description; + + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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 Stripe account ID of the connected account that sells the item. */ + @SerializedName("sold_by") + Object soldBy; + + private Paypal( + Category category, + Object description, + Map extraParams, + Object soldBy) { + this.category = category; + this.description = description; + this.extraParams = extraParams; + this.soldBy = soldBy; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Category category; + + private Object description; + + private Map extraParams; + + private Object soldBy; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentUpdateParams.AmountDetails.LineItem.PaymentMethodOptions.Paypal + build() { + return new PaymentIntentUpdateParams.AmountDetails.LineItem.PaymentMethodOptions + .Paypal(this.category, this.description, this.extraParams, this.soldBy); + } + + /** Type of the line item. */ + public Builder setCategory( + PaymentIntentUpdateParams.AmountDetails.LineItem.PaymentMethodOptions.Paypal + .Category + category) { + this.category = category; + return this; + } + + /** Description of the line item. */ + public Builder setDescription(String description) { + this.description = description; + return this; + } + + /** Description of the line item. */ + public Builder setDescription(EmptyParam description) { + this.description = description; + 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.AmountDetails.LineItem.PaymentMethodOptions.Paypal#extraParams} + * for the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. 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.AmountDetails.LineItem.PaymentMethodOptions.Paypal#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 Stripe account ID of the connected account that sells the item. */ + public Builder setSoldBy(String soldBy) { + this.soldBy = soldBy; + return this; + } + + /** The Stripe account ID of the connected account that sells the item. */ + public Builder setSoldBy(EmptyParam soldBy) { + this.soldBy = soldBy; + return this; + } + } + + public enum Category implements ApiRequestParams.EnumParam { + @SerializedName("digital_goods") + DIGITAL_GOODS("digital_goods"), + + @SerializedName("donation") + DONATION("donation"), + + @SerializedName("physical_goods") + PHYSICAL_GOODS("physical_goods"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + Category(String value) { + this.value = value; + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Tax { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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 total tax on an item. Non-negative integer. */ + @SerializedName("total_tax_amount") + Long totalTaxAmount; + + private Tax(Map extraParams, Long totalTaxAmount) { + this.extraParams = extraParams; + this.totalTaxAmount = totalTaxAmount; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Long totalTaxAmount; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentUpdateParams.AmountDetails.LineItem.Tax build() { + return new PaymentIntentUpdateParams.AmountDetails.LineItem.Tax( + this.extraParams, this.totalTaxAmount); + } + + /** + * Add a key/value pair to `extraParams` map. 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.AmountDetails.LineItem.Tax#extraParams} for + * the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. 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.AmountDetails.LineItem.Tax#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 total tax on an item. Non-negative integer. */ + public Builder setTotalTaxAmount(Long totalTaxAmount) { + this.totalTaxAmount = totalTaxAmount; + return this; + } + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Shipping { + /** Portion of the amount that is for shipping. */ + @SerializedName("amount") + Object amount; + + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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 postal code that represents the shipping source. */ + @SerializedName("from_postal_code") + Object fromPostalCode; + + /** The postal code that represents the shipping destination. */ + @SerializedName("to_postal_code") + Object toPostalCode; + + private Shipping( + Object amount, + Map extraParams, + Object fromPostalCode, + Object toPostalCode) { + this.amount = amount; + this.extraParams = extraParams; + this.fromPostalCode = fromPostalCode; + this.toPostalCode = toPostalCode; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Object amount; + + private Map extraParams; + + private Object fromPostalCode; + + private Object toPostalCode; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentUpdateParams.AmountDetails.Shipping build() { + return new PaymentIntentUpdateParams.AmountDetails.Shipping( + this.amount, this.extraParams, this.fromPostalCode, this.toPostalCode); + } + + /** Portion of the amount that is for shipping. */ + public Builder setAmount(Long amount) { + this.amount = amount; + return this; + } + + /** Portion of the amount that is for shipping. */ + public Builder setAmount(EmptyParam amount) { + this.amount = amount; + 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.AmountDetails.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 PaymentIntentUpdateParams.AmountDetails.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; + } + + /** The postal code that represents the shipping source. */ + public Builder setFromPostalCode(String fromPostalCode) { + this.fromPostalCode = fromPostalCode; + return this; + } + + /** The postal code that represents the shipping source. */ + public Builder setFromPostalCode(EmptyParam fromPostalCode) { + this.fromPostalCode = fromPostalCode; + return this; + } + + /** The postal code that represents the shipping destination. */ + public Builder setToPostalCode(String toPostalCode) { + this.toPostalCode = toPostalCode; + return this; + } + + /** The postal code that represents the shipping destination. */ + public Builder setToPostalCode(EmptyParam toPostalCode) { + this.toPostalCode = toPostalCode; + return this; + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Tax { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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. Total portion of the amount that is for tax. */ + @SerializedName("total_tax_amount") + Long totalTaxAmount; + + private Tax(Map extraParams, Long totalTaxAmount) { + this.extraParams = extraParams; + this.totalTaxAmount = totalTaxAmount; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Long totalTaxAmount; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentIntentUpdateParams.AmountDetails.Tax build() { + return new PaymentIntentUpdateParams.AmountDetails.Tax( + this.extraParams, this.totalTaxAmount); + } + + /** + * Add a key/value pair to `extraParams` map. 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.AmountDetails.Tax#extraParams} for the field + * documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. 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.AmountDetails.Tax#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. Total portion of the amount that is for tax. */ + public Builder setTotalTaxAmount(Long totalTaxAmount) { + this.totalTaxAmount = totalTaxAmount; + return this; + } + } + } + } + @Getter @EqualsAndHashCode(callSuper = false) public static class Hooks { @@ -17312,7 +18570,7 @@ public static class Card { Map extraParams; /** - * Installment configuration for payments attempted on this PaymentIntent (Mexico Only). + * Installment configuration for payments attempted on this PaymentIntent. * *

For more information, see the installments integration guide. @@ -17655,7 +18913,7 @@ public Builder putAllExtraParam(Map map) { } /** - * Installment configuration for payments attempted on this PaymentIntent (Mexico Only). + * Installment configuration for payments attempted on this PaymentIntent. * *

For more information, see the installments integration guide. diff --git a/src/main/java/com/stripe/param/PaymentLinkCreateParams.java b/src/main/java/com/stripe/param/PaymentLinkCreateParams.java index ae602bd0c51..425ac2a0cff 100644 --- a/src/main/java/com/stripe/param/PaymentLinkCreateParams.java +++ b/src/main/java/com/stripe/param/PaymentLinkCreateParams.java @@ -3292,10 +3292,17 @@ public static class RenderingOptions { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** ID of the invoice rendering template to use for this invoice. */ + @SerializedName("template") + String template; + private RenderingOptions( - ApiRequestParams.EnumParam amountTaxDisplay, Map extraParams) { + ApiRequestParams.EnumParam amountTaxDisplay, + Map extraParams, + String template) { this.amountTaxDisplay = amountTaxDisplay; this.extraParams = extraParams; + this.template = template; } public static Builder builder() { @@ -3307,10 +3314,12 @@ public static class Builder { private Map extraParams; + private String template; + /** Finalize and obtain parameter instance from this builder. */ public PaymentLinkCreateParams.InvoiceCreation.InvoiceData.RenderingOptions build() { return new PaymentLinkCreateParams.InvoiceCreation.InvoiceData.RenderingOptions( - this.amountTaxDisplay, this.extraParams); + this.amountTaxDisplay, this.extraParams, this.template); } /** @@ -3368,6 +3377,12 @@ public Builder putAllExtraParam(Map map) { this.extraParams.putAll(map); return this; } + + /** ID of the invoice rendering template to use for this invoice. */ + public Builder setTemplate(String template) { + this.template = template; + return this; + } } public enum AmountTaxDisplay implements ApiRequestParams.EnumParam { @@ -3408,13 +3423,19 @@ public static class LineItem { Map extraParams; /** - * Required. The ID of the Price or Price or Plan object. */ @SerializedName("price") String price; + /** + * Data used to generate a new Price object + * inline. One of {@code price} or {@code price_data} is required. + */ + @SerializedName("price_data") + PriceData priceData; + /** Required. The quantity of the line item being purchased. */ @SerializedName("quantity") Long quantity; @@ -3423,10 +3444,12 @@ private LineItem( AdjustableQuantity adjustableQuantity, Map extraParams, String price, + PriceData priceData, Long quantity) { this.adjustableQuantity = adjustableQuantity; this.extraParams = extraParams; this.price = price; + this.priceData = priceData; this.quantity = quantity; } @@ -3441,12 +3464,14 @@ public static class Builder { private String price; + private PriceData priceData; + private Long quantity; /** Finalize and obtain parameter instance from this builder. */ public PaymentLinkCreateParams.LineItem build() { return new PaymentLinkCreateParams.LineItem( - this.adjustableQuantity, this.extraParams, this.price, this.quantity); + this.adjustableQuantity, this.extraParams, this.price, this.priceData, this.quantity); } /** @@ -3486,8 +3511,7 @@ public Builder putAllExtraParam(Map map) { } /** - * Required. The ID of the Price or Price or Plan object. */ public Builder setPrice(String price) { @@ -3495,6 +3519,15 @@ public Builder setPrice(String price) { return this; } + /** + * Data used to generate a new Price object + * inline. One of {@code price} or {@code price_data} is required. + */ + public Builder setPriceData(PaymentLinkCreateParams.LineItem.PriceData priceData) { + this.priceData = priceData; + return this; + } + /** Required. The quantity of the line item being purchased. */ public Builder setQuantity(Long quantity) { this.quantity = quantity; @@ -3523,7 +3556,7 @@ public static class AdjustableQuantity { /** * The maximum quantity the customer can purchase. By default this value is 99. You can - * specify a value up to 999. + * specify a value up to 999999. */ @SerializedName("maximum") Long maximum; @@ -3601,7 +3634,7 @@ public Builder putAllExtraParam(Map map) { /** * The maximum quantity the customer can purchase. By default this value is 99. You can - * specify a value up to 999. + * specify a value up to 999999. */ public Builder setMaximum(Long maximum) { this.maximum = maximum; @@ -3618,6 +3651,568 @@ public Builder setMinimum(Long minimum) { } } } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class PriceData { + /** + * Required. Three-letter ISO currency code, in + * lowercase. Must be a supported currency. + */ + @SerializedName("currency") + String currency; + + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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 ID of the Product that this Price will belong to. One of {@code product} + * or {@code product_data} is required. + */ + @SerializedName("product") + String product; + + /** + * Data used to generate a new Product + * object inline. One of {@code product} or {@code product_data} is required. + */ + @SerializedName("product_data") + ProductData productData; + + /** + * The recurring components of a price such as {@code interval} and {@code interval_count}. + */ + @SerializedName("recurring") + Recurring recurring; + + /** + * Only required if a default + * tax behavior was not provided in the Stripe Tax settings. Specifies whether the price + * is considered inclusive of taxes or exclusive of taxes. One of {@code inclusive}, {@code + * exclusive}, or {@code unspecified}. Once specified as either {@code inclusive} or {@code + * exclusive}, it cannot be changed. + */ + @SerializedName("tax_behavior") + TaxBehavior taxBehavior; + + /** + * A non-negative integer in cents (or local equivalent) representing how much to charge. One + * of {@code unit_amount} or {@code unit_amount_decimal} is required. + */ + @SerializedName("unit_amount") + Long unitAmount; + + /** + * Same as {@code unit_amount}, but accepts a decimal value in cents (or local equivalent) + * with at most 12 decimal places. Only one of {@code unit_amount} and {@code + * unit_amount_decimal} can be set. + */ + @SerializedName("unit_amount_decimal") + BigDecimal unitAmountDecimal; + + private PriceData( + String currency, + Map extraParams, + String product, + ProductData productData, + Recurring recurring, + TaxBehavior taxBehavior, + Long unitAmount, + BigDecimal unitAmountDecimal) { + this.currency = currency; + this.extraParams = extraParams; + this.product = product; + this.productData = productData; + this.recurring = recurring; + this.taxBehavior = taxBehavior; + this.unitAmount = unitAmount; + this.unitAmountDecimal = unitAmountDecimal; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private String currency; + + private Map extraParams; + + private String product; + + private ProductData productData; + + private Recurring recurring; + + private TaxBehavior taxBehavior; + + private Long unitAmount; + + private BigDecimal unitAmountDecimal; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentLinkCreateParams.LineItem.PriceData build() { + return new PaymentLinkCreateParams.LineItem.PriceData( + this.currency, + this.extraParams, + this.product, + this.productData, + this.recurring, + this.taxBehavior, + this.unitAmount, + this.unitAmountDecimal); + } + + /** + * Required. Three-letter ISO currency code, in + * lowercase. Must be a supported currency. + */ + public Builder setCurrency(String currency) { + this.currency = currency; + 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 PaymentLinkCreateParams.LineItem.PriceData#extraParams} for the field + * documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link PaymentLinkCreateParams.LineItem.PriceData#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 ID of the Product that this Price will belong to. One of {@code + * product} or {@code product_data} is required. + */ + public Builder setProduct(String product) { + this.product = product; + return this; + } + + /** + * Data used to generate a new Product + * object inline. One of {@code product} or {@code product_data} is required. + */ + public Builder setProductData( + PaymentLinkCreateParams.LineItem.PriceData.ProductData productData) { + this.productData = productData; + return this; + } + + /** + * The recurring components of a price such as {@code interval} and {@code interval_count}. + */ + public Builder setRecurring( + PaymentLinkCreateParams.LineItem.PriceData.Recurring recurring) { + this.recurring = recurring; + return this; + } + + /** + * Only required if a default + * tax behavior was not provided in the Stripe Tax settings. Specifies whether the price + * is considered inclusive of taxes or exclusive of taxes. One of {@code inclusive}, {@code + * exclusive}, or {@code unspecified}. Once specified as either {@code inclusive} or {@code + * exclusive}, it cannot be changed. + */ + public Builder setTaxBehavior( + PaymentLinkCreateParams.LineItem.PriceData.TaxBehavior taxBehavior) { + this.taxBehavior = taxBehavior; + return this; + } + + /** + * A non-negative integer in cents (or local equivalent) representing how much to charge. + * One of {@code unit_amount} or {@code unit_amount_decimal} is required. + */ + public Builder setUnitAmount(Long unitAmount) { + this.unitAmount = unitAmount; + return this; + } + + /** + * Same as {@code unit_amount}, but accepts a decimal value in cents (or local equivalent) + * with at most 12 decimal places. Only one of {@code unit_amount} and {@code + * unit_amount_decimal} can be set. + */ + public Builder setUnitAmountDecimal(BigDecimal unitAmountDecimal) { + this.unitAmountDecimal = unitAmountDecimal; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class ProductData { + /** + * The product's description, meant to be displayable to the customer. Use this field to + * optionally store a long form explanation of the product being sold for your own rendering + * purposes. + */ + @SerializedName("description") + String description; + + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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 list of up to 8 URLs of images for this product, meant to be displayable to the + * customer. + */ + @SerializedName("images") + List images; + + /** + * Set of key-value pairs that you can + * attach to an object. This can be useful for storing additional information about the + * object in a structured format. Individual keys can be unset by posting an empty value to + * them. All keys can be unset by posting an empty value to {@code metadata}. + */ + @SerializedName("metadata") + Map metadata; + + /** + * Required. The product's name, meant to be displayable to the customer. + */ + @SerializedName("name") + String name; + + /** A tax code ID. */ + @SerializedName("tax_code") + String taxCode; + + private ProductData( + String description, + Map extraParams, + List images, + Map metadata, + String name, + String taxCode) { + this.description = description; + this.extraParams = extraParams; + this.images = images; + this.metadata = metadata; + this.name = name; + this.taxCode = taxCode; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private String description; + + private Map extraParams; + + private List images; + + private Map metadata; + + private String name; + + private String taxCode; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentLinkCreateParams.LineItem.PriceData.ProductData build() { + return new PaymentLinkCreateParams.LineItem.PriceData.ProductData( + this.description, + this.extraParams, + this.images, + this.metadata, + this.name, + this.taxCode); + } + + /** + * The product's description, meant to be displayable to the customer. Use this field to + * optionally store a long form explanation of the product being sold for your own + * rendering purposes. + */ + public Builder setDescription(String description) { + this.description = description; + 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 PaymentLinkCreateParams.LineItem.PriceData.ProductData#extraParams} for + * the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link PaymentLinkCreateParams.LineItem.PriceData.ProductData#extraParams} for + * the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** + * Add an element to `images` list. A list is initialized for the first `add/addAll` call, + * and subsequent calls adds additional elements to the original list. See {@link + * PaymentLinkCreateParams.LineItem.PriceData.ProductData#images} for the field + * documentation. + */ + public Builder addImage(String element) { + if (this.images == null) { + this.images = new ArrayList<>(); + } + this.images.add(element); + return this; + } + + /** + * Add all elements to `images` list. A list is initialized for the first `add/addAll` + * call, and subsequent calls adds additional elements to the original list. See {@link + * PaymentLinkCreateParams.LineItem.PriceData.ProductData#images} for the field + * documentation. + */ + public Builder addAllImage(List elements) { + if (this.images == null) { + this.images = new ArrayList<>(); + } + this.images.addAll(elements); + return this; + } + + /** + * Add a key/value pair to `metadata` map. A map is initialized for the first `put/putAll` + * call, and subsequent calls add additional key/value pairs to the original map. See + * {@link PaymentLinkCreateParams.LineItem.PriceData.ProductData#metadata} for the field + * documentation. + */ + public Builder putMetadata(String key, String value) { + if (this.metadata == null) { + this.metadata = new HashMap<>(); + } + this.metadata.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `metadata` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link PaymentLinkCreateParams.LineItem.PriceData.ProductData#metadata} for + * the field documentation. + */ + public Builder putAllMetadata(Map map) { + if (this.metadata == null) { + this.metadata = new HashMap<>(); + } + this.metadata.putAll(map); + return this; + } + + /** + * Required. The product's name, meant to be displayable to the customer. + */ + public Builder setName(String name) { + this.name = name; + return this; + } + + /** A tax code ID. */ + public Builder setTaxCode(String taxCode) { + this.taxCode = taxCode; + return this; + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Recurring { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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. Specifies billing frequency. Either {@code day}, {@code week}, + * {@code month} or {@code year}. + */ + @SerializedName("interval") + Interval interval; + + /** + * The number of intervals between subscription billings. For example, {@code + * interval=month} and {@code interval_count=3} bills every 3 months. Maximum of three years + * interval allowed (3 years, 36 months, or 156 weeks). + */ + @SerializedName("interval_count") + Long intervalCount; + + private Recurring(Map extraParams, Interval interval, Long intervalCount) { + this.extraParams = extraParams; + this.interval = interval; + this.intervalCount = intervalCount; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Interval interval; + + private Long intervalCount; + + /** Finalize and obtain parameter instance from this builder. */ + public PaymentLinkCreateParams.LineItem.PriceData.Recurring build() { + return new PaymentLinkCreateParams.LineItem.PriceData.Recurring( + this.extraParams, this.interval, this.intervalCount); + } + + /** + * Add a key/value pair to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link PaymentLinkCreateParams.LineItem.PriceData.Recurring#extraParams} for + * the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link PaymentLinkCreateParams.LineItem.PriceData.Recurring#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. Specifies billing frequency. Either {@code day}, {@code + * week}, {@code month} or {@code year}. + */ + public Builder setInterval( + PaymentLinkCreateParams.LineItem.PriceData.Recurring.Interval interval) { + this.interval = interval; + return this; + } + + /** + * The number of intervals between subscription billings. For example, {@code + * interval=month} and {@code interval_count=3} bills every 3 months. Maximum of three + * years interval allowed (3 years, 36 months, or 156 weeks). + */ + public Builder setIntervalCount(Long intervalCount) { + this.intervalCount = intervalCount; + return this; + } + } + + public enum Interval implements ApiRequestParams.EnumParam { + @SerializedName("day") + DAY("day"), + + @SerializedName("month") + MONTH("month"), + + @SerializedName("week") + WEEK("week"), + + @SerializedName("year") + YEAR("year"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + Interval(String value) { + this.value = value; + } + } + } + + public enum TaxBehavior implements ApiRequestParams.EnumParam { + @SerializedName("exclusive") + EXCLUSIVE("exclusive"), + + @SerializedName("inclusive") + INCLUSIVE("inclusive"), + + @SerializedName("unspecified") + UNSPECIFIED("unspecified"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + TaxBehavior(String value) { + this.value = value; + } + } + } } @Getter diff --git a/src/main/java/com/stripe/param/PaymentLinkUpdateParams.java b/src/main/java/com/stripe/param/PaymentLinkUpdateParams.java index dd9ae2aa959..19fe648506c 100644 --- a/src/main/java/com/stripe/param/PaymentLinkUpdateParams.java +++ b/src/main/java/com/stripe/param/PaymentLinkUpdateParams.java @@ -3047,10 +3047,17 @@ public static class RenderingOptions { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** ID of the invoice rendering template to use for this invoice. */ + @SerializedName("template") + Object template; + private RenderingOptions( - ApiRequestParams.EnumParam amountTaxDisplay, Map extraParams) { + ApiRequestParams.EnumParam amountTaxDisplay, + Map extraParams, + Object template) { this.amountTaxDisplay = amountTaxDisplay; this.extraParams = extraParams; + this.template = template; } public static Builder builder() { @@ -3062,10 +3069,12 @@ public static class Builder { private Map extraParams; + private Object template; + /** Finalize and obtain parameter instance from this builder. */ public PaymentLinkUpdateParams.InvoiceCreation.InvoiceData.RenderingOptions build() { return new PaymentLinkUpdateParams.InvoiceCreation.InvoiceData.RenderingOptions( - this.amountTaxDisplay, this.extraParams); + this.amountTaxDisplay, this.extraParams, this.template); } /** @@ -3123,6 +3132,18 @@ public Builder putAllExtraParam(Map map) { this.extraParams.putAll(map); return this; } + + /** ID of the invoice rendering template to use for this invoice. */ + public Builder setTemplate(String template) { + this.template = template; + return this; + } + + /** ID of the invoice rendering template to use for this invoice. */ + public Builder setTemplate(EmptyParam template) { + this.template = template; + return this; + } } public enum AmountTaxDisplay implements ApiRequestParams.EnumParam { @@ -3276,7 +3297,7 @@ public static class AdjustableQuantity { /** * The maximum quantity the customer can purchase. By default this value is 99. You can - * specify a value up to 999. + * specify a value up to 999999. */ @SerializedName("maximum") Long maximum; @@ -3354,7 +3375,7 @@ public Builder putAllExtraParam(Map map) { /** * The maximum quantity the customer can purchase. By default this value is 99. You can - * specify a value up to 999. + * specify a value up to 999999. */ public Builder setMaximum(Long maximum) { this.maximum = maximum; diff --git a/src/main/java/com/stripe/param/QuoteCreateParams.java b/src/main/java/com/stripe/param/QuoteCreateParams.java index 6ef1199aa8b..c1c3b023175 100644 --- a/src/main/java/com/stripe/param/QuoteCreateParams.java +++ b/src/main/java/com/stripe/param/QuoteCreateParams.java @@ -7561,7 +7561,10 @@ public static class BillingMode { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** Required. */ + /** + * Required. Controls the calculation and orchestration of prorations and + * invoices for subscriptions. + */ @SerializedName("type") Type type; @@ -7612,7 +7615,10 @@ public Builder putAllExtraParam(Map map) { return this; } - /** Required. */ + /** + * Required. Controls the calculation and orchestration of prorations and + * invoices for subscriptions. + */ public Builder setType(QuoteCreateParams.SubscriptionData.BillingMode.Type type) { this.type = type; return this; diff --git a/src/main/java/com/stripe/param/SubscriptionCreateParams.java b/src/main/java/com/stripe/param/SubscriptionCreateParams.java index 9f81b4f9ff6..707aac1400d 100644 --- a/src/main/java/com/stripe/param/SubscriptionCreateParams.java +++ b/src/main/java/com/stripe/param/SubscriptionCreateParams.java @@ -2247,7 +2247,10 @@ public static class BillingMode { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** Required. */ + /** + * Required. Controls the calculation and orchestration of prorations and + * invoices for subscriptions. + */ @SerializedName("type") Type type; @@ -2296,7 +2299,10 @@ public Builder putAllExtraParam(Map map) { return this; } - /** Required. */ + /** + * Required. Controls the calculation and orchestration of prorations and + * invoices for subscriptions. + */ public Builder setType(SubscriptionCreateParams.BillingMode.Type type) { this.type = type; return this; @@ -4472,6 +4478,13 @@ public static class PaymentMethodOptions { @SerializedName("sepa_debit") Object sepaDebit; + /** + * This sub-hash contains details about the UPI payment method options to pass to the + * invoice’s PaymentIntent. + */ + @SerializedName("upi") + Object upi; + /** * This sub-hash contains details about the ACH direct debit payment method options to pass to * the invoice’s PaymentIntent. @@ -4488,6 +4501,7 @@ private PaymentMethodOptions( Object idBankTransfer, Object konbini, Object sepaDebit, + Object upi, Object usBankAccount) { this.acssDebit = acssDebit; this.bancontact = bancontact; @@ -4497,6 +4511,7 @@ private PaymentMethodOptions( this.idBankTransfer = idBankTransfer; this.konbini = konbini; this.sepaDebit = sepaDebit; + this.upi = upi; this.usBankAccount = usBankAccount; } @@ -4521,6 +4536,8 @@ public static class Builder { private Object sepaDebit; + private Object upi; + private Object usBankAccount; /** Finalize and obtain parameter instance from this builder. */ @@ -4534,6 +4551,7 @@ public SubscriptionCreateParams.PaymentSettings.PaymentMethodOptions build() { this.idBankTransfer, this.konbini, this.sepaDebit, + this.upi, this.usBankAccount); } @@ -4702,6 +4720,25 @@ public Builder setSepaDebit(EmptyParam sepaDebit) { return this; } + /** + * This sub-hash contains details about the UPI payment method options to pass to the + * invoice’s PaymentIntent. + */ + public Builder setUpi( + SubscriptionCreateParams.PaymentSettings.PaymentMethodOptions.Upi upi) { + this.upi = upi; + return this; + } + + /** + * This sub-hash contains details about the UPI payment method options to pass to the + * invoice’s PaymentIntent. + */ + public Builder setUpi(EmptyParam upi) { + this.upi = upi; + return this; + } + /** * This sub-hash contains details about the ACH direct debit payment method options to pass * to the invoice’s PaymentIntent. @@ -5854,6 +5891,242 @@ public Builder putAllExtraParam(Map map) { } } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Upi { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-level field + * (serialized) name in this param object. Effectively, this map is flattened to its parent + * instance. + */ + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** Configuration options for setting up an eMandate. */ + @SerializedName("mandate_options") + MandateOptions mandateOptions; + + private Upi(Map extraParams, MandateOptions mandateOptions) { + this.extraParams = extraParams; + this.mandateOptions = mandateOptions; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private MandateOptions mandateOptions; + + /** Finalize and obtain parameter instance from this builder. */ + public SubscriptionCreateParams.PaymentSettings.PaymentMethodOptions.Upi build() { + return new SubscriptionCreateParams.PaymentSettings.PaymentMethodOptions.Upi( + this.extraParams, this.mandateOptions); + } + + /** + * Add a key/value pair to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link + * SubscriptionCreateParams.PaymentSettings.PaymentMethodOptions.Upi#extraParams} for the + * field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link + * SubscriptionCreateParams.PaymentSettings.PaymentMethodOptions.Upi#extraParams} for the + * field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Configuration options for setting up an eMandate. */ + public Builder setMandateOptions( + SubscriptionCreateParams.PaymentSettings.PaymentMethodOptions.Upi.MandateOptions + mandateOptions) { + this.mandateOptions = mandateOptions; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class MandateOptions { + /** Amount to be charged for future payments. */ + @SerializedName("amount") + Long amount; + + /** + * One of {@code fixed} or {@code maximum}. If {@code fixed}, the {@code amount} param + * refers to the exact amount to be charged in future payments. If {@code maximum}, the + * amount charged can be up to the value passed for the {@code amount} param. + */ + @SerializedName("amount_type") + AmountType amountType; + + /** + * A description of the mandate or subscription that is meant to be displayed to the + * customer. + */ + @SerializedName("description") + String description; + + /** + * End date of the mandate or subscription. If not provided, the mandate will be active + * until canceled. If provided, end date should be after start date. + */ + @SerializedName("end_date") + Long endDate; + + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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 MandateOptions( + Long amount, + AmountType amountType, + String description, + Long endDate, + Map extraParams) { + this.amount = amount; + this.amountType = amountType; + this.description = description; + this.endDate = endDate; + this.extraParams = extraParams; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Long amount; + + private AmountType amountType; + + private String description; + + private Long endDate; + + private Map extraParams; + + /** Finalize and obtain parameter instance from this builder. */ + public SubscriptionCreateParams.PaymentSettings.PaymentMethodOptions.Upi.MandateOptions + build() { + return new SubscriptionCreateParams.PaymentSettings.PaymentMethodOptions.Upi + .MandateOptions( + this.amount, this.amountType, this.description, this.endDate, this.extraParams); + } + + /** Amount to be charged for future payments. */ + public Builder setAmount(Long amount) { + this.amount = amount; + return this; + } + + /** + * One of {@code fixed} or {@code maximum}. If {@code fixed}, the {@code amount} param + * refers to the exact amount to be charged in future payments. If {@code maximum}, the + * amount charged can be up to the value passed for the {@code amount} param. + */ + public Builder setAmountType( + SubscriptionCreateParams.PaymentSettings.PaymentMethodOptions.Upi.MandateOptions + .AmountType + amountType) { + this.amountType = amountType; + return this; + } + + /** + * A description of the mandate or subscription that is meant to be displayed to the + * customer. + */ + public Builder setDescription(String description) { + this.description = description; + return this; + } + + /** + * End date of the mandate or subscription. If not provided, the mandate will be active + * until canceled. If provided, end date should be after start date. + */ + public Builder setEndDate(Long endDate) { + this.endDate = endDate; + 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 + * SubscriptionCreateParams.PaymentSettings.PaymentMethodOptions.Upi.MandateOptions#extraParams} + * for the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the + * original map. See {@link + * SubscriptionCreateParams.PaymentSettings.PaymentMethodOptions.Upi.MandateOptions#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 AmountType implements ApiRequestParams.EnumParam { + @SerializedName("fixed") + FIXED("fixed"), + + @SerializedName("maximum") + MAXIMUM("maximum"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + AmountType(String value) { + this.value = value; + } + } + } + } + @Getter @EqualsAndHashCode(callSuper = false) public static class UsBankAccount { @@ -6485,6 +6758,9 @@ public enum PaymentMethodType implements ApiRequestParams.EnumParam { @SerializedName("swish") SWISH("swish"), + @SerializedName("upi") + UPI("upi"), + @SerializedName("us_bank_account") US_BANK_ACCOUNT("us_bank_account"), diff --git a/src/main/java/com/stripe/param/SubscriptionItemCreateParams.java b/src/main/java/com/stripe/param/SubscriptionItemCreateParams.java index ff1d5fe52a5..654163d8542 100644 --- a/src/main/java/com/stripe/param/SubscriptionItemCreateParams.java +++ b/src/main/java/com/stripe/param/SubscriptionItemCreateParams.java @@ -74,7 +74,7 @@ public class SubscriptionItemCreateParams extends ApiRequestParams { * authentication due to SCA regulation and further user action is needed, this parameter does not * update the subscription and returns an error instead. This was the default behavior for API * versions prior to 2019-03-14. See the changelog to learn more. + * href="https://docs.stripe.com/changelog/2019-03-14">changelog to learn more. */ @SerializedName("payment_behavior") PaymentBehavior paymentBehavior; @@ -385,7 +385,7 @@ public Builder putAllMetadata(Map map) { * authentication due to SCA regulation and further user action is needed, this parameter does * not update the subscription and returns an error instead. This was the default behavior for * API versions prior to 2019-03-14. See the changelog to learn more. + * href="https://docs.stripe.com/changelog/2019-03-14">changelog to learn more. */ public Builder setPaymentBehavior( SubscriptionItemCreateParams.PaymentBehavior paymentBehavior) { diff --git a/src/main/java/com/stripe/param/SubscriptionItemUpdateParams.java b/src/main/java/com/stripe/param/SubscriptionItemUpdateParams.java index 96696d0c6b4..7e6fe84f088 100644 --- a/src/main/java/com/stripe/param/SubscriptionItemUpdateParams.java +++ b/src/main/java/com/stripe/param/SubscriptionItemUpdateParams.java @@ -81,7 +81,7 @@ public class SubscriptionItemUpdateParams extends ApiRequestParams { * authentication due to SCA regulation and further user action is needed, this parameter does not * update the subscription and returns an error instead. This was the default behavior for API * versions prior to 2019-03-14. See the changelog to learn more. + * href="https://docs.stripe.com/changelog/2019-03-14">changelog to learn more. */ @SerializedName("payment_behavior") PaymentBehavior paymentBehavior; @@ -416,7 +416,7 @@ public Builder setOffSession(Boolean offSession) { * authentication due to SCA regulation and further user action is needed, this parameter does * not update the subscription and returns an error instead. This was the default behavior for * API versions prior to 2019-03-14. See the changelog to learn more. + * href="https://docs.stripe.com/changelog/2019-03-14">changelog to learn more. */ public Builder setPaymentBehavior( SubscriptionItemUpdateParams.PaymentBehavior paymentBehavior) { diff --git a/src/main/java/com/stripe/param/SubscriptionScheduleCreateParams.java b/src/main/java/com/stripe/param/SubscriptionScheduleCreateParams.java index a1e823133c8..4eacc9a5833 100644 --- a/src/main/java/com/stripe/param/SubscriptionScheduleCreateParams.java +++ b/src/main/java/com/stripe/param/SubscriptionScheduleCreateParams.java @@ -408,7 +408,10 @@ public static class BillingMode { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** Required. */ + /** + * Required. Controls the calculation and orchestration of prorations and + * invoices for subscriptions. + */ @SerializedName("type") Type type; @@ -458,7 +461,10 @@ public Builder putAllExtraParam(Map map) { return this; } - /** Required. */ + /** + * Required. Controls the calculation and orchestration of prorations and + * invoices for subscriptions. + */ public Builder setType(SubscriptionScheduleCreateParams.BillingMode.Type type) { this.type = type; return this; @@ -1590,6 +1596,10 @@ public static class Phase { @SerializedName("discounts") Object discounts; + /** The number of intervals the phase should last. If set, {@code end_date} must not be set. */ + @SerializedName("duration") + Duration duration; + /** * The date at which this phase of the subscription schedule ends. If set, {@code iterations} * must not be set. @@ -1621,7 +1631,8 @@ public static class Phase { * Integer representing the multiplier applied to the price interval. For example, {@code * iterations=2} applied to a price with {@code interval=month} and {@code interval_count=3} * results in a phase of duration {@code 2 * 3 months = 6 months}. If set, {@code end_date} must - * not be set. + * not be set. This parameter is deprecated and will be removed in a future version. Use {@code + * duration} instead. */ @SerializedName("iterations") Long iterations; @@ -1706,6 +1717,7 @@ private Phase( Object defaultTaxRates, Object description, Object discounts, + Duration duration, Long endDate, Map extraParams, InvoiceSettings invoiceSettings, @@ -1731,6 +1743,7 @@ private Phase( this.defaultTaxRates = defaultTaxRates; this.description = description; this.discounts = discounts; + this.duration = duration; this.endDate = endDate; this.extraParams = extraParams; this.invoiceSettings = invoiceSettings; @@ -1774,6 +1787,8 @@ public static class Builder { private Object discounts; + private Duration duration; + private Long endDate; private Map extraParams; @@ -1816,6 +1831,7 @@ public SubscriptionScheduleCreateParams.Phase build() { this.defaultTaxRates, this.description, this.discounts, + this.duration, this.endDate, this.extraParams, this.invoiceSettings, @@ -2067,6 +2083,14 @@ public Builder setDiscounts(List elem * Integer representing the multiplier applied to the price interval. For example, {@code * iterations=2} applied to a price with {@code interval=month} and {@code interval_count=3} * results in a phase of duration {@code 2 * 3 months = 6 months}. If set, {@code end_date} - * must not be set. + * must not be set. This parameter is deprecated and will be removed in a future version. Use + * {@code duration} instead. */ public Builder setIterations(Long iterations) { this.iterations = iterations; @@ -3706,6 +3731,119 @@ public enum Type implements ApiRequestParams.EnumParam { } } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Duration { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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. Specifies phase duration. Either {@code day}, {@code week}, + * {@code month} or {@code year}. + */ + @SerializedName("interval") + Interval interval; + + /** The multiplier applied to the interval. */ + @SerializedName("interval_count") + Long intervalCount; + + private Duration(Map extraParams, Interval interval, Long intervalCount) { + this.extraParams = extraParams; + this.interval = interval; + this.intervalCount = intervalCount; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Interval interval; + + private Long intervalCount; + + /** Finalize and obtain parameter instance from this builder. */ + public SubscriptionScheduleCreateParams.Phase.Duration build() { + return new SubscriptionScheduleCreateParams.Phase.Duration( + this.extraParams, this.interval, this.intervalCount); + } + + /** + * Add a key/value pair to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link SubscriptionScheduleCreateParams.Phase.Duration#extraParams} for the + * field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link SubscriptionScheduleCreateParams.Phase.Duration#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. Specifies phase duration. Either {@code day}, {@code week}, + * {@code month} or {@code year}. + */ + public Builder setInterval( + SubscriptionScheduleCreateParams.Phase.Duration.Interval interval) { + this.interval = interval; + return this; + } + + /** The multiplier applied to the interval. */ + public Builder setIntervalCount(Long intervalCount) { + this.intervalCount = intervalCount; + return this; + } + } + + public enum Interval implements ApiRequestParams.EnumParam { + @SerializedName("day") + DAY("day"), + + @SerializedName("month") + MONTH("month"), + + @SerializedName("week") + WEEK("week"), + + @SerializedName("year") + YEAR("year"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + Interval(String value) { + this.value = value; + } + } + } + @Getter @EqualsAndHashCode(callSuper = false) public static class InvoiceSettings { diff --git a/src/main/java/com/stripe/param/SubscriptionScheduleUpdateParams.java b/src/main/java/com/stripe/param/SubscriptionScheduleUpdateParams.java index 21ddecab488..33f97017f29 100644 --- a/src/main/java/com/stripe/param/SubscriptionScheduleUpdateParams.java +++ b/src/main/java/com/stripe/param/SubscriptionScheduleUpdateParams.java @@ -1453,6 +1453,10 @@ public static class Phase { @SerializedName("discounts") Object discounts; + /** The number of intervals the phase should last. If set, {@code end_date} must not be set. */ + @SerializedName("duration") + Duration duration; + /** * The date at which this phase of the subscription schedule ends. If set, {@code iterations} * must not be set. @@ -1484,7 +1488,8 @@ public static class Phase { * Integer representing the multiplier applied to the price interval. For example, {@code * iterations=2} applied to a price with {@code interval=month} and {@code interval_count=3} * results in a phase of duration {@code 2 * 3 months = 6 months}. If set, {@code end_date} must - * not be set. + * not be set. This parameter is deprecated and will be removed in a future version. Use {@code + * duration} instead. */ @SerializedName("iterations") Long iterations; @@ -1576,6 +1581,7 @@ private Phase( Object defaultTaxRates, Object description, Object discounts, + Duration duration, Object endDate, Map extraParams, InvoiceSettings invoiceSettings, @@ -1602,6 +1608,7 @@ private Phase( this.defaultTaxRates = defaultTaxRates; this.description = description; this.discounts = discounts; + this.duration = duration; this.endDate = endDate; this.extraParams = extraParams; this.invoiceSettings = invoiceSettings; @@ -1646,6 +1653,8 @@ public static class Builder { private Object discounts; + private Duration duration; + private Object endDate; private Map extraParams; @@ -1690,6 +1699,7 @@ public SubscriptionScheduleUpdateParams.Phase build() { this.defaultTaxRates, this.description, this.discounts, + this.duration, this.endDate, this.extraParams, this.invoiceSettings, @@ -1962,6 +1972,14 @@ public Builder setDiscounts(List elem * Integer representing the multiplier applied to the price interval. For example, {@code * iterations=2} applied to a price with {@code interval=month} and {@code interval_count=3} * results in a phase of duration {@code 2 * 3 months = 6 months}. If set, {@code end_date} - * must not be set. + * must not be set. This parameter is deprecated and will be removed in a future version. Use + * {@code duration} instead. */ public Builder setIterations(Long iterations) { this.iterations = iterations; @@ -3725,6 +3744,119 @@ public enum Type implements ApiRequestParams.EnumParam { } } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Duration { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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. Specifies phase duration. Either {@code day}, {@code week}, + * {@code month} or {@code year}. + */ + @SerializedName("interval") + Interval interval; + + /** The multiplier applied to the interval. */ + @SerializedName("interval_count") + Long intervalCount; + + private Duration(Map extraParams, Interval interval, Long intervalCount) { + this.extraParams = extraParams; + this.interval = interval; + this.intervalCount = intervalCount; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Interval interval; + + private Long intervalCount; + + /** Finalize and obtain parameter instance from this builder. */ + public SubscriptionScheduleUpdateParams.Phase.Duration build() { + return new SubscriptionScheduleUpdateParams.Phase.Duration( + this.extraParams, this.interval, this.intervalCount); + } + + /** + * Add a key/value pair to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link SubscriptionScheduleUpdateParams.Phase.Duration#extraParams} for the + * field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link SubscriptionScheduleUpdateParams.Phase.Duration#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. Specifies phase duration. Either {@code day}, {@code week}, + * {@code month} or {@code year}. + */ + public Builder setInterval( + SubscriptionScheduleUpdateParams.Phase.Duration.Interval interval) { + this.interval = interval; + return this; + } + + /** The multiplier applied to the interval. */ + public Builder setIntervalCount(Long intervalCount) { + this.intervalCount = intervalCount; + return this; + } + } + + public enum Interval implements ApiRequestParams.EnumParam { + @SerializedName("day") + DAY("day"), + + @SerializedName("month") + MONTH("month"), + + @SerializedName("week") + WEEK("week"), + + @SerializedName("year") + YEAR("year"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + Interval(String value) { + this.value = value; + } + } + } + @Getter @EqualsAndHashCode(callSuper = false) public static class InvoiceSettings { diff --git a/src/main/java/com/stripe/param/SubscriptionUpdateParams.java b/src/main/java/com/stripe/param/SubscriptionUpdateParams.java index 66d6b807310..7556d893802 100644 --- a/src/main/java/com/stripe/param/SubscriptionUpdateParams.java +++ b/src/main/java/com/stripe/param/SubscriptionUpdateParams.java @@ -215,7 +215,7 @@ public class SubscriptionUpdateParams extends ApiRequestParams { * authentication due to SCA regulation and further user action is needed, this parameter does not * update the subscription and returns an error instead. This was the default behavior for API * versions prior to 2019-03-14. See the changelog to learn more. + * href="https://docs.stripe.com/changelog/2019-03-14">changelog to learn more. */ @SerializedName("payment_behavior") PaymentBehavior paymentBehavior; @@ -1000,7 +1000,7 @@ public Builder setPauseCollection(EmptyParam pauseCollection) { * authentication due to SCA regulation and further user action is needed, this parameter does * not update the subscription and returns an error instead. This was the default behavior for * API versions prior to 2019-03-14. See the changelog to learn more. + * href="https://docs.stripe.com/changelog/2019-03-14">changelog to learn more. */ public Builder setPaymentBehavior(SubscriptionUpdateParams.PaymentBehavior paymentBehavior) { this.paymentBehavior = paymentBehavior; @@ -4606,6 +4606,13 @@ public static class PaymentMethodOptions { @SerializedName("sepa_debit") Object sepaDebit; + /** + * This sub-hash contains details about the UPI payment method options to pass to the + * invoice’s PaymentIntent. + */ + @SerializedName("upi") + Object upi; + /** * This sub-hash contains details about the ACH direct debit payment method options to pass to * the invoice’s PaymentIntent. @@ -4622,6 +4629,7 @@ private PaymentMethodOptions( Object idBankTransfer, Object konbini, Object sepaDebit, + Object upi, Object usBankAccount) { this.acssDebit = acssDebit; this.bancontact = bancontact; @@ -4631,6 +4639,7 @@ private PaymentMethodOptions( this.idBankTransfer = idBankTransfer; this.konbini = konbini; this.sepaDebit = sepaDebit; + this.upi = upi; this.usBankAccount = usBankAccount; } @@ -4655,6 +4664,8 @@ public static class Builder { private Object sepaDebit; + private Object upi; + private Object usBankAccount; /** Finalize and obtain parameter instance from this builder. */ @@ -4668,6 +4679,7 @@ public SubscriptionUpdateParams.PaymentSettings.PaymentMethodOptions build() { this.idBankTransfer, this.konbini, this.sepaDebit, + this.upi, this.usBankAccount); } @@ -4836,6 +4848,25 @@ public Builder setSepaDebit(EmptyParam sepaDebit) { return this; } + /** + * This sub-hash contains details about the UPI payment method options to pass to the + * invoice’s PaymentIntent. + */ + public Builder setUpi( + SubscriptionUpdateParams.PaymentSettings.PaymentMethodOptions.Upi upi) { + this.upi = upi; + return this; + } + + /** + * This sub-hash contains details about the UPI payment method options to pass to the + * invoice’s PaymentIntent. + */ + public Builder setUpi(EmptyParam upi) { + this.upi = upi; + return this; + } + /** * This sub-hash contains details about the ACH direct debit payment method options to pass * to the invoice’s PaymentIntent. @@ -6026,6 +6057,251 @@ public Builder putAllExtraParam(Map map) { } } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Upi { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-level field + * (serialized) name in this param object. Effectively, this map is flattened to its parent + * instance. + */ + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** Configuration options for setting up an eMandate. */ + @SerializedName("mandate_options") + MandateOptions mandateOptions; + + private Upi(Map extraParams, MandateOptions mandateOptions) { + this.extraParams = extraParams; + this.mandateOptions = mandateOptions; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private MandateOptions mandateOptions; + + /** Finalize and obtain parameter instance from this builder. */ + public SubscriptionUpdateParams.PaymentSettings.PaymentMethodOptions.Upi build() { + return new SubscriptionUpdateParams.PaymentSettings.PaymentMethodOptions.Upi( + this.extraParams, this.mandateOptions); + } + + /** + * Add a key/value pair to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link + * SubscriptionUpdateParams.PaymentSettings.PaymentMethodOptions.Upi#extraParams} for the + * field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link + * SubscriptionUpdateParams.PaymentSettings.PaymentMethodOptions.Upi#extraParams} for the + * field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Configuration options for setting up an eMandate. */ + public Builder setMandateOptions( + SubscriptionUpdateParams.PaymentSettings.PaymentMethodOptions.Upi.MandateOptions + mandateOptions) { + this.mandateOptions = mandateOptions; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class MandateOptions { + /** Amount to be charged for future payments. */ + @SerializedName("amount") + Long amount; + + /** + * One of {@code fixed} or {@code maximum}. If {@code fixed}, the {@code amount} param + * refers to the exact amount to be charged in future payments. If {@code maximum}, the + * amount charged can be up to the value passed for the {@code amount} param. + */ + @SerializedName("amount_type") + AmountType amountType; + + /** + * A description of the mandate or subscription that is meant to be displayed to the + * customer. + */ + @SerializedName("description") + Object description; + + /** + * End date of the mandate or subscription. If not provided, the mandate will be active + * until canceled. If provided, end date should be after start date. + */ + @SerializedName("end_date") + Long endDate; + + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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 MandateOptions( + Long amount, + AmountType amountType, + Object description, + Long endDate, + Map extraParams) { + this.amount = amount; + this.amountType = amountType; + this.description = description; + this.endDate = endDate; + this.extraParams = extraParams; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Long amount; + + private AmountType amountType; + + private Object description; + + private Long endDate; + + private Map extraParams; + + /** Finalize and obtain parameter instance from this builder. */ + public SubscriptionUpdateParams.PaymentSettings.PaymentMethodOptions.Upi.MandateOptions + build() { + return new SubscriptionUpdateParams.PaymentSettings.PaymentMethodOptions.Upi + .MandateOptions( + this.amount, this.amountType, this.description, this.endDate, this.extraParams); + } + + /** Amount to be charged for future payments. */ + public Builder setAmount(Long amount) { + this.amount = amount; + return this; + } + + /** + * One of {@code fixed} or {@code maximum}. If {@code fixed}, the {@code amount} param + * refers to the exact amount to be charged in future payments. If {@code maximum}, the + * amount charged can be up to the value passed for the {@code amount} param. + */ + public Builder setAmountType( + SubscriptionUpdateParams.PaymentSettings.PaymentMethodOptions.Upi.MandateOptions + .AmountType + amountType) { + this.amountType = amountType; + return this; + } + + /** + * A description of the mandate or subscription that is meant to be displayed to the + * customer. + */ + public Builder setDescription(String description) { + this.description = description; + return this; + } + + /** + * A description of the mandate or subscription that is meant to be displayed to the + * customer. + */ + public Builder setDescription(EmptyParam description) { + this.description = description; + return this; + } + + /** + * End date of the mandate or subscription. If not provided, the mandate will be active + * until canceled. If provided, end date should be after start date. + */ + public Builder setEndDate(Long endDate) { + this.endDate = endDate; + 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 + * SubscriptionUpdateParams.PaymentSettings.PaymentMethodOptions.Upi.MandateOptions#extraParams} + * for the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the + * original map. See {@link + * SubscriptionUpdateParams.PaymentSettings.PaymentMethodOptions.Upi.MandateOptions#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 AmountType implements ApiRequestParams.EnumParam { + @SerializedName("fixed") + FIXED("fixed"), + + @SerializedName("maximum") + MAXIMUM("maximum"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + AmountType(String value) { + this.value = value; + } + } + } + } + @Getter @EqualsAndHashCode(callSuper = false) public static class UsBankAccount { @@ -6663,6 +6939,9 @@ public enum PaymentMethodType implements ApiRequestParams.EnumParam { @SerializedName("swish") SWISH("swish"), + @SerializedName("upi") + UPI("upi"), + @SerializedName("us_bank_account") US_BANK_ACCOUNT("us_bank_account"), diff --git a/src/main/java/com/stripe/param/WebhookEndpointCreateParams.java b/src/main/java/com/stripe/param/WebhookEndpointCreateParams.java index 6af16038546..bc2106e9599 100644 --- a/src/main/java/com/stripe/param/WebhookEndpointCreateParams.java +++ b/src/main/java/com/stripe/param/WebhookEndpointCreateParams.java @@ -621,7 +621,10 @@ public enum ApiVersion implements ApiRequestParams.EnumParam { VERSION_2025_05_28_BASIL("2025-05-28.basil"), @SerializedName("2025-06-30.basil") - VERSION_2025_06_30_BASIL("2025-06-30.basil"); + VERSION_2025_06_30_BASIL("2025-06-30.basil"), + + @SerializedName("2025-07-30.basil") + VERSION_2025_07_30_BASIL("2025-07-30.basil"); @Getter(onMethod_ = {@Override}) private final String value; diff --git a/src/main/java/com/stripe/param/billing/CreditGrantCreateParams.java b/src/main/java/com/stripe/param/billing/CreditGrantCreateParams.java index 2d439975e5f..bac2030d6c6 100644 --- a/src/main/java/com/stripe/param/billing/CreditGrantCreateParams.java +++ b/src/main/java/com/stripe/param/billing/CreditGrantCreateParams.java @@ -317,7 +317,7 @@ public static class Amount { Monetary monetary; /** - * Required. Specify the type of this amount. We currently only support {@code + * Required. The type of this amount. We currently only support {@code * monetary} billing credits. */ @SerializedName("type") @@ -378,8 +378,8 @@ public Builder setMonetary(CreditGrantCreateParams.Amount.Monetary monetary) { } /** - * Required. Specify the type of this amount. We currently only support - * {@code monetary} billing credits. + * Required. The type of this amount. We currently only support {@code + * monetary} billing credits. */ public Builder setType(CreditGrantCreateParams.Amount.Type type) { this.type = type; diff --git a/src/main/java/com/stripe/param/billing/MeterUsageRetrieveParams.java b/src/main/java/com/stripe/param/billing/MeterUsageRetrieveParams.java new file mode 100644 index 00000000000..a961ffbe435 --- /dev/null +++ b/src/main/java/com/stripe/param/billing/MeterUsageRetrieveParams.java @@ -0,0 +1,2250 @@ +// File generated from our OpenAPI spec +package com.stripe.param.billing; + +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 MeterUsageRetrieveParams extends ApiRequestParams { + /** Required. The customer id to fetch meter usage data for. */ + @SerializedName("customer") + String customer; + + /** + * Required. The timestamp from when to stop aggregating meter events + * (exclusive). Must be aligned with minute boundaries. + */ + @SerializedName("end_time") + Long endTime; + + /** 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; + + /** + * An array of meter parameters to specify which meters to include in the usage data. If not + * specified, usage across all meters for the customer is included. + */ + @SerializedName("meters") + List meters; + + /** + * Required. The timestamp from when to start aggregating meter events + * (inclusive). Must be aligned with minute boundaries. + */ + @SerializedName("start_time") + Long startTime; + + /** The timezone to use for the start and end times. Defaults to UTC if not specified. */ + @SerializedName("timezone") + Timezone timezone; + + /** + * Specifies what granularity to use when aggregating meter usage events. If not specified, a + * single event would be returned for the specified time range. + */ + @SerializedName("value_grouping_window") + ValueGroupingWindow valueGroupingWindow; + + private MeterUsageRetrieveParams( + String customer, + Long endTime, + List expand, + Map extraParams, + List meters, + Long startTime, + Timezone timezone, + ValueGroupingWindow valueGroupingWindow) { + this.customer = customer; + this.endTime = endTime; + this.expand = expand; + this.extraParams = extraParams; + this.meters = meters; + this.startTime = startTime; + this.timezone = timezone; + this.valueGroupingWindow = valueGroupingWindow; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private String customer; + + private Long endTime; + + private List expand; + + private Map extraParams; + + private List meters; + + private Long startTime; + + private Timezone timezone; + + private ValueGroupingWindow valueGroupingWindow; + + /** Finalize and obtain parameter instance from this builder. */ + public MeterUsageRetrieveParams build() { + return new MeterUsageRetrieveParams( + this.customer, + this.endTime, + this.expand, + this.extraParams, + this.meters, + this.startTime, + this.timezone, + this.valueGroupingWindow); + } + + /** Required. The customer id to fetch meter usage data for. */ + public Builder setCustomer(String customer) { + this.customer = customer; + return this; + } + + /** + * Required. The timestamp from when to stop aggregating meter events + * (exclusive). Must be aligned with minute boundaries. + */ + public Builder setEndTime(Long endTime) { + this.endTime = endTime; + return this; + } + + /** + * 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 + * MeterUsageRetrieveParams#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 + * MeterUsageRetrieveParams#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 + * MeterUsageRetrieveParams#extraParams} for the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original map. + * See {@link MeterUsageRetrieveParams#extraParams} for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** + * Add an element to `meters` list. A list is initialized for the first `add/addAll` call, and + * subsequent calls adds additional elements to the original list. See {@link + * MeterUsageRetrieveParams#meters} for the field documentation. + */ + public Builder addMeter(MeterUsageRetrieveParams.Meter element) { + if (this.meters == null) { + this.meters = new ArrayList<>(); + } + this.meters.add(element); + return this; + } + + /** + * Add all elements to `meters` list. A list is initialized for the first `add/addAll` call, and + * subsequent calls adds additional elements to the original list. See {@link + * MeterUsageRetrieveParams#meters} for the field documentation. + */ + public Builder addAllMeter(List elements) { + if (this.meters == null) { + this.meters = new ArrayList<>(); + } + this.meters.addAll(elements); + return this; + } + + /** + * Required. The timestamp from when to start aggregating meter events + * (inclusive). Must be aligned with minute boundaries. + */ + public Builder setStartTime(Long startTime) { + this.startTime = startTime; + return this; + } + + /** The timezone to use for the start and end times. Defaults to UTC if not specified. */ + public Builder setTimezone(MeterUsageRetrieveParams.Timezone timezone) { + this.timezone = timezone; + return this; + } + + /** + * Specifies what granularity to use when aggregating meter usage events. If not specified, a + * single event would be returned for the specified time range. + */ + public Builder setValueGroupingWindow( + MeterUsageRetrieveParams.ValueGroupingWindow valueGroupingWindow) { + this.valueGroupingWindow = valueGroupingWindow; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Meter { + /** + * Key-value pairs used to filter usage events by meter dimension values. If specified, usage + * will be filtered for matching usage events. + */ + @SerializedName("dimension_filters") + Map dimensionFilters; + + /** + * List of meter dimension keys to group by. If specified, usage events will be grouped by the + * given meter dimension key's values. + */ + @SerializedName("dimension_group_by_keys") + List dimensionGroupByKeys; + + /** + * Map of extra parameters for custom features not available in this client library. The content + * in this map is not serialized under this field's {@code @SerializedName} value. Instead, each + * key/value pair is serialized as if the key is a root-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. Meter id to query usage for. */ + @SerializedName("meter_id") + String meterId; + + /** + * Key-value pairs used to filter usage events by high cardinality tenant dimension values. If + * specified, usage will be filtered for matching usage events. + */ + @SerializedName("tenant_filters") + Map tenantFilters; + + private Meter( + Map dimensionFilters, + List dimensionGroupByKeys, + Map extraParams, + String meterId, + Map tenantFilters) { + this.dimensionFilters = dimensionFilters; + this.dimensionGroupByKeys = dimensionGroupByKeys; + this.extraParams = extraParams; + this.meterId = meterId; + this.tenantFilters = tenantFilters; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map dimensionFilters; + + private List dimensionGroupByKeys; + + private Map extraParams; + + private String meterId; + + private Map tenantFilters; + + /** Finalize and obtain parameter instance from this builder. */ + public MeterUsageRetrieveParams.Meter build() { + return new MeterUsageRetrieveParams.Meter( + this.dimensionFilters, + this.dimensionGroupByKeys, + this.extraParams, + this.meterId, + this.tenantFilters); + } + + /** + * Add a key/value pair to `dimensionFilters` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original map. + * See {@link MeterUsageRetrieveParams.Meter#dimensionFilters} for the field documentation. + */ + public Builder putDimensionFilter(String key, String value) { + if (this.dimensionFilters == null) { + this.dimensionFilters = new HashMap<>(); + } + this.dimensionFilters.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `dimensionFilters` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original map. + * See {@link MeterUsageRetrieveParams.Meter#dimensionFilters} for the field documentation. + */ + public Builder putAllDimensionFilter(Map map) { + if (this.dimensionFilters == null) { + this.dimensionFilters = new HashMap<>(); + } + this.dimensionFilters.putAll(map); + return this; + } + + /** + * Add an element to `dimensionGroupByKeys` list. A list is initialized for the first + * `add/addAll` call, and subsequent calls adds additional elements to the original list. See + * {@link MeterUsageRetrieveParams.Meter#dimensionGroupByKeys} for the field documentation. + */ + public Builder addDimensionGroupByKey(String element) { + if (this.dimensionGroupByKeys == null) { + this.dimensionGroupByKeys = new ArrayList<>(); + } + this.dimensionGroupByKeys.add(element); + return this; + } + + /** + * Add all elements to `dimensionGroupByKeys` list. A list is initialized for the first + * `add/addAll` call, and subsequent calls adds additional elements to the original list. See + * {@link MeterUsageRetrieveParams.Meter#dimensionGroupByKeys} for the field documentation. + */ + public Builder addAllDimensionGroupByKey(List elements) { + if (this.dimensionGroupByKeys == null) { + this.dimensionGroupByKeys = new ArrayList<>(); + } + this.dimensionGroupByKeys.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 + * MeterUsageRetrieveParams.Meter#extraParams} for the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original map. + * See {@link MeterUsageRetrieveParams.Meter#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. Meter id to query usage for. */ + public Builder setMeterId(String meterId) { + this.meterId = meterId; + return this; + } + + /** + * Add a key/value pair to `tenantFilters` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original map. + * See {@link MeterUsageRetrieveParams.Meter#tenantFilters} for the field documentation. + */ + public Builder putTenantFilter(String key, String value) { + if (this.tenantFilters == null) { + this.tenantFilters = new HashMap<>(); + } + this.tenantFilters.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `tenantFilters` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original map. + * See {@link MeterUsageRetrieveParams.Meter#tenantFilters} for the field documentation. + */ + public Builder putAllTenantFilter(Map map) { + if (this.tenantFilters == null) { + this.tenantFilters = new HashMap<>(); + } + this.tenantFilters.putAll(map); + return this; + } + } + } + + public enum Timezone implements ApiRequestParams.EnumParam { + @SerializedName("Africa/Abidjan") + AFRICA_ABIDJAN("Africa/Abidjan"), + + @SerializedName("Africa/Accra") + AFRICA_ACCRA("Africa/Accra"), + + @SerializedName("Africa/Addis_Ababa") + AFRICA_ADDIS_ABABA("Africa/Addis_Ababa"), + + @SerializedName("Africa/Algiers") + AFRICA_ALGIERS("Africa/Algiers"), + + @SerializedName("Africa/Asmara") + AFRICA_ASMARA("Africa/Asmara"), + + @SerializedName("Africa/Asmera") + AFRICA_ASMERA("Africa/Asmera"), + + @SerializedName("Africa/Bamako") + AFRICA_BAMAKO("Africa/Bamako"), + + @SerializedName("Africa/Bangui") + AFRICA_BANGUI("Africa/Bangui"), + + @SerializedName("Africa/Banjul") + AFRICA_BANJUL("Africa/Banjul"), + + @SerializedName("Africa/Bissau") + AFRICA_BISSAU("Africa/Bissau"), + + @SerializedName("Africa/Blantyre") + AFRICA_BLANTYRE("Africa/Blantyre"), + + @SerializedName("Africa/Brazzaville") + AFRICA_BRAZZAVILLE("Africa/Brazzaville"), + + @SerializedName("Africa/Bujumbura") + AFRICA_BUJUMBURA("Africa/Bujumbura"), + + @SerializedName("Africa/Cairo") + AFRICA_CAIRO("Africa/Cairo"), + + @SerializedName("Africa/Casablanca") + AFRICA_CASABLANCA("Africa/Casablanca"), + + @SerializedName("Africa/Ceuta") + AFRICA_CEUTA("Africa/Ceuta"), + + @SerializedName("Africa/Conakry") + AFRICA_CONAKRY("Africa/Conakry"), + + @SerializedName("Africa/Dakar") + AFRICA_DAKAR("Africa/Dakar"), + + @SerializedName("Africa/Dar_es_Salaam") + AFRICA_DAR_ES_SALAAM("Africa/Dar_es_Salaam"), + + @SerializedName("Africa/Djibouti") + AFRICA_DJIBOUTI("Africa/Djibouti"), + + @SerializedName("Africa/Douala") + AFRICA_DOUALA("Africa/Douala"), + + @SerializedName("Africa/El_Aaiun") + AFRICA_EL_AAIUN("Africa/El_Aaiun"), + + @SerializedName("Africa/Freetown") + AFRICA_FREETOWN("Africa/Freetown"), + + @SerializedName("Africa/Gaborone") + AFRICA_GABORONE("Africa/Gaborone"), + + @SerializedName("Africa/Harare") + AFRICA_HARARE("Africa/Harare"), + + @SerializedName("Africa/Johannesburg") + AFRICA_JOHANNESBURG("Africa/Johannesburg"), + + @SerializedName("Africa/Juba") + AFRICA_JUBA("Africa/Juba"), + + @SerializedName("Africa/Kampala") + AFRICA_KAMPALA("Africa/Kampala"), + + @SerializedName("Africa/Khartoum") + AFRICA_KHARTOUM("Africa/Khartoum"), + + @SerializedName("Africa/Kigali") + AFRICA_KIGALI("Africa/Kigali"), + + @SerializedName("Africa/Kinshasa") + AFRICA_KINSHASA("Africa/Kinshasa"), + + @SerializedName("Africa/Lagos") + AFRICA_LAGOS("Africa/Lagos"), + + @SerializedName("Africa/Libreville") + AFRICA_LIBREVILLE("Africa/Libreville"), + + @SerializedName("Africa/Lome") + AFRICA_LOME("Africa/Lome"), + + @SerializedName("Africa/Luanda") + AFRICA_LUANDA("Africa/Luanda"), + + @SerializedName("Africa/Lubumbashi") + AFRICA_LUBUMBASHI("Africa/Lubumbashi"), + + @SerializedName("Africa/Lusaka") + AFRICA_LUSAKA("Africa/Lusaka"), + + @SerializedName("Africa/Malabo") + AFRICA_MALABO("Africa/Malabo"), + + @SerializedName("Africa/Maputo") + AFRICA_MAPUTO("Africa/Maputo"), + + @SerializedName("Africa/Maseru") + AFRICA_MASERU("Africa/Maseru"), + + @SerializedName("Africa/Mbabane") + AFRICA_MBABANE("Africa/Mbabane"), + + @SerializedName("Africa/Mogadishu") + AFRICA_MOGADISHU("Africa/Mogadishu"), + + @SerializedName("Africa/Monrovia") + AFRICA_MONROVIA("Africa/Monrovia"), + + @SerializedName("Africa/Nairobi") + AFRICA_NAIROBI("Africa/Nairobi"), + + @SerializedName("Africa/Ndjamena") + AFRICA_NDJAMENA("Africa/Ndjamena"), + + @SerializedName("Africa/Niamey") + AFRICA_NIAMEY("Africa/Niamey"), + + @SerializedName("Africa/Nouakchott") + AFRICA_NOUAKCHOTT("Africa/Nouakchott"), + + @SerializedName("Africa/Ouagadougou") + AFRICA_OUAGADOUGOU("Africa/Ouagadougou"), + + @SerializedName("Africa/Porto-Novo") + AFRICA_PORTO_NOVO("Africa/Porto-Novo"), + + @SerializedName("Africa/Sao_Tome") + AFRICA_SAO_TOME("Africa/Sao_Tome"), + + @SerializedName("Africa/Timbuktu") + AFRICA_TIMBUKTU("Africa/Timbuktu"), + + @SerializedName("Africa/Tripoli") + AFRICA_TRIPOLI("Africa/Tripoli"), + + @SerializedName("Africa/Tunis") + AFRICA_TUNIS("Africa/Tunis"), + + @SerializedName("Africa/Windhoek") + AFRICA_WINDHOEK("Africa/Windhoek"), + + @SerializedName("America/Adak") + AMERICA_ADAK("America/Adak"), + + @SerializedName("America/Anchorage") + AMERICA_ANCHORAGE("America/Anchorage"), + + @SerializedName("America/Anguilla") + AMERICA_ANGUILLA("America/Anguilla"), + + @SerializedName("America/Antigua") + AMERICA_ANTIGUA("America/Antigua"), + + @SerializedName("America/Araguaina") + AMERICA_ARAGUAINA("America/Araguaina"), + + @SerializedName("America/Argentina/Buenos_Aires") + AMERICA_ARGENTINA_BUENOS_AIRES("America/Argentina/Buenos_Aires"), + + @SerializedName("America/Argentina/Catamarca") + AMERICA_ARGENTINA_CATAMARCA("America/Argentina/Catamarca"), + + @SerializedName("America/Argentina/ComodRivadavia") + AMERICA_ARGENTINA_COMODRIVADAVIA("America/Argentina/ComodRivadavia"), + + @SerializedName("America/Argentina/Cordoba") + AMERICA_ARGENTINA_CORDOBA("America/Argentina/Cordoba"), + + @SerializedName("America/Argentina/Jujuy") + AMERICA_ARGENTINA_JUJUY("America/Argentina/Jujuy"), + + @SerializedName("America/Argentina/La_Rioja") + AMERICA_ARGENTINA_LA_RIOJA("America/Argentina/La_Rioja"), + + @SerializedName("America/Argentina/Mendoza") + AMERICA_ARGENTINA_MENDOZA("America/Argentina/Mendoza"), + + @SerializedName("America/Argentina/Rio_Gallegos") + AMERICA_ARGENTINA_RIO_GALLEGOS("America/Argentina/Rio_Gallegos"), + + @SerializedName("America/Argentina/Salta") + AMERICA_ARGENTINA_SALTA("America/Argentina/Salta"), + + @SerializedName("America/Argentina/San_Juan") + AMERICA_ARGENTINA_SAN_JUAN("America/Argentina/San_Juan"), + + @SerializedName("America/Argentina/San_Luis") + AMERICA_ARGENTINA_SAN_LUIS("America/Argentina/San_Luis"), + + @SerializedName("America/Argentina/Tucuman") + AMERICA_ARGENTINA_TUCUMAN("America/Argentina/Tucuman"), + + @SerializedName("America/Argentina/Ushuaia") + AMERICA_ARGENTINA_USHUAIA("America/Argentina/Ushuaia"), + + @SerializedName("America/Aruba") + AMERICA_ARUBA("America/Aruba"), + + @SerializedName("America/Asuncion") + AMERICA_ASUNCION("America/Asuncion"), + + @SerializedName("America/Atikokan") + AMERICA_ATIKOKAN("America/Atikokan"), + + @SerializedName("America/Atka") + AMERICA_ATKA("America/Atka"), + + @SerializedName("America/Bahia") + AMERICA_BAHIA("America/Bahia"), + + @SerializedName("America/Bahia_Banderas") + AMERICA_BAHIA_BANDERAS("America/Bahia_Banderas"), + + @SerializedName("America/Barbados") + AMERICA_BARBADOS("America/Barbados"), + + @SerializedName("America/Belem") + AMERICA_BELEM("America/Belem"), + + @SerializedName("America/Belize") + AMERICA_BELIZE("America/Belize"), + + @SerializedName("America/Blanc-Sablon") + AMERICA_BLANC_SABLON("America/Blanc-Sablon"), + + @SerializedName("America/Boa_Vista") + AMERICA_BOA_VISTA("America/Boa_Vista"), + + @SerializedName("America/Bogota") + AMERICA_BOGOTA("America/Bogota"), + + @SerializedName("America/Boise") + AMERICA_BOISE("America/Boise"), + + @SerializedName("America/Buenos_Aires") + AMERICA_BUENOS_AIRES("America/Buenos_Aires"), + + @SerializedName("America/Cambridge_Bay") + AMERICA_CAMBRIDGE_BAY("America/Cambridge_Bay"), + + @SerializedName("America/Campo_Grande") + AMERICA_CAMPO_GRANDE("America/Campo_Grande"), + + @SerializedName("America/Cancun") + AMERICA_CANCUN("America/Cancun"), + + @SerializedName("America/Caracas") + AMERICA_CARACAS("America/Caracas"), + + @SerializedName("America/Catamarca") + AMERICA_CATAMARCA("America/Catamarca"), + + @SerializedName("America/Cayenne") + AMERICA_CAYENNE("America/Cayenne"), + + @SerializedName("America/Cayman") + AMERICA_CAYMAN("America/Cayman"), + + @SerializedName("America/Chicago") + AMERICA_CHICAGO("America/Chicago"), + + @SerializedName("America/Chihuahua") + AMERICA_CHIHUAHUA("America/Chihuahua"), + + @SerializedName("America/Ciudad_Juarez") + AMERICA_CIUDAD_JUAREZ("America/Ciudad_Juarez"), + + @SerializedName("America/Coral_Harbour") + AMERICA_CORAL_HARBOUR("America/Coral_Harbour"), + + @SerializedName("America/Cordoba") + AMERICA_CORDOBA("America/Cordoba"), + + @SerializedName("America/Costa_Rica") + AMERICA_COSTA_RICA("America/Costa_Rica"), + + @SerializedName("America/Coyhaique") + AMERICA_COYHAIQUE("America/Coyhaique"), + + @SerializedName("America/Creston") + AMERICA_CRESTON("America/Creston"), + + @SerializedName("America/Cuiaba") + AMERICA_CUIABA("America/Cuiaba"), + + @SerializedName("America/Curacao") + AMERICA_CURACAO("America/Curacao"), + + @SerializedName("America/Danmarkshavn") + AMERICA_DANMARKSHAVN("America/Danmarkshavn"), + + @SerializedName("America/Dawson") + AMERICA_DAWSON("America/Dawson"), + + @SerializedName("America/Dawson_Creek") + AMERICA_DAWSON_CREEK("America/Dawson_Creek"), + + @SerializedName("America/Denver") + AMERICA_DENVER("America/Denver"), + + @SerializedName("America/Detroit") + AMERICA_DETROIT("America/Detroit"), + + @SerializedName("America/Dominica") + AMERICA_DOMINICA("America/Dominica"), + + @SerializedName("America/Edmonton") + AMERICA_EDMONTON("America/Edmonton"), + + @SerializedName("America/Eirunepe") + AMERICA_EIRUNEPE("America/Eirunepe"), + + @SerializedName("America/El_Salvador") + AMERICA_EL_SALVADOR("America/El_Salvador"), + + @SerializedName("America/Ensenada") + AMERICA_ENSENADA("America/Ensenada"), + + @SerializedName("America/Fort_Nelson") + AMERICA_FORT_NELSON("America/Fort_Nelson"), + + @SerializedName("America/Fort_Wayne") + AMERICA_FORT_WAYNE("America/Fort_Wayne"), + + @SerializedName("America/Fortaleza") + AMERICA_FORTALEZA("America/Fortaleza"), + + @SerializedName("America/Glace_Bay") + AMERICA_GLACE_BAY("America/Glace_Bay"), + + @SerializedName("America/Godthab") + AMERICA_GODTHAB("America/Godthab"), + + @SerializedName("America/Goose_Bay") + AMERICA_GOOSE_BAY("America/Goose_Bay"), + + @SerializedName("America/Grand_Turk") + AMERICA_GRAND_TURK("America/Grand_Turk"), + + @SerializedName("America/Grenada") + AMERICA_GRENADA("America/Grenada"), + + @SerializedName("America/Guadeloupe") + AMERICA_GUADELOUPE("America/Guadeloupe"), + + @SerializedName("America/Guatemala") + AMERICA_GUATEMALA("America/Guatemala"), + + @SerializedName("America/Guayaquil") + AMERICA_GUAYAQUIL("America/Guayaquil"), + + @SerializedName("America/Guyana") + AMERICA_GUYANA("America/Guyana"), + + @SerializedName("America/Halifax") + AMERICA_HALIFAX("America/Halifax"), + + @SerializedName("America/Havana") + AMERICA_HAVANA("America/Havana"), + + @SerializedName("America/Hermosillo") + AMERICA_HERMOSILLO("America/Hermosillo"), + + @SerializedName("America/Indiana/Indianapolis") + AMERICA_INDIANA_INDIANAPOLIS("America/Indiana/Indianapolis"), + + @SerializedName("America/Indiana/Knox") + AMERICA_INDIANA_KNOX("America/Indiana/Knox"), + + @SerializedName("America/Indiana/Marengo") + AMERICA_INDIANA_MARENGO("America/Indiana/Marengo"), + + @SerializedName("America/Indiana/Petersburg") + AMERICA_INDIANA_PETERSBURG("America/Indiana/Petersburg"), + + @SerializedName("America/Indiana/Tell_City") + AMERICA_INDIANA_TELL_CITY("America/Indiana/Tell_City"), + + @SerializedName("America/Indiana/Vevay") + AMERICA_INDIANA_VEVAY("America/Indiana/Vevay"), + + @SerializedName("America/Indiana/Vincennes") + AMERICA_INDIANA_VINCENNES("America/Indiana/Vincennes"), + + @SerializedName("America/Indiana/Winamac") + AMERICA_INDIANA_WINAMAC("America/Indiana/Winamac"), + + @SerializedName("America/Indianapolis") + AMERICA_INDIANAPOLIS("America/Indianapolis"), + + @SerializedName("America/Inuvik") + AMERICA_INUVIK("America/Inuvik"), + + @SerializedName("America/Iqaluit") + AMERICA_IQALUIT("America/Iqaluit"), + + @SerializedName("America/Jamaica") + AMERICA_JAMAICA("America/Jamaica"), + + @SerializedName("America/Jujuy") + AMERICA_JUJUY("America/Jujuy"), + + @SerializedName("America/Juneau") + AMERICA_JUNEAU("America/Juneau"), + + @SerializedName("America/Kentucky/Louisville") + AMERICA_KENTUCKY_LOUISVILLE("America/Kentucky/Louisville"), + + @SerializedName("America/Kentucky/Monticello") + AMERICA_KENTUCKY_MONTICELLO("America/Kentucky/Monticello"), + + @SerializedName("America/Knox_IN") + AMERICA_KNOX_IN("America/Knox_IN"), + + @SerializedName("America/Kralendijk") + AMERICA_KRALENDIJK("America/Kralendijk"), + + @SerializedName("America/La_Paz") + AMERICA_LA_PAZ("America/La_Paz"), + + @SerializedName("America/Lima") + AMERICA_LIMA("America/Lima"), + + @SerializedName("America/Los_Angeles") + AMERICA_LOS_ANGELES("America/Los_Angeles"), + + @SerializedName("America/Louisville") + AMERICA_LOUISVILLE("America/Louisville"), + + @SerializedName("America/Lower_Princes") + AMERICA_LOWER_PRINCES("America/Lower_Princes"), + + @SerializedName("America/Maceio") + AMERICA_MACEIO("America/Maceio"), + + @SerializedName("America/Managua") + AMERICA_MANAGUA("America/Managua"), + + @SerializedName("America/Manaus") + AMERICA_MANAUS("America/Manaus"), + + @SerializedName("America/Marigot") + AMERICA_MARIGOT("America/Marigot"), + + @SerializedName("America/Martinique") + AMERICA_MARTINIQUE("America/Martinique"), + + @SerializedName("America/Matamoros") + AMERICA_MATAMOROS("America/Matamoros"), + + @SerializedName("America/Mazatlan") + AMERICA_MAZATLAN("America/Mazatlan"), + + @SerializedName("America/Mendoza") + AMERICA_MENDOZA("America/Mendoza"), + + @SerializedName("America/Menominee") + AMERICA_MENOMINEE("America/Menominee"), + + @SerializedName("America/Merida") + AMERICA_MERIDA("America/Merida"), + + @SerializedName("America/Metlakatla") + AMERICA_METLAKATLA("America/Metlakatla"), + + @SerializedName("America/Mexico_City") + AMERICA_MEXICO_CITY("America/Mexico_City"), + + @SerializedName("America/Miquelon") + AMERICA_MIQUELON("America/Miquelon"), + + @SerializedName("America/Moncton") + AMERICA_MONCTON("America/Moncton"), + + @SerializedName("America/Monterrey") + AMERICA_MONTERREY("America/Monterrey"), + + @SerializedName("America/Montevideo") + AMERICA_MONTEVIDEO("America/Montevideo"), + + @SerializedName("America/Montreal") + AMERICA_MONTREAL("America/Montreal"), + + @SerializedName("America/Montserrat") + AMERICA_MONTSERRAT("America/Montserrat"), + + @SerializedName("America/Nassau") + AMERICA_NASSAU("America/Nassau"), + + @SerializedName("America/New_York") + AMERICA_NEW_YORK("America/New_York"), + + @SerializedName("America/Nipigon") + AMERICA_NIPIGON("America/Nipigon"), + + @SerializedName("America/Nome") + AMERICA_NOME("America/Nome"), + + @SerializedName("America/Noronha") + AMERICA_NORONHA("America/Noronha"), + + @SerializedName("America/North_Dakota/Beulah") + AMERICA_NORTH_DAKOTA_BEULAH("America/North_Dakota/Beulah"), + + @SerializedName("America/North_Dakota/Center") + AMERICA_NORTH_DAKOTA_CENTER("America/North_Dakota/Center"), + + @SerializedName("America/North_Dakota/New_Salem") + AMERICA_NORTH_DAKOTA_NEW_SALEM("America/North_Dakota/New_Salem"), + + @SerializedName("America/Nuuk") + AMERICA_NUUK("America/Nuuk"), + + @SerializedName("America/Ojinaga") + AMERICA_OJINAGA("America/Ojinaga"), + + @SerializedName("America/Panama") + AMERICA_PANAMA("America/Panama"), + + @SerializedName("America/Pangnirtung") + AMERICA_PANGNIRTUNG("America/Pangnirtung"), + + @SerializedName("America/Paramaribo") + AMERICA_PARAMARIBO("America/Paramaribo"), + + @SerializedName("America/Phoenix") + AMERICA_PHOENIX("America/Phoenix"), + + @SerializedName("America/Port-au-Prince") + AMERICA_PORT_AU_PRINCE("America/Port-au-Prince"), + + @SerializedName("America/Port_of_Spain") + AMERICA_PORT_OF_SPAIN("America/Port_of_Spain"), + + @SerializedName("America/Porto_Acre") + AMERICA_PORTO_ACRE("America/Porto_Acre"), + + @SerializedName("America/Porto_Velho") + AMERICA_PORTO_VELHO("America/Porto_Velho"), + + @SerializedName("America/Puerto_Rico") + AMERICA_PUERTO_RICO("America/Puerto_Rico"), + + @SerializedName("America/Punta_Arenas") + AMERICA_PUNTA_ARENAS("America/Punta_Arenas"), + + @SerializedName("America/Rainy_River") + AMERICA_RAINY_RIVER("America/Rainy_River"), + + @SerializedName("America/Rankin_Inlet") + AMERICA_RANKIN_INLET("America/Rankin_Inlet"), + + @SerializedName("America/Recife") + AMERICA_RECIFE("America/Recife"), + + @SerializedName("America/Regina") + AMERICA_REGINA("America/Regina"), + + @SerializedName("America/Resolute") + AMERICA_RESOLUTE("America/Resolute"), + + @SerializedName("America/Rio_Branco") + AMERICA_RIO_BRANCO("America/Rio_Branco"), + + @SerializedName("America/Rosario") + AMERICA_ROSARIO("America/Rosario"), + + @SerializedName("America/Santa_Isabel") + AMERICA_SANTA_ISABEL("America/Santa_Isabel"), + + @SerializedName("America/Santarem") + AMERICA_SANTAREM("America/Santarem"), + + @SerializedName("America/Santiago") + AMERICA_SANTIAGO("America/Santiago"), + + @SerializedName("America/Santo_Domingo") + AMERICA_SANTO_DOMINGO("America/Santo_Domingo"), + + @SerializedName("America/Sao_Paulo") + AMERICA_SAO_PAULO("America/Sao_Paulo"), + + @SerializedName("America/Scoresbysund") + AMERICA_SCORESBYSUND("America/Scoresbysund"), + + @SerializedName("America/Shiprock") + AMERICA_SHIPROCK("America/Shiprock"), + + @SerializedName("America/Sitka") + AMERICA_SITKA("America/Sitka"), + + @SerializedName("America/St_Barthelemy") + AMERICA_ST_BARTHELEMY("America/St_Barthelemy"), + + @SerializedName("America/St_Johns") + AMERICA_ST_JOHNS("America/St_Johns"), + + @SerializedName("America/St_Kitts") + AMERICA_ST_KITTS("America/St_Kitts"), + + @SerializedName("America/St_Lucia") + AMERICA_ST_LUCIA("America/St_Lucia"), + + @SerializedName("America/St_Thomas") + AMERICA_ST_THOMAS("America/St_Thomas"), + + @SerializedName("America/St_Vincent") + AMERICA_ST_VINCENT("America/St_Vincent"), + + @SerializedName("America/Swift_Current") + AMERICA_SWIFT_CURRENT("America/Swift_Current"), + + @SerializedName("America/Tegucigalpa") + AMERICA_TEGUCIGALPA("America/Tegucigalpa"), + + @SerializedName("America/Thule") + AMERICA_THULE("America/Thule"), + + @SerializedName("America/Thunder_Bay") + AMERICA_THUNDER_BAY("America/Thunder_Bay"), + + @SerializedName("America/Tijuana") + AMERICA_TIJUANA("America/Tijuana"), + + @SerializedName("America/Toronto") + AMERICA_TORONTO("America/Toronto"), + + @SerializedName("America/Tortola") + AMERICA_TORTOLA("America/Tortola"), + + @SerializedName("America/Vancouver") + AMERICA_VANCOUVER("America/Vancouver"), + + @SerializedName("America/Virgin") + AMERICA_VIRGIN("America/Virgin"), + + @SerializedName("America/Whitehorse") + AMERICA_WHITEHORSE("America/Whitehorse"), + + @SerializedName("America/Winnipeg") + AMERICA_WINNIPEG("America/Winnipeg"), + + @SerializedName("America/Yakutat") + AMERICA_YAKUTAT("America/Yakutat"), + + @SerializedName("America/Yellowknife") + AMERICA_YELLOWKNIFE("America/Yellowknife"), + + @SerializedName("Antarctica/Casey") + ANTARCTICA_CASEY("Antarctica/Casey"), + + @SerializedName("Antarctica/Davis") + ANTARCTICA_DAVIS("Antarctica/Davis"), + + @SerializedName("Antarctica/DumontDUrville") + ANTARCTICA_DUMONTDURVILLE("Antarctica/DumontDUrville"), + + @SerializedName("Antarctica/Macquarie") + ANTARCTICA_MACQUARIE("Antarctica/Macquarie"), + + @SerializedName("Antarctica/Mawson") + ANTARCTICA_MAWSON("Antarctica/Mawson"), + + @SerializedName("Antarctica/McMurdo") + ANTARCTICA_MCMURDO("Antarctica/McMurdo"), + + @SerializedName("Antarctica/Palmer") + ANTARCTICA_PALMER("Antarctica/Palmer"), + + @SerializedName("Antarctica/Rothera") + ANTARCTICA_ROTHERA("Antarctica/Rothera"), + + @SerializedName("Antarctica/South_Pole") + ANTARCTICA_SOUTH_POLE("Antarctica/South_Pole"), + + @SerializedName("Antarctica/Syowa") + ANTARCTICA_SYOWA("Antarctica/Syowa"), + + @SerializedName("Antarctica/Troll") + ANTARCTICA_TROLL("Antarctica/Troll"), + + @SerializedName("Antarctica/Vostok") + ANTARCTICA_VOSTOK("Antarctica/Vostok"), + + @SerializedName("Arctic/Longyearbyen") + ARCTIC_LONGYEARBYEN("Arctic/Longyearbyen"), + + @SerializedName("Asia/Aden") + ASIA_ADEN("Asia/Aden"), + + @SerializedName("Asia/Almaty") + ASIA_ALMATY("Asia/Almaty"), + + @SerializedName("Asia/Amman") + ASIA_AMMAN("Asia/Amman"), + + @SerializedName("Asia/Anadyr") + ASIA_ANADYR("Asia/Anadyr"), + + @SerializedName("Asia/Aqtau") + ASIA_AQTAU("Asia/Aqtau"), + + @SerializedName("Asia/Aqtobe") + ASIA_AQTOBE("Asia/Aqtobe"), + + @SerializedName("Asia/Ashgabat") + ASIA_ASHGABAT("Asia/Ashgabat"), + + @SerializedName("Asia/Ashkhabad") + ASIA_ASHKHABAD("Asia/Ashkhabad"), + + @SerializedName("Asia/Atyrau") + ASIA_ATYRAU("Asia/Atyrau"), + + @SerializedName("Asia/Baghdad") + ASIA_BAGHDAD("Asia/Baghdad"), + + @SerializedName("Asia/Bahrain") + ASIA_BAHRAIN("Asia/Bahrain"), + + @SerializedName("Asia/Baku") + ASIA_BAKU("Asia/Baku"), + + @SerializedName("Asia/Bangkok") + ASIA_BANGKOK("Asia/Bangkok"), + + @SerializedName("Asia/Barnaul") + ASIA_BARNAUL("Asia/Barnaul"), + + @SerializedName("Asia/Beirut") + ASIA_BEIRUT("Asia/Beirut"), + + @SerializedName("Asia/Bishkek") + ASIA_BISHKEK("Asia/Bishkek"), + + @SerializedName("Asia/Brunei") + ASIA_BRUNEI("Asia/Brunei"), + + @SerializedName("Asia/Calcutta") + ASIA_CALCUTTA("Asia/Calcutta"), + + @SerializedName("Asia/Chita") + ASIA_CHITA("Asia/Chita"), + + @SerializedName("Asia/Choibalsan") + ASIA_CHOIBALSAN("Asia/Choibalsan"), + + @SerializedName("Asia/Chongqing") + ASIA_CHONGQING("Asia/Chongqing"), + + @SerializedName("Asia/Chungking") + ASIA_CHUNGKING("Asia/Chungking"), + + @SerializedName("Asia/Colombo") + ASIA_COLOMBO("Asia/Colombo"), + + @SerializedName("Asia/Dacca") + ASIA_DACCA("Asia/Dacca"), + + @SerializedName("Asia/Damascus") + ASIA_DAMASCUS("Asia/Damascus"), + + @SerializedName("Asia/Dhaka") + ASIA_DHAKA("Asia/Dhaka"), + + @SerializedName("Asia/Dili") + ASIA_DILI("Asia/Dili"), + + @SerializedName("Asia/Dubai") + ASIA_DUBAI("Asia/Dubai"), + + @SerializedName("Asia/Dushanbe") + ASIA_DUSHANBE("Asia/Dushanbe"), + + @SerializedName("Asia/Famagusta") + ASIA_FAMAGUSTA("Asia/Famagusta"), + + @SerializedName("Asia/Gaza") + ASIA_GAZA("Asia/Gaza"), + + @SerializedName("Asia/Harbin") + ASIA_HARBIN("Asia/Harbin"), + + @SerializedName("Asia/Hebron") + ASIA_HEBRON("Asia/Hebron"), + + @SerializedName("Asia/Ho_Chi_Minh") + ASIA_HO_CHI_MINH("Asia/Ho_Chi_Minh"), + + @SerializedName("Asia/Hong_Kong") + ASIA_HONG_KONG("Asia/Hong_Kong"), + + @SerializedName("Asia/Hovd") + ASIA_HOVD("Asia/Hovd"), + + @SerializedName("Asia/Irkutsk") + ASIA_IRKUTSK("Asia/Irkutsk"), + + @SerializedName("Asia/Istanbul") + ASIA_ISTANBUL("Asia/Istanbul"), + + @SerializedName("Asia/Jakarta") + ASIA_JAKARTA("Asia/Jakarta"), + + @SerializedName("Asia/Jayapura") + ASIA_JAYAPURA("Asia/Jayapura"), + + @SerializedName("Asia/Jerusalem") + ASIA_JERUSALEM("Asia/Jerusalem"), + + @SerializedName("Asia/Kabul") + ASIA_KABUL("Asia/Kabul"), + + @SerializedName("Asia/Kamchatka") + ASIA_KAMCHATKA("Asia/Kamchatka"), + + @SerializedName("Asia/Karachi") + ASIA_KARACHI("Asia/Karachi"), + + @SerializedName("Asia/Kashgar") + ASIA_KASHGAR("Asia/Kashgar"), + + @SerializedName("Asia/Kathmandu") + ASIA_KATHMANDU("Asia/Kathmandu"), + + @SerializedName("Asia/Katmandu") + ASIA_KATMANDU("Asia/Katmandu"), + + @SerializedName("Asia/Khandyga") + ASIA_KHANDYGA("Asia/Khandyga"), + + @SerializedName("Asia/Kolkata") + ASIA_KOLKATA("Asia/Kolkata"), + + @SerializedName("Asia/Krasnoyarsk") + ASIA_KRASNOYARSK("Asia/Krasnoyarsk"), + + @SerializedName("Asia/Kuala_Lumpur") + ASIA_KUALA_LUMPUR("Asia/Kuala_Lumpur"), + + @SerializedName("Asia/Kuching") + ASIA_KUCHING("Asia/Kuching"), + + @SerializedName("Asia/Kuwait") + ASIA_KUWAIT("Asia/Kuwait"), + + @SerializedName("Asia/Macao") + ASIA_MACAO("Asia/Macao"), + + @SerializedName("Asia/Macau") + ASIA_MACAU("Asia/Macau"), + + @SerializedName("Asia/Magadan") + ASIA_MAGADAN("Asia/Magadan"), + + @SerializedName("Asia/Makassar") + ASIA_MAKASSAR("Asia/Makassar"), + + @SerializedName("Asia/Manila") + ASIA_MANILA("Asia/Manila"), + + @SerializedName("Asia/Muscat") + ASIA_MUSCAT("Asia/Muscat"), + + @SerializedName("Asia/Nicosia") + ASIA_NICOSIA("Asia/Nicosia"), + + @SerializedName("Asia/Novokuznetsk") + ASIA_NOVOKUZNETSK("Asia/Novokuznetsk"), + + @SerializedName("Asia/Novosibirsk") + ASIA_NOVOSIBIRSK("Asia/Novosibirsk"), + + @SerializedName("Asia/Omsk") + ASIA_OMSK("Asia/Omsk"), + + @SerializedName("Asia/Oral") + ASIA_ORAL("Asia/Oral"), + + @SerializedName("Asia/Phnom_Penh") + ASIA_PHNOM_PENH("Asia/Phnom_Penh"), + + @SerializedName("Asia/Pontianak") + ASIA_PONTIANAK("Asia/Pontianak"), + + @SerializedName("Asia/Pyongyang") + ASIA_PYONGYANG("Asia/Pyongyang"), + + @SerializedName("Asia/Qatar") + ASIA_QATAR("Asia/Qatar"), + + @SerializedName("Asia/Qostanay") + ASIA_QOSTANAY("Asia/Qostanay"), + + @SerializedName("Asia/Qyzylorda") + ASIA_QYZYLORDA("Asia/Qyzylorda"), + + @SerializedName("Asia/Rangoon") + ASIA_RANGOON("Asia/Rangoon"), + + @SerializedName("Asia/Riyadh") + ASIA_RIYADH("Asia/Riyadh"), + + @SerializedName("Asia/Saigon") + ASIA_SAIGON("Asia/Saigon"), + + @SerializedName("Asia/Sakhalin") + ASIA_SAKHALIN("Asia/Sakhalin"), + + @SerializedName("Asia/Samarkand") + ASIA_SAMARKAND("Asia/Samarkand"), + + @SerializedName("Asia/Seoul") + ASIA_SEOUL("Asia/Seoul"), + + @SerializedName("Asia/Shanghai") + ASIA_SHANGHAI("Asia/Shanghai"), + + @SerializedName("Asia/Singapore") + ASIA_SINGAPORE("Asia/Singapore"), + + @SerializedName("Asia/Srednekolymsk") + ASIA_SREDNEKOLYMSK("Asia/Srednekolymsk"), + + @SerializedName("Asia/Taipei") + ASIA_TAIPEI("Asia/Taipei"), + + @SerializedName("Asia/Tashkent") + ASIA_TASHKENT("Asia/Tashkent"), + + @SerializedName("Asia/Tbilisi") + ASIA_TBILISI("Asia/Tbilisi"), + + @SerializedName("Asia/Tehran") + ASIA_TEHRAN("Asia/Tehran"), + + @SerializedName("Asia/Tel_Aviv") + ASIA_TEL_AVIV("Asia/Tel_Aviv"), + + @SerializedName("Asia/Thimbu") + ASIA_THIMBU("Asia/Thimbu"), + + @SerializedName("Asia/Thimphu") + ASIA_THIMPHU("Asia/Thimphu"), + + @SerializedName("Asia/Tokyo") + ASIA_TOKYO("Asia/Tokyo"), + + @SerializedName("Asia/Tomsk") + ASIA_TOMSK("Asia/Tomsk"), + + @SerializedName("Asia/Ujung_Pandang") + ASIA_UJUNG_PANDANG("Asia/Ujung_Pandang"), + + @SerializedName("Asia/Ulaanbaatar") + ASIA_ULAANBAATAR("Asia/Ulaanbaatar"), + + @SerializedName("Asia/Ulan_Bator") + ASIA_ULAN_BATOR("Asia/Ulan_Bator"), + + @SerializedName("Asia/Urumqi") + ASIA_URUMQI("Asia/Urumqi"), + + @SerializedName("Asia/Ust-Nera") + ASIA_UST_NERA("Asia/Ust-Nera"), + + @SerializedName("Asia/Vientiane") + ASIA_VIENTIANE("Asia/Vientiane"), + + @SerializedName("Asia/Vladivostok") + ASIA_VLADIVOSTOK("Asia/Vladivostok"), + + @SerializedName("Asia/Yakutsk") + ASIA_YAKUTSK("Asia/Yakutsk"), + + @SerializedName("Asia/Yangon") + ASIA_YANGON("Asia/Yangon"), + + @SerializedName("Asia/Yekaterinburg") + ASIA_YEKATERINBURG("Asia/Yekaterinburg"), + + @SerializedName("Asia/Yerevan") + ASIA_YEREVAN("Asia/Yerevan"), + + @SerializedName("Atlantic/Azores") + ATLANTIC_AZORES("Atlantic/Azores"), + + @SerializedName("Atlantic/Bermuda") + ATLANTIC_BERMUDA("Atlantic/Bermuda"), + + @SerializedName("Atlantic/Canary") + ATLANTIC_CANARY("Atlantic/Canary"), + + @SerializedName("Atlantic/Cape_Verde") + ATLANTIC_CAPE_VERDE("Atlantic/Cape_Verde"), + + @SerializedName("Atlantic/Faeroe") + ATLANTIC_FAEROE("Atlantic/Faeroe"), + + @SerializedName("Atlantic/Faroe") + ATLANTIC_FAROE("Atlantic/Faroe"), + + @SerializedName("Atlantic/Jan_Mayen") + ATLANTIC_JAN_MAYEN("Atlantic/Jan_Mayen"), + + @SerializedName("Atlantic/Madeira") + ATLANTIC_MADEIRA("Atlantic/Madeira"), + + @SerializedName("Atlantic/Reykjavik") + ATLANTIC_REYKJAVIK("Atlantic/Reykjavik"), + + @SerializedName("Atlantic/South_Georgia") + ATLANTIC_SOUTH_GEORGIA("Atlantic/South_Georgia"), + + @SerializedName("Atlantic/St_Helena") + ATLANTIC_ST_HELENA("Atlantic/St_Helena"), + + @SerializedName("Atlantic/Stanley") + ATLANTIC_STANLEY("Atlantic/Stanley"), + + @SerializedName("Australia/ACT") + AUSTRALIA_ACT("Australia/ACT"), + + @SerializedName("Australia/Adelaide") + AUSTRALIA_ADELAIDE("Australia/Adelaide"), + + @SerializedName("Australia/Brisbane") + AUSTRALIA_BRISBANE("Australia/Brisbane"), + + @SerializedName("Australia/Broken_Hill") + AUSTRALIA_BROKEN_HILL("Australia/Broken_Hill"), + + @SerializedName("Australia/Canberra") + AUSTRALIA_CANBERRA("Australia/Canberra"), + + @SerializedName("Australia/Currie") + AUSTRALIA_CURRIE("Australia/Currie"), + + @SerializedName("Australia/Darwin") + AUSTRALIA_DARWIN("Australia/Darwin"), + + @SerializedName("Australia/Eucla") + AUSTRALIA_EUCLA("Australia/Eucla"), + + @SerializedName("Australia/Hobart") + AUSTRALIA_HOBART("Australia/Hobart"), + + @SerializedName("Australia/LHI") + AUSTRALIA_LHI("Australia/LHI"), + + @SerializedName("Australia/Lindeman") + AUSTRALIA_LINDEMAN("Australia/Lindeman"), + + @SerializedName("Australia/Lord_Howe") + AUSTRALIA_LORD_HOWE("Australia/Lord_Howe"), + + @SerializedName("Australia/Melbourne") + AUSTRALIA_MELBOURNE("Australia/Melbourne"), + + @SerializedName("Australia/NSW") + AUSTRALIA_NSW("Australia/NSW"), + + @SerializedName("Australia/North") + AUSTRALIA_NORTH("Australia/North"), + + @SerializedName("Australia/Perth") + AUSTRALIA_PERTH("Australia/Perth"), + + @SerializedName("Australia/Queensland") + AUSTRALIA_QUEENSLAND("Australia/Queensland"), + + @SerializedName("Australia/South") + AUSTRALIA_SOUTH("Australia/South"), + + @SerializedName("Australia/Sydney") + AUSTRALIA_SYDNEY("Australia/Sydney"), + + @SerializedName("Australia/Tasmania") + AUSTRALIA_TASMANIA("Australia/Tasmania"), + + @SerializedName("Australia/Victoria") + AUSTRALIA_VICTORIA("Australia/Victoria"), + + @SerializedName("Australia/West") + AUSTRALIA_WEST("Australia/West"), + + @SerializedName("Australia/Yancowinna") + AUSTRALIA_YANCOWINNA("Australia/Yancowinna"), + + @SerializedName("Brazil/Acre") + BRAZIL_ACRE("Brazil/Acre"), + + @SerializedName("Brazil/DeNoronha") + BRAZIL_DENORONHA("Brazil/DeNoronha"), + + @SerializedName("Brazil/East") + BRAZIL_EAST("Brazil/East"), + + @SerializedName("Brazil/West") + BRAZIL_WEST("Brazil/West"), + + @SerializedName("CET") + CET("CET"), + + @SerializedName("CST6CDT") + CST6CDT("CST6CDT"), + + @SerializedName("Canada/Atlantic") + CANADA_ATLANTIC("Canada/Atlantic"), + + @SerializedName("Canada/Central") + CANADA_CENTRAL("Canada/Central"), + + @SerializedName("Canada/Eastern") + CANADA_EASTERN("Canada/Eastern"), + + @SerializedName("Canada/Mountain") + CANADA_MOUNTAIN("Canada/Mountain"), + + @SerializedName("Canada/Newfoundland") + CANADA_NEWFOUNDLAND("Canada/Newfoundland"), + + @SerializedName("Canada/Pacific") + CANADA_PACIFIC("Canada/Pacific"), + + @SerializedName("Canada/Saskatchewan") + CANADA_SASKATCHEWAN("Canada/Saskatchewan"), + + @SerializedName("Canada/Yukon") + CANADA_YUKON("Canada/Yukon"), + + @SerializedName("Chile/Continental") + CHILE_CONTINENTAL("Chile/Continental"), + + @SerializedName("Chile/EasterIsland") + CHILE_EASTERISLAND("Chile/EasterIsland"), + + @SerializedName("Cuba") + CUBA("Cuba"), + + @SerializedName("EET") + EET("EET"), + + @SerializedName("EST") + EST("EST"), + + @SerializedName("EST5EDT") + EST5EDT("EST5EDT"), + + @SerializedName("Egypt") + EGYPT("Egypt"), + + @SerializedName("Eire") + EIRE("Eire"), + + @SerializedName("Etc/GMT") + ETC_GMT("Etc/GMT"), + + @SerializedName("Etc/GMT+0") + ETC_GMT_PLUS_0("Etc/GMT+0"), + + @SerializedName("Etc/GMT+1") + ETC_GMT_PLUS_1("Etc/GMT+1"), + + @SerializedName("Etc/GMT+10") + ETC_GMT_PLUS_10("Etc/GMT+10"), + + @SerializedName("Etc/GMT+11") + ETC_GMT_PLUS_11("Etc/GMT+11"), + + @SerializedName("Etc/GMT+12") + ETC_GMT_PLUS_12("Etc/GMT+12"), + + @SerializedName("Etc/GMT+2") + ETC_GMT_PLUS_2("Etc/GMT+2"), + + @SerializedName("Etc/GMT+3") + ETC_GMT_PLUS_3("Etc/GMT+3"), + + @SerializedName("Etc/GMT+4") + ETC_GMT_PLUS_4("Etc/GMT+4"), + + @SerializedName("Etc/GMT+5") + ETC_GMT_PLUS_5("Etc/GMT+5"), + + @SerializedName("Etc/GMT+6") + ETC_GMT_PLUS_6("Etc/GMT+6"), + + @SerializedName("Etc/GMT+7") + ETC_GMT_PLUS_7("Etc/GMT+7"), + + @SerializedName("Etc/GMT+8") + ETC_GMT_PLUS_8("Etc/GMT+8"), + + @SerializedName("Etc/GMT+9") + ETC_GMT_PLUS_9("Etc/GMT+9"), + + @SerializedName("Etc/GMT-0") + ETC_GMT_MINUS_0("Etc/GMT-0"), + + @SerializedName("Etc/GMT-1") + ETC_GMT_MINUS_1("Etc/GMT-1"), + + @SerializedName("Etc/GMT-10") + ETC_GMT_MINUS_10("Etc/GMT-10"), + + @SerializedName("Etc/GMT-11") + ETC_GMT_MINUS_11("Etc/GMT-11"), + + @SerializedName("Etc/GMT-12") + ETC_GMT_MINUS_12("Etc/GMT-12"), + + @SerializedName("Etc/GMT-13") + ETC_GMT_MINUS_13("Etc/GMT-13"), + + @SerializedName("Etc/GMT-14") + ETC_GMT_MINUS_14("Etc/GMT-14"), + + @SerializedName("Etc/GMT-2") + ETC_GMT_MINUS_2("Etc/GMT-2"), + + @SerializedName("Etc/GMT-3") + ETC_GMT_MINUS_3("Etc/GMT-3"), + + @SerializedName("Etc/GMT-4") + ETC_GMT_MINUS_4("Etc/GMT-4"), + + @SerializedName("Etc/GMT-5") + ETC_GMT_MINUS_5("Etc/GMT-5"), + + @SerializedName("Etc/GMT-6") + ETC_GMT_MINUS_6("Etc/GMT-6"), + + @SerializedName("Etc/GMT-7") + ETC_GMT_MINUS_7("Etc/GMT-7"), + + @SerializedName("Etc/GMT-8") + ETC_GMT_MINUS_8("Etc/GMT-8"), + + @SerializedName("Etc/GMT-9") + ETC_GMT_MINUS_9("Etc/GMT-9"), + + @SerializedName("Etc/GMT0") + ETC_GMT0("Etc/GMT0"), + + @SerializedName("Etc/Greenwich") + ETC_GREENWICH("Etc/Greenwich"), + + @SerializedName("Etc/UCT") + ETC_UCT("Etc/UCT"), + + @SerializedName("Etc/UTC") + ETC_UTC("Etc/UTC"), + + @SerializedName("Etc/Universal") + ETC_UNIVERSAL("Etc/Universal"), + + @SerializedName("Etc/Zulu") + ETC_ZULU("Etc/Zulu"), + + @SerializedName("Europe/Amsterdam") + EUROPE_AMSTERDAM("Europe/Amsterdam"), + + @SerializedName("Europe/Andorra") + EUROPE_ANDORRA("Europe/Andorra"), + + @SerializedName("Europe/Astrakhan") + EUROPE_ASTRAKHAN("Europe/Astrakhan"), + + @SerializedName("Europe/Athens") + EUROPE_ATHENS("Europe/Athens"), + + @SerializedName("Europe/Belfast") + EUROPE_BELFAST("Europe/Belfast"), + + @SerializedName("Europe/Belgrade") + EUROPE_BELGRADE("Europe/Belgrade"), + + @SerializedName("Europe/Berlin") + EUROPE_BERLIN("Europe/Berlin"), + + @SerializedName("Europe/Bratislava") + EUROPE_BRATISLAVA("Europe/Bratislava"), + + @SerializedName("Europe/Brussels") + EUROPE_BRUSSELS("Europe/Brussels"), + + @SerializedName("Europe/Bucharest") + EUROPE_BUCHAREST("Europe/Bucharest"), + + @SerializedName("Europe/Budapest") + EUROPE_BUDAPEST("Europe/Budapest"), + + @SerializedName("Europe/Busingen") + EUROPE_BUSINGEN("Europe/Busingen"), + + @SerializedName("Europe/Chisinau") + EUROPE_CHISINAU("Europe/Chisinau"), + + @SerializedName("Europe/Copenhagen") + EUROPE_COPENHAGEN("Europe/Copenhagen"), + + @SerializedName("Europe/Dublin") + EUROPE_DUBLIN("Europe/Dublin"), + + @SerializedName("Europe/Gibraltar") + EUROPE_GIBRALTAR("Europe/Gibraltar"), + + @SerializedName("Europe/Guernsey") + EUROPE_GUERNSEY("Europe/Guernsey"), + + @SerializedName("Europe/Helsinki") + EUROPE_HELSINKI("Europe/Helsinki"), + + @SerializedName("Europe/Isle_of_Man") + EUROPE_ISLE_OF_MAN("Europe/Isle_of_Man"), + + @SerializedName("Europe/Istanbul") + EUROPE_ISTANBUL("Europe/Istanbul"), + + @SerializedName("Europe/Jersey") + EUROPE_JERSEY("Europe/Jersey"), + + @SerializedName("Europe/Kaliningrad") + EUROPE_KALININGRAD("Europe/Kaliningrad"), + + @SerializedName("Europe/Kiev") + EUROPE_KIEV("Europe/Kiev"), + + @SerializedName("Europe/Kirov") + EUROPE_KIROV("Europe/Kirov"), + + @SerializedName("Europe/Kyiv") + EUROPE_KYIV("Europe/Kyiv"), + + @SerializedName("Europe/Lisbon") + EUROPE_LISBON("Europe/Lisbon"), + + @SerializedName("Europe/Ljubljana") + EUROPE_LJUBLJANA("Europe/Ljubljana"), + + @SerializedName("Europe/London") + EUROPE_LONDON("Europe/London"), + + @SerializedName("Europe/Luxembourg") + EUROPE_LUXEMBOURG("Europe/Luxembourg"), + + @SerializedName("Europe/Madrid") + EUROPE_MADRID("Europe/Madrid"), + + @SerializedName("Europe/Malta") + EUROPE_MALTA("Europe/Malta"), + + @SerializedName("Europe/Mariehamn") + EUROPE_MARIEHAMN("Europe/Mariehamn"), + + @SerializedName("Europe/Minsk") + EUROPE_MINSK("Europe/Minsk"), + + @SerializedName("Europe/Monaco") + EUROPE_MONACO("Europe/Monaco"), + + @SerializedName("Europe/Moscow") + EUROPE_MOSCOW("Europe/Moscow"), + + @SerializedName("Europe/Nicosia") + EUROPE_NICOSIA("Europe/Nicosia"), + + @SerializedName("Europe/Oslo") + EUROPE_OSLO("Europe/Oslo"), + + @SerializedName("Europe/Paris") + EUROPE_PARIS("Europe/Paris"), + + @SerializedName("Europe/Podgorica") + EUROPE_PODGORICA("Europe/Podgorica"), + + @SerializedName("Europe/Prague") + EUROPE_PRAGUE("Europe/Prague"), + + @SerializedName("Europe/Riga") + EUROPE_RIGA("Europe/Riga"), + + @SerializedName("Europe/Rome") + EUROPE_ROME("Europe/Rome"), + + @SerializedName("Europe/Samara") + EUROPE_SAMARA("Europe/Samara"), + + @SerializedName("Europe/San_Marino") + EUROPE_SAN_MARINO("Europe/San_Marino"), + + @SerializedName("Europe/Sarajevo") + EUROPE_SARAJEVO("Europe/Sarajevo"), + + @SerializedName("Europe/Saratov") + EUROPE_SARATOV("Europe/Saratov"), + + @SerializedName("Europe/Simferopol") + EUROPE_SIMFEROPOL("Europe/Simferopol"), + + @SerializedName("Europe/Skopje") + EUROPE_SKOPJE("Europe/Skopje"), + + @SerializedName("Europe/Sofia") + EUROPE_SOFIA("Europe/Sofia"), + + @SerializedName("Europe/Stockholm") + EUROPE_STOCKHOLM("Europe/Stockholm"), + + @SerializedName("Europe/Tallinn") + EUROPE_TALLINN("Europe/Tallinn"), + + @SerializedName("Europe/Tirane") + EUROPE_TIRANE("Europe/Tirane"), + + @SerializedName("Europe/Tiraspol") + EUROPE_TIRASPOL("Europe/Tiraspol"), + + @SerializedName("Europe/Ulyanovsk") + EUROPE_ULYANOVSK("Europe/Ulyanovsk"), + + @SerializedName("Europe/Uzhgorod") + EUROPE_UZHGOROD("Europe/Uzhgorod"), + + @SerializedName("Europe/Vaduz") + EUROPE_VADUZ("Europe/Vaduz"), + + @SerializedName("Europe/Vatican") + EUROPE_VATICAN("Europe/Vatican"), + + @SerializedName("Europe/Vienna") + EUROPE_VIENNA("Europe/Vienna"), + + @SerializedName("Europe/Vilnius") + EUROPE_VILNIUS("Europe/Vilnius"), + + @SerializedName("Europe/Volgograd") + EUROPE_VOLGOGRAD("Europe/Volgograd"), + + @SerializedName("Europe/Warsaw") + EUROPE_WARSAW("Europe/Warsaw"), + + @SerializedName("Europe/Zagreb") + EUROPE_ZAGREB("Europe/Zagreb"), + + @SerializedName("Europe/Zaporozhye") + EUROPE_ZAPOROZHYE("Europe/Zaporozhye"), + + @SerializedName("Europe/Zurich") + EUROPE_ZURICH("Europe/Zurich"), + + @SerializedName("Factory") + FACTORY("Factory"), + + @SerializedName("GB") + GB("GB"), + + @SerializedName("GB-Eire") + GB_EIRE("GB-Eire"), + + @SerializedName("GMT") + GMT("GMT"), + + @SerializedName("GMT+0") + GMT_PLUS_0("GMT+0"), + + @SerializedName("GMT-0") + GMT_MINUS_0("GMT-0"), + + @SerializedName("GMT0") + GMT0("GMT0"), + + @SerializedName("Greenwich") + GREENWICH("Greenwich"), + + @SerializedName("HST") + HST("HST"), + + @SerializedName("Hongkong") + HONGKONG("Hongkong"), + + @SerializedName("Iceland") + ICELAND("Iceland"), + + @SerializedName("Indian/Antananarivo") + INDIAN_ANTANANARIVO("Indian/Antananarivo"), + + @SerializedName("Indian/Chagos") + INDIAN_CHAGOS("Indian/Chagos"), + + @SerializedName("Indian/Christmas") + INDIAN_CHRISTMAS("Indian/Christmas"), + + @SerializedName("Indian/Cocos") + INDIAN_COCOS("Indian/Cocos"), + + @SerializedName("Indian/Comoro") + INDIAN_COMORO("Indian/Comoro"), + + @SerializedName("Indian/Kerguelen") + INDIAN_KERGUELEN("Indian/Kerguelen"), + + @SerializedName("Indian/Mahe") + INDIAN_MAHE("Indian/Mahe"), + + @SerializedName("Indian/Maldives") + INDIAN_MALDIVES("Indian/Maldives"), + + @SerializedName("Indian/Mauritius") + INDIAN_MAURITIUS("Indian/Mauritius"), + + @SerializedName("Indian/Mayotte") + INDIAN_MAYOTTE("Indian/Mayotte"), + + @SerializedName("Indian/Reunion") + INDIAN_REUNION("Indian/Reunion"), + + @SerializedName("Iran") + IRAN("Iran"), + + @SerializedName("Israel") + ISRAEL("Israel"), + + @SerializedName("Jamaica") + JAMAICA("Jamaica"), + + @SerializedName("Japan") + JAPAN("Japan"), + + @SerializedName("Kwajalein") + KWAJALEIN("Kwajalein"), + + @SerializedName("Libya") + LIBYA("Libya"), + + @SerializedName("MET") + MET("MET"), + + @SerializedName("MST") + MST("MST"), + + @SerializedName("MST7MDT") + MST7MDT("MST7MDT"), + + @SerializedName("Mexico/BajaNorte") + MEXICO_BAJANORTE("Mexico/BajaNorte"), + + @SerializedName("Mexico/BajaSur") + MEXICO_BAJASUR("Mexico/BajaSur"), + + @SerializedName("Mexico/General") + MEXICO_GENERAL("Mexico/General"), + + @SerializedName("NZ") + NZ("NZ"), + + @SerializedName("NZ-CHAT") + NZ_CHAT("NZ-CHAT"), + + @SerializedName("Navajo") + NAVAJO("Navajo"), + + @SerializedName("PRC") + PRC("PRC"), + + @SerializedName("PST8PDT") + PST8PDT("PST8PDT"), + + @SerializedName("Pacific/Apia") + PACIFIC_APIA("Pacific/Apia"), + + @SerializedName("Pacific/Auckland") + PACIFIC_AUCKLAND("Pacific/Auckland"), + + @SerializedName("Pacific/Bougainville") + PACIFIC_BOUGAINVILLE("Pacific/Bougainville"), + + @SerializedName("Pacific/Chatham") + PACIFIC_CHATHAM("Pacific/Chatham"), + + @SerializedName("Pacific/Chuuk") + PACIFIC_CHUUK("Pacific/Chuuk"), + + @SerializedName("Pacific/Easter") + PACIFIC_EASTER("Pacific/Easter"), + + @SerializedName("Pacific/Efate") + PACIFIC_EFATE("Pacific/Efate"), + + @SerializedName("Pacific/Enderbury") + PACIFIC_ENDERBURY("Pacific/Enderbury"), + + @SerializedName("Pacific/Fakaofo") + PACIFIC_FAKAOFO("Pacific/Fakaofo"), + + @SerializedName("Pacific/Fiji") + PACIFIC_FIJI("Pacific/Fiji"), + + @SerializedName("Pacific/Funafuti") + PACIFIC_FUNAFUTI("Pacific/Funafuti"), + + @SerializedName("Pacific/Galapagos") + PACIFIC_GALAPAGOS("Pacific/Galapagos"), + + @SerializedName("Pacific/Gambier") + PACIFIC_GAMBIER("Pacific/Gambier"), + + @SerializedName("Pacific/Guadalcanal") + PACIFIC_GUADALCANAL("Pacific/Guadalcanal"), + + @SerializedName("Pacific/Guam") + PACIFIC_GUAM("Pacific/Guam"), + + @SerializedName("Pacific/Honolulu") + PACIFIC_HONOLULU("Pacific/Honolulu"), + + @SerializedName("Pacific/Johnston") + PACIFIC_JOHNSTON("Pacific/Johnston"), + + @SerializedName("Pacific/Kanton") + PACIFIC_KANTON("Pacific/Kanton"), + + @SerializedName("Pacific/Kiritimati") + PACIFIC_KIRITIMATI("Pacific/Kiritimati"), + + @SerializedName("Pacific/Kosrae") + PACIFIC_KOSRAE("Pacific/Kosrae"), + + @SerializedName("Pacific/Kwajalein") + PACIFIC_KWAJALEIN("Pacific/Kwajalein"), + + @SerializedName("Pacific/Majuro") + PACIFIC_MAJURO("Pacific/Majuro"), + + @SerializedName("Pacific/Marquesas") + PACIFIC_MARQUESAS("Pacific/Marquesas"), + + @SerializedName("Pacific/Midway") + PACIFIC_MIDWAY("Pacific/Midway"), + + @SerializedName("Pacific/Nauru") + PACIFIC_NAURU("Pacific/Nauru"), + + @SerializedName("Pacific/Niue") + PACIFIC_NIUE("Pacific/Niue"), + + @SerializedName("Pacific/Norfolk") + PACIFIC_NORFOLK("Pacific/Norfolk"), + + @SerializedName("Pacific/Noumea") + PACIFIC_NOUMEA("Pacific/Noumea"), + + @SerializedName("Pacific/Pago_Pago") + PACIFIC_PAGO_PAGO("Pacific/Pago_Pago"), + + @SerializedName("Pacific/Palau") + PACIFIC_PALAU("Pacific/Palau"), + + @SerializedName("Pacific/Pitcairn") + PACIFIC_PITCAIRN("Pacific/Pitcairn"), + + @SerializedName("Pacific/Pohnpei") + PACIFIC_POHNPEI("Pacific/Pohnpei"), + + @SerializedName("Pacific/Ponape") + PACIFIC_PONAPE("Pacific/Ponape"), + + @SerializedName("Pacific/Port_Moresby") + PACIFIC_PORT_MORESBY("Pacific/Port_Moresby"), + + @SerializedName("Pacific/Rarotonga") + PACIFIC_RAROTONGA("Pacific/Rarotonga"), + + @SerializedName("Pacific/Saipan") + PACIFIC_SAIPAN("Pacific/Saipan"), + + @SerializedName("Pacific/Samoa") + PACIFIC_SAMOA("Pacific/Samoa"), + + @SerializedName("Pacific/Tahiti") + PACIFIC_TAHITI("Pacific/Tahiti"), + + @SerializedName("Pacific/Tarawa") + PACIFIC_TARAWA("Pacific/Tarawa"), + + @SerializedName("Pacific/Tongatapu") + PACIFIC_TONGATAPU("Pacific/Tongatapu"), + + @SerializedName("Pacific/Truk") + PACIFIC_TRUK("Pacific/Truk"), + + @SerializedName("Pacific/Wake") + PACIFIC_WAKE("Pacific/Wake"), + + @SerializedName("Pacific/Wallis") + PACIFIC_WALLIS("Pacific/Wallis"), + + @SerializedName("Pacific/Yap") + PACIFIC_YAP("Pacific/Yap"), + + @SerializedName("Poland") + POLAND("Poland"), + + @SerializedName("Portugal") + PORTUGAL("Portugal"), + + @SerializedName("ROC") + ROC("ROC"), + + @SerializedName("ROK") + ROK("ROK"), + + @SerializedName("Singapore") + SINGAPORE("Singapore"), + + @SerializedName("Turkey") + TURKEY("Turkey"), + + @SerializedName("UCT") + UCT("UCT"), + + @SerializedName("US/Alaska") + US_ALASKA("US/Alaska"), + + @SerializedName("US/Aleutian") + US_ALEUTIAN("US/Aleutian"), + + @SerializedName("US/Arizona") + US_ARIZONA("US/Arizona"), + + @SerializedName("US/Central") + US_CENTRAL("US/Central"), + + @SerializedName("US/East-Indiana") + US_EAST_INDIANA("US/East-Indiana"), + + @SerializedName("US/Eastern") + US_EASTERN("US/Eastern"), + + @SerializedName("US/Hawaii") + US_HAWAII("US/Hawaii"), + + @SerializedName("US/Indiana-Starke") + US_INDIANA_STARKE("US/Indiana-Starke"), + + @SerializedName("US/Michigan") + US_MICHIGAN("US/Michigan"), + + @SerializedName("US/Mountain") + US_MOUNTAIN("US/Mountain"), + + @SerializedName("US/Pacific") + US_PACIFIC("US/Pacific"), + + @SerializedName("US/Pacific-New") + US_PACIFIC_NEW("US/Pacific-New"), + + @SerializedName("US/Samoa") + US_SAMOA("US/Samoa"), + + @SerializedName("UTC") + UTC("UTC"), + + @SerializedName("Universal") + UNIVERSAL("Universal"), + + @SerializedName("W-SU") + W_SU("W-SU"), + + @SerializedName("WET") + WET("WET"), + + @SerializedName("Zulu") + ZULU("Zulu"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + Timezone(String value) { + this.value = value; + } + } + + public enum ValueGroupingWindow implements ApiRequestParams.EnumParam { + @SerializedName("day") + DAY("day"), + + @SerializedName("hour") + HOUR("hour"), + + @SerializedName("month") + MONTH("month"), + + @SerializedName("week") + WEEK("week"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + ValueGroupingWindow(String value) { + this.value = value; + } + } +} diff --git a/src/main/java/com/stripe/param/billingportal/ConfigurationCreateParams.java b/src/main/java/com/stripe/param/billingportal/ConfigurationCreateParams.java index 10a08bdd270..ae5e12548f6 100644 --- a/src/main/java/com/stripe/param/billingportal/ConfigurationCreateParams.java +++ b/src/main/java/com/stripe/param/billingportal/ConfigurationCreateParams.java @@ -1399,6 +1399,10 @@ public Builder setScheduleAtPeriodEnd( @Getter @EqualsAndHashCode(callSuper = false) public static class Product { + /** Control whether the quantity of the product can be adjusted. */ + @SerializedName("adjustable_quantity") + AdjustableQuantity adjustableQuantity; + /** * Map of extra parameters for custom features not available in this client library. The * content in this map is not serialized under this field's {@code @SerializedName} value. @@ -1420,7 +1424,12 @@ public static class Product { @SerializedName("product") String product; - private Product(Map extraParams, List prices, String product) { + private Product( + AdjustableQuantity adjustableQuantity, + Map extraParams, + List prices, + String product) { + this.adjustableQuantity = adjustableQuantity; this.extraParams = extraParams; this.prices = prices; this.product = product; @@ -1431,6 +1440,8 @@ public static Builder builder() { } public static class Builder { + private AdjustableQuantity adjustableQuantity; + private Map extraParams; private List prices; @@ -1440,7 +1451,15 @@ public static class Builder { /** Finalize and obtain parameter instance from this builder. */ public ConfigurationCreateParams.Features.SubscriptionUpdate.Product build() { return new ConfigurationCreateParams.Features.SubscriptionUpdate.Product( - this.extraParams, this.prices, this.product); + this.adjustableQuantity, this.extraParams, this.prices, this.product); + } + + /** Control whether the quantity of the product can be adjusted. */ + public Builder setAdjustableQuantity( + ConfigurationCreateParams.Features.SubscriptionUpdate.Product.AdjustableQuantity + adjustableQuantity) { + this.adjustableQuantity = adjustableQuantity; + return this; } /** @@ -1507,6 +1526,115 @@ public Builder setProduct(String product) { return this; } } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class AdjustableQuantity { + /** + * Required. Set to true if the quantity can be adjusted to any + * non-negative integer. + */ + @SerializedName("enabled") + Boolean enabled; + + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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 maximum quantity that can be set for the product. */ + @SerializedName("maximum") + Long maximum; + + /** The minimum quantity that can be set for the product. */ + @SerializedName("minimum") + Long minimum; + + private AdjustableQuantity( + Boolean enabled, Map extraParams, Long maximum, Long minimum) { + this.enabled = enabled; + this.extraParams = extraParams; + this.maximum = maximum; + this.minimum = minimum; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Boolean enabled; + + private Map extraParams; + + private Long maximum; + + private Long minimum; + + /** Finalize and obtain parameter instance from this builder. */ + public ConfigurationCreateParams.Features.SubscriptionUpdate.Product.AdjustableQuantity + build() { + return new ConfigurationCreateParams.Features.SubscriptionUpdate.Product + .AdjustableQuantity(this.enabled, this.extraParams, this.maximum, this.minimum); + } + + /** + * Required. Set to true if the quantity can be adjusted to any + * non-negative integer. + */ + public Builder setEnabled(Boolean enabled) { + this.enabled = enabled; + 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 + * ConfigurationCreateParams.Features.SubscriptionUpdate.Product.AdjustableQuantity#extraParams} + * for the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the + * original map. See {@link + * ConfigurationCreateParams.Features.SubscriptionUpdate.Product.AdjustableQuantity#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 maximum quantity that can be set for the product. */ + public Builder setMaximum(Long maximum) { + this.maximum = maximum; + return this; + } + + /** The minimum quantity that can be set for the product. */ + public Builder setMinimum(Long minimum) { + this.minimum = minimum; + return this; + } + } + } } @Getter diff --git a/src/main/java/com/stripe/param/billingportal/ConfigurationUpdateParams.java b/src/main/java/com/stripe/param/billingportal/ConfigurationUpdateParams.java index 763de3b9ead..110944aed30 100644 --- a/src/main/java/com/stripe/param/billingportal/ConfigurationUpdateParams.java +++ b/src/main/java/com/stripe/param/billingportal/ConfigurationUpdateParams.java @@ -1441,6 +1441,10 @@ public Builder setScheduleAtPeriodEnd( @Getter @EqualsAndHashCode(callSuper = false) public static class Product { + /** Control whether the quantity of the product can be adjusted. */ + @SerializedName("adjustable_quantity") + AdjustableQuantity adjustableQuantity; + /** * Map of extra parameters for custom features not available in this client library. The * content in this map is not serialized under this field's {@code @SerializedName} value. @@ -1462,7 +1466,12 @@ public static class Product { @SerializedName("product") Object product; - private Product(Map extraParams, List prices, Object product) { + private Product( + AdjustableQuantity adjustableQuantity, + Map extraParams, + List prices, + Object product) { + this.adjustableQuantity = adjustableQuantity; this.extraParams = extraParams; this.prices = prices; this.product = product; @@ -1473,6 +1482,8 @@ public static Builder builder() { } public static class Builder { + private AdjustableQuantity adjustableQuantity; + private Map extraParams; private List prices; @@ -1482,7 +1493,15 @@ public static class Builder { /** Finalize and obtain parameter instance from this builder. */ public ConfigurationUpdateParams.Features.SubscriptionUpdate.Product build() { return new ConfigurationUpdateParams.Features.SubscriptionUpdate.Product( - this.extraParams, this.prices, this.product); + this.adjustableQuantity, this.extraParams, this.prices, this.product); + } + + /** Control whether the quantity of the product can be adjusted. */ + public Builder setAdjustableQuantity( + ConfigurationUpdateParams.Features.SubscriptionUpdate.Product.AdjustableQuantity + adjustableQuantity) { + this.adjustableQuantity = adjustableQuantity; + return this; } /** @@ -1555,6 +1574,115 @@ public Builder setProduct(EmptyParam product) { return this; } } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class AdjustableQuantity { + /** + * Required. Set to true if the quantity can be adjusted to any + * non-negative integer. + */ + @SerializedName("enabled") + Boolean enabled; + + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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 maximum quantity that can be set for the product. */ + @SerializedName("maximum") + Long maximum; + + /** The minimum quantity that can be set for the product. */ + @SerializedName("minimum") + Long minimum; + + private AdjustableQuantity( + Boolean enabled, Map extraParams, Long maximum, Long minimum) { + this.enabled = enabled; + this.extraParams = extraParams; + this.maximum = maximum; + this.minimum = minimum; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Boolean enabled; + + private Map extraParams; + + private Long maximum; + + private Long minimum; + + /** Finalize and obtain parameter instance from this builder. */ + public ConfigurationUpdateParams.Features.SubscriptionUpdate.Product.AdjustableQuantity + build() { + return new ConfigurationUpdateParams.Features.SubscriptionUpdate.Product + .AdjustableQuantity(this.enabled, this.extraParams, this.maximum, this.minimum); + } + + /** + * Required. Set to true if the quantity can be adjusted to any + * non-negative integer. + */ + public Builder setEnabled(Boolean enabled) { + this.enabled = enabled; + 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 + * ConfigurationUpdateParams.Features.SubscriptionUpdate.Product.AdjustableQuantity#extraParams} + * for the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the + * original map. See {@link + * ConfigurationUpdateParams.Features.SubscriptionUpdate.Product.AdjustableQuantity#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 maximum quantity that can be set for the product. */ + public Builder setMaximum(Long maximum) { + this.maximum = maximum; + return this; + } + + /** The minimum quantity that can be set for the product. */ + public Builder setMinimum(Long minimum) { + this.minimum = minimum; + return this; + } + } + } } @Getter diff --git a/src/main/java/com/stripe/param/checkout/SessionCreateParams.java b/src/main/java/com/stripe/param/checkout/SessionCreateParams.java index 961fecf182e..13e3e0b5e1a 100644 --- a/src/main/java/com/stripe/param/checkout/SessionCreateParams.java +++ b/src/main/java/com/stripe/param/checkout/SessionCreateParams.java @@ -233,6 +233,15 @@ public class SessionCreateParams extends ApiRequestParams { @SerializedName("optional_items") List optionalItems; + /** + * Where the user is coming from. This informs the optimizations that are applied to the session. + * For example, a session originating from a mobile app may behave more like a native app, + * depending on the platform. This parameter is currently not allowed if {@code ui_mode} is {@code + * custom}. + */ + @SerializedName("origin_context") + OriginContext originContext; + /** * A subset of parameters to be passed to PaymentIntent creation for Checkout Sessions in {@code * payment} mode. @@ -415,6 +424,7 @@ private SessionCreateParams( Map metadata, Mode mode, List optionalItems, + OriginContext originContext, PaymentIntentData paymentIntentData, PaymentMethodCollection paymentMethodCollection, String paymentMethodConfiguration, @@ -461,6 +471,7 @@ private SessionCreateParams( this.metadata = metadata; this.mode = mode; this.optionalItems = optionalItems; + this.originContext = originContext; this.paymentIntentData = paymentIntentData; this.paymentMethodCollection = paymentMethodCollection; this.paymentMethodConfiguration = paymentMethodConfiguration; @@ -540,6 +551,8 @@ public static class Builder { private List optionalItems; + private OriginContext originContext; + private PaymentIntentData paymentIntentData; private PaymentMethodCollection paymentMethodCollection; @@ -609,6 +622,7 @@ public SessionCreateParams build() { this.metadata, this.mode, this.optionalItems, + this.originContext, this.paymentIntentData, this.paymentMethodCollection, this.paymentMethodConfiguration, @@ -1002,6 +1016,17 @@ public Builder addAllOptionalItem(List element return this; } + /** + * Where the user is coming from. This informs the optimizations that are applied to the + * session. For example, a session originating from a mobile app may behave more like a native + * app, depending on the platform. This parameter is currently not allowed if {@code ui_mode} is + * {@code custom}. + */ + public Builder setOriginContext(SessionCreateParams.OriginContext originContext) { + this.originContext = originContext; + return this; + } + /** * A subset of parameters to be passed to PaymentIntent creation for Checkout Sessions in {@code * payment} mode. @@ -3931,10 +3956,17 @@ public static class RenderingOptions { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** ID of the invoice rendering template to use for this invoice. */ + @SerializedName("template") + String template; + private RenderingOptions( - ApiRequestParams.EnumParam amountTaxDisplay, Map extraParams) { + ApiRequestParams.EnumParam amountTaxDisplay, + Map extraParams, + String template) { this.amountTaxDisplay = amountTaxDisplay; this.extraParams = extraParams; + this.template = template; } public static Builder builder() { @@ -3946,10 +3978,12 @@ public static class Builder { private Map extraParams; + private String template; + /** Finalize and obtain parameter instance from this builder. */ public SessionCreateParams.InvoiceCreation.InvoiceData.RenderingOptions build() { return new SessionCreateParams.InvoiceCreation.InvoiceData.RenderingOptions( - this.amountTaxDisplay, this.extraParams); + this.amountTaxDisplay, this.extraParams, this.template); } /** @@ -4007,6 +4041,12 @@ public Builder putAllExtraParam(Map map) { this.extraParams.putAll(map); return this; } + + /** ID of the invoice rendering template to use for this invoice. */ + public Builder setTemplate(String template) { + this.template = template; + return this; + } } public enum AmountTaxDisplay implements ApiRequestParams.EnumParam { @@ -13157,9 +13197,35 @@ public static class Pix { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - private Pix(Long expiresAfterSeconds, 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") + SetupFutureUsage setupFutureUsage; + + private Pix( + Long expiresAfterSeconds, + Map extraParams, + SetupFutureUsage setupFutureUsage) { this.expiresAfterSeconds = expiresAfterSeconds; this.extraParams = extraParams; + this.setupFutureUsage = setupFutureUsage; } public static Builder builder() { @@ -13171,10 +13237,12 @@ public static class Builder { private Map extraParams; + private SetupFutureUsage setupFutureUsage; + /** Finalize and obtain parameter instance from this builder. */ public SessionCreateParams.PaymentMethodOptions.Pix build() { return new SessionCreateParams.PaymentMethodOptions.Pix( - this.expiresAfterSeconds, this.extraParams); + this.expiresAfterSeconds, this.extraParams, this.setupFutureUsage); } /** @@ -13213,6 +13281,44 @@ 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( + SessionCreateParams.PaymentMethodOptions.Pix.SetupFutureUsage setupFutureUsage) { + this.setupFutureUsage = setupFutureUsage; + return this; + } + } + + public enum SetupFutureUsage implements ApiRequestParams.EnumParam { + @SerializedName("none") + NONE("none"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + SetupFutureUsage(String value) { + this.value = value; + } } } @@ -14486,6 +14592,16 @@ public static class Permissions { @SerializedName("update") Update update; + /** + * Determines which entity is allowed to update the discounts (coupons or promotion codes) that + * apply to this session. + * + *

Default is {@code client_only}. Stripe Checkout client will automatically handle discount + * updates. If set to {@code server_only}, only your server is allowed to update discounts. + */ + @SerializedName("update_discounts") + UpdateDiscounts updateDiscounts; + /** * Determines which entity is allowed to update the line items. * @@ -14516,10 +14632,12 @@ public static class Permissions { private Permissions( Map extraParams, Update update, + UpdateDiscounts updateDiscounts, UpdateLineItems updateLineItems, UpdateShippingDetails updateShippingDetails) { this.extraParams = extraParams; this.update = update; + this.updateDiscounts = updateDiscounts; this.updateLineItems = updateLineItems; this.updateShippingDetails = updateShippingDetails; } @@ -14533,6 +14651,8 @@ public static class Builder { private Update update; + private UpdateDiscounts updateDiscounts; + private UpdateLineItems updateLineItems; private UpdateShippingDetails updateShippingDetails; @@ -14540,7 +14660,11 @@ public static class Builder { /** Finalize and obtain parameter instance from this builder. */ public SessionCreateParams.Permissions build() { return new SessionCreateParams.Permissions( - this.extraParams, this.update, this.updateLineItems, this.updateShippingDetails); + this.extraParams, + this.update, + this.updateDiscounts, + this.updateLineItems, + this.updateShippingDetails); } /** @@ -14575,6 +14699,20 @@ public Builder setUpdate(SessionCreateParams.Permissions.Update update) { return this; } + /** + * Determines which entity is allowed to update the discounts (coupons or promotion codes) + * that apply to this session. + * + *

Default is {@code client_only}. Stripe Checkout client will automatically handle + * discount updates. If set to {@code server_only}, only your server is allowed to update + * discounts. + */ + public Builder setUpdateDiscounts( + SessionCreateParams.Permissions.UpdateDiscounts updateDiscounts) { + this.updateDiscounts = updateDiscounts; + return this; + } + /** * Determines which entity is allowed to update the line items. * @@ -14767,6 +14905,21 @@ public enum ShippingDetails implements ApiRequestParams.EnumParam { } } + public enum UpdateDiscounts implements ApiRequestParams.EnumParam { + @SerializedName("client_only") + CLIENT_ONLY("client_only"), + + @SerializedName("server_only") + SERVER_ONLY("server_only"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + UpdateDiscounts(String value) { + this.value = value; + } + } + public enum UpdateLineItems implements ApiRequestParams.EnumParam { @SerializedName("client_only") CLIENT_ONLY("client_only"), @@ -17338,7 +17491,10 @@ public static class BillingMode { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** Required. */ + /** + * Required. Controls the calculation and orchestration of prorations and + * invoices for subscriptions. + */ @SerializedName("type") Type type; @@ -17389,7 +17545,10 @@ public Builder putAllExtraParam(Map map) { return this; } - /** Required. */ + /** + * Required. Controls the calculation and orchestration of prorations and + * invoices for subscriptions. + */ public Builder setType(SessionCreateParams.SubscriptionData.BillingMode.Type type) { this.type = type; return this; @@ -18333,6 +18492,21 @@ public enum Mode implements ApiRequestParams.EnumParam { } } + public enum OriginContext implements ApiRequestParams.EnumParam { + @SerializedName("mobile_app") + MOBILE_APP("mobile_app"), + + @SerializedName("web") + WEB("web"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + OriginContext(String value) { + this.value = value; + } + } + public enum PaymentMethodCollection implements ApiRequestParams.EnumParam { @SerializedName("always") ALWAYS("always"), @@ -18442,6 +18616,9 @@ public enum PaymentMethodType implements ApiRequestParams.EnumParam { @SerializedName("naver_pay") NAVER_PAY("naver_pay"), + @SerializedName("nz_bank_account") + NZ_BANK_ACCOUNT("nz_bank_account"), + @SerializedName("oxxo") OXXO("oxxo"), diff --git a/src/main/java/com/stripe/param/checkout/SessionUpdateParams.java b/src/main/java/com/stripe/param/checkout/SessionUpdateParams.java index ca42dc7f00c..346305200eb 100644 --- a/src/main/java/com/stripe/param/checkout/SessionUpdateParams.java +++ b/src/main/java/com/stripe/param/checkout/SessionUpdateParams.java @@ -22,6 +22,10 @@ public class SessionUpdateParams extends ApiRequestParams { @SerializedName("collected_information") CollectedInformation collectedInformation; + /** List of coupons and promotion codes attached to the Checkout Session. */ + @SerializedName("discounts") + Object discounts; + /** Specifies which fields in the response should be expanded. */ @SerializedName("expand") List expand; @@ -68,19 +72,30 @@ public class SessionUpdateParams extends ApiRequestParams { @SerializedName("shipping_options") Object shippingOptions; + /** + * A subset of parameters to be passed to subscription creation for Checkout Sessions in {@code + * subscription} mode. + */ + @SerializedName("subscription_data") + SubscriptionData subscriptionData; + private SessionUpdateParams( CollectedInformation collectedInformation, + Object discounts, List expand, Map extraParams, List lineItems, Object metadata, - Object shippingOptions) { + Object shippingOptions, + SubscriptionData subscriptionData) { this.collectedInformation = collectedInformation; + this.discounts = discounts; this.expand = expand; this.extraParams = extraParams; this.lineItems = lineItems; this.metadata = metadata; this.shippingOptions = shippingOptions; + this.subscriptionData = subscriptionData; } public static Builder builder() { @@ -90,6 +105,8 @@ public static Builder builder() { public static class Builder { private CollectedInformation collectedInformation; + private Object discounts; + private List expand; private Map extraParams; @@ -100,15 +117,19 @@ public static class Builder { private Object shippingOptions; + private SubscriptionData subscriptionData; + /** Finalize and obtain parameter instance from this builder. */ public SessionUpdateParams build() { return new SessionUpdateParams( this.collectedInformation, + this.discounts, this.expand, this.extraParams, this.lineItems, this.metadata, - this.shippingOptions); + this.shippingOptions, + this.subscriptionData); } /** @@ -121,6 +142,46 @@ public Builder setCollectedInformation( return this; } + /** + * Add an element to `discounts` list. A list is initialized for the first `add/addAll` call, + * and subsequent calls adds additional elements to the original list. See {@link + * SessionUpdateParams#discounts} for the field documentation. + */ + @SuppressWarnings("unchecked") + public Builder addDiscount(SessionUpdateParams.Discount element) { + if (this.discounts == null || this.discounts instanceof EmptyParam) { + this.discounts = new ArrayList(); + } + ((List) this.discounts).add(element); + return this; + } + + /** + * Add all elements to `discounts` list. A list is initialized for the first `add/addAll` call, + * and subsequent calls adds additional elements to the original list. See {@link + * SessionUpdateParams#discounts} for the field documentation. + */ + @SuppressWarnings("unchecked") + public Builder addAllDiscount(List elements) { + if (this.discounts == null || this.discounts instanceof EmptyParam) { + this.discounts = new ArrayList(); + } + ((List) this.discounts).addAll(elements); + return this; + } + + /** List of coupons and promotion codes attached to the Checkout Session. */ + public Builder setDiscounts(EmptyParam discounts) { + this.discounts = discounts; + return this; + } + + /** List of coupons and promotion codes attached to the Checkout Session. */ + public Builder setDiscounts(List discounts) { + this.discounts = discounts; + return this; + } + /** * 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 @@ -288,6 +349,15 @@ public Builder setShippingOptions(List shipp this.shippingOptions = shippingOptions; return this; } + + /** + * A subset of parameters to be passed to subscription creation for Checkout Sessions in {@code + * subscription} mode. + */ + public Builder setSubscriptionData(SessionUpdateParams.SubscriptionData subscriptionData) { + this.subscriptionData = subscriptionData; + return this; + } } @Getter @@ -651,6 +721,375 @@ public Builder setState(EmptyParam state) { } } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Discount { + /** + * The ID of the Coupon to apply to this + * Session. One of {@code coupon} or {@code coupon_data} is required when updating discounts. + */ + @SerializedName("coupon") + Object coupon; + + /** + * Data used to generate a new Coupon object + * inline. One of {@code coupon} or {@code coupon_data} is required when updating discounts. + */ + @SerializedName("coupon_data") + CouponData couponData; + + /** + * Map of extra parameters for custom features not available in this client library. The content + * in this map is not serialized under this field's {@code @SerializedName} value. Instead, each + * key/value pair is serialized as if the key is a root-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 Discount(Object coupon, CouponData couponData, Map extraParams) { + this.coupon = coupon; + this.couponData = couponData; + this.extraParams = extraParams; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Object coupon; + + private CouponData couponData; + + private Map extraParams; + + /** Finalize and obtain parameter instance from this builder. */ + public SessionUpdateParams.Discount build() { + return new SessionUpdateParams.Discount(this.coupon, this.couponData, this.extraParams); + } + + /** + * The ID of the Coupon to apply to this + * Session. One of {@code coupon} or {@code coupon_data} is required when updating discounts. + */ + public Builder setCoupon(String coupon) { + this.coupon = coupon; + return this; + } + + /** + * The ID of the Coupon to apply to this + * Session. One of {@code coupon} or {@code coupon_data} is required when updating discounts. + */ + public Builder setCoupon(EmptyParam coupon) { + this.coupon = coupon; + return this; + } + + /** + * Data used to generate a new Coupon object + * inline. One of {@code coupon} or {@code coupon_data} is required when updating discounts. + */ + public Builder setCouponData(SessionUpdateParams.Discount.CouponData couponData) { + this.couponData = couponData; + 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 + * SessionUpdateParams.Discount#extraParams} for the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original map. + * See {@link SessionUpdateParams.Discount#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 CouponData { + /** + * A positive integer representing the amount to subtract from an invoice total (required if + * {@code percent_off} is not passed). + */ + @SerializedName("amount_off") + Long amountOff; + + /** + * Three-letter ISO code for the currency of + * the {@code amount_off} parameter (required if {@code amount_off} is passed). + */ + @SerializedName("currency") + Object currency; + + /** + * Specifies how long the discount will be in effect if used on a subscription. Defaults to + * {@code once}. + */ + @SerializedName("duration") + Duration duration; + + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-level field (serialized) + * name in this param object. Effectively, this map is flattened to its parent instance. + */ + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** + * Set of key-value pairs that you can + * attach to an object. This can be useful for storing additional information about the object + * in a structured format. Individual keys can be unset by posting an empty value to them. All + * keys can be unset by posting an empty value to {@code metadata}. + */ + @SerializedName("metadata") + Object metadata; + + /** + * Name of the coupon displayed to customers on, for instance invoices, or receipts. By + * default the {@code id} is shown if {@code name} is not set. + */ + @SerializedName("name") + Object name; + + /** + * A positive float larger than 0, and smaller or equal to 100, that represents the discount + * the coupon will apply (required if {@code amount_off} is not passed). + */ + @SerializedName("percent_off") + BigDecimal percentOff; + + private CouponData( + Long amountOff, + Object currency, + Duration duration, + Map extraParams, + Object metadata, + Object name, + BigDecimal percentOff) { + this.amountOff = amountOff; + this.currency = currency; + this.duration = duration; + this.extraParams = extraParams; + this.metadata = metadata; + this.name = name; + this.percentOff = percentOff; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Long amountOff; + + private Object currency; + + private Duration duration; + + private Map extraParams; + + private Object metadata; + + private Object name; + + private BigDecimal percentOff; + + /** Finalize and obtain parameter instance from this builder. */ + public SessionUpdateParams.Discount.CouponData build() { + return new SessionUpdateParams.Discount.CouponData( + this.amountOff, + this.currency, + this.duration, + this.extraParams, + this.metadata, + this.name, + this.percentOff); + } + + /** + * A positive integer representing the amount to subtract from an invoice total (required if + * {@code percent_off} is not passed). + */ + public Builder setAmountOff(Long amountOff) { + this.amountOff = amountOff; + return this; + } + + /** + * Three-letter ISO code for the currency + * of the {@code amount_off} parameter (required if {@code amount_off} is passed). + */ + public Builder setCurrency(String currency) { + this.currency = currency; + return this; + } + + /** + * Three-letter ISO code for the currency + * of the {@code amount_off} parameter (required if {@code amount_off} is passed). + */ + public Builder setCurrency(EmptyParam currency) { + this.currency = currency; + return this; + } + + /** + * Specifies how long the discount will be in effect if used on a subscription. Defaults to + * {@code once}. + */ + public Builder setDuration(SessionUpdateParams.Discount.CouponData.Duration duration) { + this.duration = duration; + 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 SessionUpdateParams.Discount.CouponData#extraParams} for the field + * documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link SessionUpdateParams.Discount.CouponData#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 `metadata` map. A map is initialized for the first `put/putAll` + * call, and subsequent calls add additional key/value pairs to the original map. See {@link + * SessionUpdateParams.Discount.CouponData#metadata} for the field documentation. + */ + @SuppressWarnings("unchecked") + public Builder putMetadata(String key, String value) { + if (this.metadata == null || this.metadata instanceof EmptyParam) { + this.metadata = new HashMap(); + } + ((Map) this.metadata).put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `metadata` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link SessionUpdateParams.Discount.CouponData#metadata} for the field + * documentation. + */ + @SuppressWarnings("unchecked") + public Builder putAllMetadata(Map map) { + if (this.metadata == null || this.metadata instanceof EmptyParam) { + this.metadata = new HashMap(); + } + ((Map) this.metadata).putAll(map); + return this; + } + + /** + * Set of key-value pairs that you can + * attach to an object. This can be useful for storing additional information about the + * object in a structured format. Individual keys can be unset by posting an empty value to + * them. All keys can be unset by posting an empty value to {@code metadata}. + */ + public Builder setMetadata(EmptyParam metadata) { + this.metadata = metadata; + return this; + } + + /** + * Set of key-value pairs that you can + * attach to an object. This can be useful for storing additional information about the + * object in a structured format. Individual keys can be unset by posting an empty value to + * them. All keys can be unset by posting an empty value to {@code metadata}. + */ + public Builder setMetadata(Map metadata) { + this.metadata = metadata; + return this; + } + + /** + * Name of the coupon displayed to customers on, for instance invoices, or receipts. By + * default the {@code id} is shown if {@code name} is not set. + */ + public Builder setName(String name) { + this.name = name; + return this; + } + + /** + * Name of the coupon displayed to customers on, for instance invoices, or receipts. By + * default the {@code id} is shown if {@code name} is not set. + */ + public Builder setName(EmptyParam name) { + this.name = name; + return this; + } + + /** + * A positive float larger than 0, and smaller or equal to 100, that represents the discount + * the coupon will apply (required if {@code amount_off} is not passed). + */ + public Builder setPercentOff(BigDecimal percentOff) { + this.percentOff = percentOff; + return this; + } + } + + public enum Duration implements ApiRequestParams.EnumParam { + @SerializedName("forever") + FOREVER("forever"), + + @SerializedName("once") + ONCE("once"), + + @SerializedName("repeating") + REPEATING("repeating"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + Duration(String value) { + this.value = value; + } + } + } + } + @Getter @EqualsAndHashCode(callSuper = false) public static class LineItem { @@ -2666,4 +3105,109 @@ public enum Type implements ApiRequestParams.EnumParam { } } } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class SubscriptionData { + /** + * Map of extra parameters for custom features not available in this client library. The content + * in this map is not serialized under this field's {@code @SerializedName} value. Instead, each + * key/value pair is serialized as if the key is a root-level field (serialized) name in this + * param object. Effectively, this map is flattened to its parent instance. + */ + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** + * Unix timestamp representing the end of the trial period the customer will get before being + * charged for the first time. Has to be at least 48 hours in the future. + */ + @SerializedName("trial_end") + Long trialEnd; + + /** + * Integer representing the number of trial period days before the customer is charged for the + * first time. Has to be at least 1. + */ + @SerializedName("trial_period_days") + Object trialPeriodDays; + + private SubscriptionData( + Map extraParams, Long trialEnd, Object trialPeriodDays) { + this.extraParams = extraParams; + this.trialEnd = trialEnd; + this.trialPeriodDays = trialPeriodDays; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Long trialEnd; + + private Object trialPeriodDays; + + /** Finalize and obtain parameter instance from this builder. */ + public SessionUpdateParams.SubscriptionData build() { + return new SessionUpdateParams.SubscriptionData( + this.extraParams, this.trialEnd, this.trialPeriodDays); + } + + /** + * Add a key/value pair to `extraParams` map. A map is initialized for the first `put/putAll` + * call, and subsequent calls add additional key/value pairs to the original map. See {@link + * SessionUpdateParams.SubscriptionData#extraParams} for the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original map. + * See {@link SessionUpdateParams.SubscriptionData#extraParams} for the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** + * Unix timestamp representing the end of the trial period the customer will get before being + * charged for the first time. Has to be at least 48 hours in the future. + */ + public Builder setTrialEnd(Long trialEnd) { + this.trialEnd = trialEnd; + return this; + } + + /** + * Integer representing the number of trial period days before the customer is charged for the + * first time. Has to be at least 1. + */ + public Builder setTrialPeriodDays(Long trialPeriodDays) { + this.trialPeriodDays = trialPeriodDays; + return this; + } + + /** + * Integer representing the number of trial period days before the customer is charged for the + * first time. Has to be at least 1. + */ + public Builder setTrialPeriodDays(EmptyParam trialPeriodDays) { + this.trialPeriodDays = trialPeriodDays; + return this; + } + } + } } diff --git a/src/main/java/com/stripe/param/radar/ValueListCreateParams.java b/src/main/java/com/stripe/param/radar/ValueListCreateParams.java index 54153c0c659..2d5324dcde4 100644 --- a/src/main/java/com/stripe/param/radar/ValueListCreateParams.java +++ b/src/main/java/com/stripe/param/radar/ValueListCreateParams.java @@ -31,10 +31,10 @@ public class ValueListCreateParams extends ApiRequestParams { Map extraParams; /** - * Type of the items in the value list. One of {@code card_fingerprint}, {@code - * us_bank_account_fingerprint}, {@code sepa_debit_fingerprint}, {@code card_bin}, {@code email}, - * {@code ip_address}, {@code country}, {@code string}, {@code case_sensitive_string}, or {@code - * customer_id}. Use {@code string} if the item type is unknown or mixed. + * Type of the items in the value list. One of {@code card_fingerprint}, {@code card_bin}, {@code + * email}, {@code ip_address}, {@code country}, {@code string}, {@code case_sensitive_string}, + * {@code customer_id}, {@code sepa_debit_fingerprint}, or {@code us_bank_account_fingerprint}. + * Use {@code string} if the item type is unknown or mixed. */ @SerializedName("item_type") ItemType itemType; @@ -149,10 +149,10 @@ public Builder putAllExtraParam(Map map) { } /** - * Type of the items in the value list. One of {@code card_fingerprint}, {@code - * us_bank_account_fingerprint}, {@code sepa_debit_fingerprint}, {@code card_bin}, {@code - * email}, {@code ip_address}, {@code country}, {@code string}, {@code case_sensitive_string}, - * or {@code customer_id}. Use {@code string} if the item type is unknown or mixed. + * Type of the items in the value list. One of {@code card_fingerprint}, {@code card_bin}, + * {@code email}, {@code ip_address}, {@code country}, {@code string}, {@code + * case_sensitive_string}, {@code customer_id}, {@code sepa_debit_fingerprint}, or {@code + * us_bank_account_fingerprint}. Use {@code string} if the item type is unknown or mixed. */ public Builder setItemType(ValueListCreateParams.ItemType itemType) { this.itemType = itemType; diff --git a/src/main/java/com/stripe/param/reporting/ReportRunCreateParams.java b/src/main/java/com/stripe/param/reporting/ReportRunCreateParams.java index 0b8d7babe6e..ff66424a18b 100644 --- a/src/main/java/com/stripe/param/reporting/ReportRunCreateParams.java +++ b/src/main/java/com/stripe/param/reporting/ReportRunCreateParams.java @@ -775,6 +775,9 @@ public enum Timezone implements ApiRequestParams.EnumParam { @SerializedName("America/Costa_Rica") AMERICA_COSTA_RICA("America/Costa_Rica"), + @SerializedName("America/Coyhaique") + AMERICA_COYHAIQUE("America/Coyhaique"), + @SerializedName("America/Creston") AMERICA_CRESTON("America/Creston"), diff --git a/src/main/java/com/stripe/param/tax/RegistrationCreateParams.java b/src/main/java/com/stripe/param/tax/RegistrationCreateParams.java index a50243c371e..537c6f76860 100644 --- a/src/main/java/com/stripe/param/tax/RegistrationCreateParams.java +++ b/src/main/java/com/stripe/param/tax/RegistrationCreateParams.java @@ -1753,12 +1753,17 @@ public static class Ae { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Options for the standard registration. */ + @SerializedName("standard") + Standard standard; + /** Required. Type of registration to be created in {@code country}. */ @SerializedName("type") Type type; - private Ae(Map extraParams, Type type) { + private Ae(Map extraParams, Standard standard, Type type) { this.extraParams = extraParams; + this.standard = standard; this.type = type; } @@ -1769,11 +1774,14 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Standard standard; + private Type type; /** Finalize and obtain parameter instance from this builder. */ public RegistrationCreateParams.CountryOptions.Ae build() { - return new RegistrationCreateParams.CountryOptions.Ae(this.extraParams, this.type); + return new RegistrationCreateParams.CountryOptions.Ae( + this.extraParams, this.standard, this.type); } /** @@ -1804,6 +1812,12 @@ public Builder putAllExtraParam(Map map) { return this; } + /** Options for the standard registration. */ + public Builder setStandard(RegistrationCreateParams.CountryOptions.Ae.Standard standard) { + this.standard = standard; + return this; + } + /** Required. Type of registration to be created in {@code country}. */ public Builder setType(RegistrationCreateParams.CountryOptions.Ae.Type type) { this.type = type; @@ -1811,6 +1825,96 @@ public Builder setType(RegistrationCreateParams.CountryOptions.Ae.Type type) { } } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Standard { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-level field + * (serialized) name in this param object. Effectively, this map is flattened to its parent + * instance. + */ + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** Place of supply scheme used in an standard registration. */ + @SerializedName("place_of_supply_scheme") + PlaceOfSupplyScheme placeOfSupplyScheme; + + private Standard(Map extraParams, PlaceOfSupplyScheme placeOfSupplyScheme) { + this.extraParams = extraParams; + this.placeOfSupplyScheme = placeOfSupplyScheme; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PlaceOfSupplyScheme placeOfSupplyScheme; + + /** Finalize and obtain parameter instance from this builder. */ + public RegistrationCreateParams.CountryOptions.Ae.Standard build() { + return new RegistrationCreateParams.CountryOptions.Ae.Standard( + this.extraParams, this.placeOfSupplyScheme); + } + + /** + * Add a key/value pair to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link RegistrationCreateParams.CountryOptions.Ae.Standard#extraParams} for + * the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link RegistrationCreateParams.CountryOptions.Ae.Standard#extraParams} for + * the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Place of supply scheme used in an standard registration. */ + public Builder setPlaceOfSupplyScheme( + RegistrationCreateParams.CountryOptions.Ae.Standard.PlaceOfSupplyScheme + placeOfSupplyScheme) { + this.placeOfSupplyScheme = placeOfSupplyScheme; + return this; + } + } + + public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { + @SerializedName("inbound_goods") + INBOUND_GOODS("inbound_goods"), + + @SerializedName("standard") + STANDARD("standard"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + PlaceOfSupplyScheme(String value) { + this.value = value; + } + } + } + public enum Type implements ApiRequestParams.EnumParam { @SerializedName("standard") STANDARD("standard"); @@ -1836,12 +1940,17 @@ public static class Al { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Options for the standard registration. */ + @SerializedName("standard") + Standard standard; + /** Required. Type of registration to be created in {@code country}. */ @SerializedName("type") Type type; - private Al(Map extraParams, Type type) { + private Al(Map extraParams, Standard standard, Type type) { this.extraParams = extraParams; + this.standard = standard; this.type = type; } @@ -1852,11 +1961,14 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Standard standard; + private Type type; /** Finalize and obtain parameter instance from this builder. */ public RegistrationCreateParams.CountryOptions.Al build() { - return new RegistrationCreateParams.CountryOptions.Al(this.extraParams, this.type); + return new RegistrationCreateParams.CountryOptions.Al( + this.extraParams, this.standard, this.type); } /** @@ -1887,6 +1999,12 @@ public Builder putAllExtraParam(Map map) { return this; } + /** Options for the standard registration. */ + public Builder setStandard(RegistrationCreateParams.CountryOptions.Al.Standard standard) { + this.standard = standard; + return this; + } + /** Required. Type of registration to be created in {@code country}. */ public Builder setType(RegistrationCreateParams.CountryOptions.Al.Type type) { this.type = type; @@ -1894,6 +2012,96 @@ public Builder setType(RegistrationCreateParams.CountryOptions.Al.Type type) { } } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Standard { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-level field + * (serialized) name in this param object. Effectively, this map is flattened to its parent + * instance. + */ + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** Place of supply scheme used in an standard registration. */ + @SerializedName("place_of_supply_scheme") + PlaceOfSupplyScheme placeOfSupplyScheme; + + private Standard(Map extraParams, PlaceOfSupplyScheme placeOfSupplyScheme) { + this.extraParams = extraParams; + this.placeOfSupplyScheme = placeOfSupplyScheme; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PlaceOfSupplyScheme placeOfSupplyScheme; + + /** Finalize and obtain parameter instance from this builder. */ + public RegistrationCreateParams.CountryOptions.Al.Standard build() { + return new RegistrationCreateParams.CountryOptions.Al.Standard( + this.extraParams, this.placeOfSupplyScheme); + } + + /** + * Add a key/value pair to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link RegistrationCreateParams.CountryOptions.Al.Standard#extraParams} for + * the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link RegistrationCreateParams.CountryOptions.Al.Standard#extraParams} for + * the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Place of supply scheme used in an standard registration. */ + public Builder setPlaceOfSupplyScheme( + RegistrationCreateParams.CountryOptions.Al.Standard.PlaceOfSupplyScheme + placeOfSupplyScheme) { + this.placeOfSupplyScheme = placeOfSupplyScheme; + return this; + } + } + + public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { + @SerializedName("inbound_goods") + INBOUND_GOODS("inbound_goods"), + + @SerializedName("standard") + STANDARD("standard"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + PlaceOfSupplyScheme(String value) { + this.value = value; + } + } + } + public enum Type implements ApiRequestParams.EnumParam { @SerializedName("standard") STANDARD("standard"); @@ -2002,12 +2210,17 @@ public static class Ao { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Options for the standard registration. */ + @SerializedName("standard") + Standard standard; + /** Required. Type of registration to be created in {@code country}. */ @SerializedName("type") Type type; - private Ao(Map extraParams, Type type) { + private Ao(Map extraParams, Standard standard, Type type) { this.extraParams = extraParams; + this.standard = standard; this.type = type; } @@ -2018,11 +2231,14 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Standard standard; + private Type type; /** Finalize and obtain parameter instance from this builder. */ public RegistrationCreateParams.CountryOptions.Ao build() { - return new RegistrationCreateParams.CountryOptions.Ao(this.extraParams, this.type); + return new RegistrationCreateParams.CountryOptions.Ao( + this.extraParams, this.standard, this.type); } /** @@ -2053,6 +2269,12 @@ public Builder putAllExtraParam(Map map) { return this; } + /** Options for the standard registration. */ + public Builder setStandard(RegistrationCreateParams.CountryOptions.Ao.Standard standard) { + this.standard = standard; + return this; + } + /** Required. Type of registration to be created in {@code country}. */ public Builder setType(RegistrationCreateParams.CountryOptions.Ao.Type type) { this.type = type; @@ -2060,44 +2282,134 @@ public Builder setType(RegistrationCreateParams.CountryOptions.Ao.Type type) { } } - public enum Type implements ApiRequestParams.EnumParam { - @SerializedName("standard") - STANDARD("standard"); + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Standard { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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; + /** Place of supply scheme used in an standard registration. */ + @SerializedName("place_of_supply_scheme") + PlaceOfSupplyScheme placeOfSupplyScheme; - Type(String value) { - this.value = value; + private Standard(Map extraParams, PlaceOfSupplyScheme placeOfSupplyScheme) { + this.extraParams = extraParams; + this.placeOfSupplyScheme = placeOfSupplyScheme; } - } - } - - @Getter - @EqualsAndHashCode(callSuper = false) - public static class At { - /** - * Map of extra parameters for custom features not available in this client library. The - * content in this map is not serialized under this field's {@code @SerializedName} value. - * Instead, each key/value pair is serialized as if the key is a root-level field (serialized) - * name in this param object. Effectively, this map is flattened to its parent instance. - */ - @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) - Map extraParams; - /** Options for the standard registration. */ - @SerializedName("standard") - Standard standard; + public static Builder builder() { + return new Builder(); + } - /** Required. Type of registration to be created in an EU country. */ - @SerializedName("type") - Type type; + public static class Builder { + private Map extraParams; - private At(Map extraParams, Standard standard, Type type) { - this.extraParams = extraParams; - this.standard = standard; - this.type = type; - } + private PlaceOfSupplyScheme placeOfSupplyScheme; + + /** Finalize and obtain parameter instance from this builder. */ + public RegistrationCreateParams.CountryOptions.Ao.Standard build() { + return new RegistrationCreateParams.CountryOptions.Ao.Standard( + this.extraParams, this.placeOfSupplyScheme); + } + + /** + * Add a key/value pair to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link RegistrationCreateParams.CountryOptions.Ao.Standard#extraParams} for + * the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link RegistrationCreateParams.CountryOptions.Ao.Standard#extraParams} for + * the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Place of supply scheme used in an standard registration. */ + public Builder setPlaceOfSupplyScheme( + RegistrationCreateParams.CountryOptions.Ao.Standard.PlaceOfSupplyScheme + placeOfSupplyScheme) { + this.placeOfSupplyScheme = placeOfSupplyScheme; + return this; + } + } + + public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { + @SerializedName("inbound_goods") + INBOUND_GOODS("inbound_goods"), + + @SerializedName("standard") + STANDARD("standard"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + PlaceOfSupplyScheme(String value) { + this.value = value; + } + } + } + + public enum Type implements ApiRequestParams.EnumParam { + @SerializedName("standard") + STANDARD("standard"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + Type(String value) { + this.value = value; + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class At { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-level field (serialized) + * name in this param object. Effectively, this map is flattened to its parent instance. + */ + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** Options for the standard registration. */ + @SerializedName("standard") + Standard standard; + + /** Required. Type of registration to be created in an EU country. */ + @SerializedName("type") + Type type; + + private At(Map extraParams, Standard standard, Type type) { + this.extraParams = extraParams; + this.standard = standard; + this.type = type; + } public static Builder builder() { return new Builder(); @@ -2236,6 +2548,9 @@ public Builder setPlaceOfSupplyScheme( } public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { + @SerializedName("inbound_goods") + INBOUND_GOODS("inbound_goods"), + @SerializedName("small_seller") SMALL_SELLER("small_seller"), @@ -2285,12 +2600,17 @@ public static class Au { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Options for the standard registration. */ + @SerializedName("standard") + Standard standard; + /** Required. Type of registration to be created in {@code country}. */ @SerializedName("type") Type type; - private Au(Map extraParams, Type type) { + private Au(Map extraParams, Standard standard, Type type) { this.extraParams = extraParams; + this.standard = standard; this.type = type; } @@ -2301,11 +2621,14 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Standard standard; + private Type type; /** Finalize and obtain parameter instance from this builder. */ public RegistrationCreateParams.CountryOptions.Au build() { - return new RegistrationCreateParams.CountryOptions.Au(this.extraParams, this.type); + return new RegistrationCreateParams.CountryOptions.Au( + this.extraParams, this.standard, this.type); } /** @@ -2336,6 +2659,12 @@ public Builder putAllExtraParam(Map map) { return this; } + /** Options for the standard registration. */ + public Builder setStandard(RegistrationCreateParams.CountryOptions.Au.Standard standard) { + this.standard = standard; + return this; + } + /** Required. Type of registration to be created in {@code country}. */ public Builder setType(RegistrationCreateParams.CountryOptions.Au.Type type) { this.type = type; @@ -2343,86 +2672,93 @@ public Builder setType(RegistrationCreateParams.CountryOptions.Au.Type type) { } } - public enum Type implements ApiRequestParams.EnumParam { - @SerializedName("standard") - STANDARD("standard"); + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Standard { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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; + /** Place of supply scheme used in an standard registration. */ + @SerializedName("place_of_supply_scheme") + PlaceOfSupplyScheme placeOfSupplyScheme; - Type(String value) { - this.value = value; + private Standard(Map extraParams, PlaceOfSupplyScheme placeOfSupplyScheme) { + this.extraParams = extraParams; + this.placeOfSupplyScheme = placeOfSupplyScheme; } - } - } - - @Getter - @EqualsAndHashCode(callSuper = false) - public static class Aw { - /** - * Map of extra parameters for custom features not available in this client library. The - * content in this map is not serialized under this field's {@code @SerializedName} value. - * Instead, each key/value pair is serialized as if the key is a root-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. Type of registration to be created in {@code country}. */ - @SerializedName("type") - Type type; - private Aw(Map extraParams, Type type) { - this.extraParams = extraParams; - this.type = type; - } + 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 PlaceOfSupplyScheme placeOfSupplyScheme; - private Type type; + /** Finalize and obtain parameter instance from this builder. */ + public RegistrationCreateParams.CountryOptions.Au.Standard build() { + return new RegistrationCreateParams.CountryOptions.Au.Standard( + this.extraParams, this.placeOfSupplyScheme); + } - /** Finalize and obtain parameter instance from this builder. */ - public RegistrationCreateParams.CountryOptions.Aw build() { - return new RegistrationCreateParams.CountryOptions.Aw(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 RegistrationCreateParams.CountryOptions.Au.Standard#extraParams} for + * the field 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 RegistrationCreateParams.CountryOptions.Aw#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 RegistrationCreateParams.CountryOptions.Au.Standard#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.put(key, value); - return this; - } - /** - * Add all map key/value pairs to `extraParams` map. A map is initialized for the first - * `put/putAll` call, and subsequent calls add additional key/value pairs to the original - * map. See {@link RegistrationCreateParams.CountryOptions.Aw#extraParams} for the field - * documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** Place of supply scheme used in an standard registration. */ + public Builder setPlaceOfSupplyScheme( + RegistrationCreateParams.CountryOptions.Au.Standard.PlaceOfSupplyScheme + placeOfSupplyScheme) { + this.placeOfSupplyScheme = placeOfSupplyScheme; + return this; } - this.extraParams.putAll(map); - return this; } - /** Required. Type of registration to be created in {@code country}. */ - public Builder setType(RegistrationCreateParams.CountryOptions.Aw.Type type) { - this.type = type; - return this; + public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { + @SerializedName("inbound_goods") + INBOUND_GOODS("inbound_goods"), + + @SerializedName("standard") + STANDARD("standard"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + PlaceOfSupplyScheme(String value) { + this.value = value; + } } } @@ -2441,7 +2777,7 @@ public enum Type implements ApiRequestParams.EnumParam { @Getter @EqualsAndHashCode(callSuper = false) - public static class Az { + public static class Aw { /** * Map of extra parameters for custom features not available in this client library. The * content in this map is not serialized under this field's {@code @SerializedName} value. @@ -2451,12 +2787,17 @@ public static class Az { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Options for the standard registration. */ + @SerializedName("standard") + Standard standard; + /** Required. Type of registration to be created in {@code country}. */ @SerializedName("type") Type type; - private Az(Map extraParams, Type type) { + private Aw(Map extraParams, Standard standard, Type type) { this.extraParams = extraParams; + this.standard = standard; this.type = type; } @@ -2467,17 +2808,20 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Standard standard; + private Type type; /** Finalize and obtain parameter instance from this builder. */ - public RegistrationCreateParams.CountryOptions.Az build() { - return new RegistrationCreateParams.CountryOptions.Az(this.extraParams, this.type); + public RegistrationCreateParams.CountryOptions.Aw build() { + return new RegistrationCreateParams.CountryOptions.Aw( + this.extraParams, this.standard, 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 RegistrationCreateParams.CountryOptions.Az#extraParams} for the field + * map. See {@link RegistrationCreateParams.CountryOptions.Aw#extraParams} for the field * documentation. */ public Builder putExtraParam(String key, Object value) { @@ -2491,7 +2835,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 RegistrationCreateParams.CountryOptions.Az#extraParams} for the field + * map. See {@link RegistrationCreateParams.CountryOptions.Aw#extraParams} for the field * documentation. */ public Builder putAllExtraParam(Map map) { @@ -2502,176 +2846,106 @@ public Builder putAllExtraParam(Map map) { return this; } - /** Required. Type of registration to be created in {@code country}. */ - public Builder setType(RegistrationCreateParams.CountryOptions.Az.Type type) { - this.type = type; - return this; - } - } - - public enum Type implements ApiRequestParams.EnumParam { - @SerializedName("simplified") - SIMPLIFIED("simplified"); - - @Getter(onMethod_ = {@Override}) - private final String value; - - Type(String value) { - this.value = value; - } - } - } - - @Getter - @EqualsAndHashCode(callSuper = false) - public static class Ba { - /** - * Map of extra parameters for custom features not available in this client library. The - * content in this map is not serialized under this field's {@code @SerializedName} value. - * Instead, each key/value pair is serialized as if the key is a root-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. Type of registration to be created in {@code country}. */ - @SerializedName("type") - Type type; - - private Ba(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 RegistrationCreateParams.CountryOptions.Ba build() { - return new RegistrationCreateParams.CountryOptions.Ba(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 RegistrationCreateParams.CountryOptions.Ba#extraParams} for the field - * documentation. - */ - public Builder putExtraParam(String key, Object value) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); - } - this.extraParams.put(key, value); - return this; - } - - /** - * Add all map key/value pairs to `extraParams` map. A map is initialized for the first - * `put/putAll` call, and subsequent calls add additional key/value pairs to the original - * map. See {@link RegistrationCreateParams.CountryOptions.Ba#extraParams} for the field - * documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); - } - this.extraParams.putAll(map); + /** Options for the standard registration. */ + public Builder setStandard(RegistrationCreateParams.CountryOptions.Aw.Standard standard) { + this.standard = standard; return this; } /** Required. Type of registration to be created in {@code country}. */ - public Builder setType(RegistrationCreateParams.CountryOptions.Ba.Type type) { + public Builder setType(RegistrationCreateParams.CountryOptions.Aw.Type type) { this.type = type; return this; } } - public enum Type implements ApiRequestParams.EnumParam { - @SerializedName("standard") - STANDARD("standard"); + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Standard { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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; + /** Place of supply scheme used in an standard registration. */ + @SerializedName("place_of_supply_scheme") + PlaceOfSupplyScheme placeOfSupplyScheme; - Type(String value) { - this.value = value; + private Standard(Map extraParams, PlaceOfSupplyScheme placeOfSupplyScheme) { + this.extraParams = extraParams; + this.placeOfSupplyScheme = placeOfSupplyScheme; } - } - } - - @Getter - @EqualsAndHashCode(callSuper = false) - public static class Bb { - /** - * Map of extra parameters for custom features not available in this client library. The - * content in this map is not serialized under this field's {@code @SerializedName} value. - * Instead, each key/value pair is serialized as if the key is a root-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. Type of registration to be created in {@code country}. */ - @SerializedName("type") - Type type; - private Bb(Map extraParams, Type type) { - this.extraParams = extraParams; - this.type = type; - } + 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 PlaceOfSupplyScheme placeOfSupplyScheme; - private Type type; + /** Finalize and obtain parameter instance from this builder. */ + public RegistrationCreateParams.CountryOptions.Aw.Standard build() { + return new RegistrationCreateParams.CountryOptions.Aw.Standard( + this.extraParams, this.placeOfSupplyScheme); + } - /** Finalize and obtain parameter instance from this builder. */ - public RegistrationCreateParams.CountryOptions.Bb build() { - return new RegistrationCreateParams.CountryOptions.Bb(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 RegistrationCreateParams.CountryOptions.Aw.Standard#extraParams} for + * the field 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 RegistrationCreateParams.CountryOptions.Bb#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 RegistrationCreateParams.CountryOptions.Aw.Standard#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.put(key, value); - return this; - } - /** - * Add all map key/value pairs to `extraParams` map. A map is initialized for the first - * `put/putAll` call, and subsequent calls add additional key/value pairs to the original - * map. See {@link RegistrationCreateParams.CountryOptions.Bb#extraParams} for the field - * documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** Place of supply scheme used in an standard registration. */ + public Builder setPlaceOfSupplyScheme( + RegistrationCreateParams.CountryOptions.Aw.Standard.PlaceOfSupplyScheme + placeOfSupplyScheme) { + this.placeOfSupplyScheme = placeOfSupplyScheme; + return this; } - this.extraParams.putAll(map); - return this; } - /** Required. Type of registration to be created in {@code country}. */ - public Builder setType(RegistrationCreateParams.CountryOptions.Bb.Type type) { - this.type = type; - return this; + public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { + @SerializedName("inbound_goods") + INBOUND_GOODS("inbound_goods"), + + @SerializedName("standard") + STANDARD("standard"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + PlaceOfSupplyScheme(String value) { + this.value = value; + } } } @@ -2690,7 +2964,7 @@ public enum Type implements ApiRequestParams.EnumParam { @Getter @EqualsAndHashCode(callSuper = false) - public static class Bd { + public static class Az { /** * Map of extra parameters for custom features not available in this client library. The * content in this map is not serialized under this field's {@code @SerializedName} value. @@ -2704,7 +2978,7 @@ public static class Bd { @SerializedName("type") Type type; - private Bd(Map extraParams, Type type) { + private Az(Map extraParams, Type type) { this.extraParams = extraParams; this.type = type; } @@ -2719,14 +2993,14 @@ public static class Builder { private Type type; /** Finalize and obtain parameter instance from this builder. */ - public RegistrationCreateParams.CountryOptions.Bd build() { - return new RegistrationCreateParams.CountryOptions.Bd(this.extraParams, this.type); + public RegistrationCreateParams.CountryOptions.Az build() { + return new RegistrationCreateParams.CountryOptions.Az(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 RegistrationCreateParams.CountryOptions.Bd#extraParams} for the field + * map. See {@link RegistrationCreateParams.CountryOptions.Az#extraParams} for the field * documentation. */ public Builder putExtraParam(String key, Object value) { @@ -2740,7 +3014,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 RegistrationCreateParams.CountryOptions.Bd#extraParams} for the field + * map. See {@link RegistrationCreateParams.CountryOptions.Az#extraParams} for the field * documentation. */ public Builder putAllExtraParam(Map map) { @@ -2752,15 +3026,15 @@ public Builder putAllExtraParam(Map map) { } /** Required. Type of registration to be created in {@code country}. */ - public Builder setType(RegistrationCreateParams.CountryOptions.Bd.Type type) { + public Builder setType(RegistrationCreateParams.CountryOptions.Az.Type type) { this.type = type; return this; } } public enum Type implements ApiRequestParams.EnumParam { - @SerializedName("standard") - STANDARD("standard"); + @SerializedName("simplified") + SIMPLIFIED("simplified"); @Getter(onMethod_ = {@Override}) private final String value; @@ -2773,7 +3047,7 @@ public enum Type implements ApiRequestParams.EnumParam { @Getter @EqualsAndHashCode(callSuper = false) - public static class Be { + public static class Ba { /** * Map of extra parameters for custom features not available in this client library. The * content in this map is not serialized under this field's {@code @SerializedName} value. @@ -2787,11 +3061,11 @@ public static class Be { @SerializedName("standard") Standard standard; - /** Required. Type of registration to be created in an EU country. */ + /** Required. Type of registration to be created in {@code country}. */ @SerializedName("type") Type type; - private Be(Map extraParams, Standard standard, Type type) { + private Ba(Map extraParams, Standard standard, Type type) { this.extraParams = extraParams; this.standard = standard; this.type = type; @@ -2809,15 +3083,15 @@ public static class Builder { private Type type; /** Finalize and obtain parameter instance from this builder. */ - public RegistrationCreateParams.CountryOptions.Be build() { - return new RegistrationCreateParams.CountryOptions.Be( + public RegistrationCreateParams.CountryOptions.Ba build() { + return new RegistrationCreateParams.CountryOptions.Ba( this.extraParams, this.standard, 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 RegistrationCreateParams.CountryOptions.Be#extraParams} for the field + * map. See {@link RegistrationCreateParams.CountryOptions.Ba#extraParams} for the field * documentation. */ public Builder putExtraParam(String key, Object value) { @@ -2831,7 +3105,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 RegistrationCreateParams.CountryOptions.Be#extraParams} for the field + * map. See {@link RegistrationCreateParams.CountryOptions.Ba#extraParams} for the field * documentation. */ public Builder putAllExtraParam(Map map) { @@ -2843,13 +3117,13 @@ public Builder putAllExtraParam(Map map) { } /** Options for the standard registration. */ - public Builder setStandard(RegistrationCreateParams.CountryOptions.Be.Standard standard) { + public Builder setStandard(RegistrationCreateParams.CountryOptions.Ba.Standard standard) { this.standard = standard; return this; } - /** Required. Type of registration to be created in an EU country. */ - public Builder setType(RegistrationCreateParams.CountryOptions.Be.Type type) { + /** Required. Type of registration to be created in {@code country}. */ + public Builder setType(RegistrationCreateParams.CountryOptions.Ba.Type type) { this.type = type; return this; } @@ -2868,9 +3142,7 @@ public static class Standard { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** - * Required. Place of supply scheme used in an EU standard registration. - */ + /** Place of supply scheme used in an standard registration. */ @SerializedName("place_of_supply_scheme") PlaceOfSupplyScheme placeOfSupplyScheme; @@ -2889,15 +3161,15 @@ public static class Builder { private PlaceOfSupplyScheme placeOfSupplyScheme; /** Finalize and obtain parameter instance from this builder. */ - public RegistrationCreateParams.CountryOptions.Be.Standard build() { - return new RegistrationCreateParams.CountryOptions.Be.Standard( + public RegistrationCreateParams.CountryOptions.Ba.Standard build() { + return new RegistrationCreateParams.CountryOptions.Ba.Standard( this.extraParams, this.placeOfSupplyScheme); } /** * Add a key/value pair to `extraParams` map. A map is initialized for the first * `put/putAll` call, and subsequent calls add additional key/value pairs to the original - * map. See {@link RegistrationCreateParams.CountryOptions.Be.Standard#extraParams} for + * map. See {@link RegistrationCreateParams.CountryOptions.Ba.Standard#extraParams} for * the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -2911,7 +3183,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 RegistrationCreateParams.CountryOptions.Be.Standard#extraParams} for + * map. See {@link RegistrationCreateParams.CountryOptions.Ba.Standard#extraParams} for * the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -2922,11 +3194,9 @@ public Builder putAllExtraParam(Map map) { return this; } - /** - * Required. Place of supply scheme used in an EU standard registration. - */ + /** Place of supply scheme used in an standard registration. */ public Builder setPlaceOfSupplyScheme( - RegistrationCreateParams.CountryOptions.Be.Standard.PlaceOfSupplyScheme + RegistrationCreateParams.CountryOptions.Ba.Standard.PlaceOfSupplyScheme placeOfSupplyScheme) { this.placeOfSupplyScheme = placeOfSupplyScheme; return this; @@ -2934,8 +3204,8 @@ public Builder setPlaceOfSupplyScheme( } public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { - @SerializedName("small_seller") - SMALL_SELLER("small_seller"), + @SerializedName("inbound_goods") + INBOUND_GOODS("inbound_goods"), @SerializedName("standard") STANDARD("standard"); @@ -2950,17 +3220,8 @@ public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { } public enum Type implements ApiRequestParams.EnumParam { - @SerializedName("ioss") - IOSS("ioss"), - - @SerializedName("oss_non_union") - OSS_NON_UNION("oss_non_union"), - - @SerializedName("oss_union") - OSS_UNION("oss_union"), - - @SerializedName("standard") - STANDARD("standard"); + @SerializedName("standard") + STANDARD("standard"); @Getter(onMethod_ = {@Override}) private final String value; @@ -2973,7 +3234,7 @@ public enum Type implements ApiRequestParams.EnumParam { @Getter @EqualsAndHashCode(callSuper = false) - public static class Bf { + public static class Bb { /** * Map of extra parameters for custom features not available in this client library. The * content in this map is not serialized under this field's {@code @SerializedName} value. @@ -2983,12 +3244,17 @@ public static class Bf { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Options for the standard registration. */ + @SerializedName("standard") + Standard standard; + /** Required. Type of registration to be created in {@code country}. */ @SerializedName("type") Type type; - private Bf(Map extraParams, Type type) { + private Bb(Map extraParams, Standard standard, Type type) { this.extraParams = extraParams; + this.standard = standard; this.type = type; } @@ -2999,17 +3265,20 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Standard standard; + private Type type; /** Finalize and obtain parameter instance from this builder. */ - public RegistrationCreateParams.CountryOptions.Bf build() { - return new RegistrationCreateParams.CountryOptions.Bf(this.extraParams, this.type); + public RegistrationCreateParams.CountryOptions.Bb build() { + return new RegistrationCreateParams.CountryOptions.Bb( + this.extraParams, this.standard, 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 RegistrationCreateParams.CountryOptions.Bf#extraParams} for the field + * map. See {@link RegistrationCreateParams.CountryOptions.Bb#extraParams} for the field * documentation. */ public Builder putExtraParam(String key, Object value) { @@ -3023,7 +3292,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 RegistrationCreateParams.CountryOptions.Bf#extraParams} for the field + * map. See {@link RegistrationCreateParams.CountryOptions.Bb#extraParams} for the field * documentation. */ public Builder putAllExtraParam(Map map) { @@ -3034,13 +3303,109 @@ public Builder putAllExtraParam(Map map) { return this; } + /** Options for the standard registration. */ + public Builder setStandard(RegistrationCreateParams.CountryOptions.Bb.Standard standard) { + this.standard = standard; + return this; + } + /** Required. Type of registration to be created in {@code country}. */ - public Builder setType(RegistrationCreateParams.CountryOptions.Bf.Type type) { + public Builder setType(RegistrationCreateParams.CountryOptions.Bb.Type type) { this.type = type; return this; } } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Standard { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-level field + * (serialized) name in this param object. Effectively, this map is flattened to its parent + * instance. + */ + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** Place of supply scheme used in an standard registration. */ + @SerializedName("place_of_supply_scheme") + PlaceOfSupplyScheme placeOfSupplyScheme; + + private Standard(Map extraParams, PlaceOfSupplyScheme placeOfSupplyScheme) { + this.extraParams = extraParams; + this.placeOfSupplyScheme = placeOfSupplyScheme; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PlaceOfSupplyScheme placeOfSupplyScheme; + + /** Finalize and obtain parameter instance from this builder. */ + public RegistrationCreateParams.CountryOptions.Bb.Standard build() { + return new RegistrationCreateParams.CountryOptions.Bb.Standard( + this.extraParams, this.placeOfSupplyScheme); + } + + /** + * Add a key/value pair to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link RegistrationCreateParams.CountryOptions.Bb.Standard#extraParams} for + * the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link RegistrationCreateParams.CountryOptions.Bb.Standard#extraParams} for + * the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Place of supply scheme used in an standard registration. */ + public Builder setPlaceOfSupplyScheme( + RegistrationCreateParams.CountryOptions.Bb.Standard.PlaceOfSupplyScheme + placeOfSupplyScheme) { + this.placeOfSupplyScheme = placeOfSupplyScheme; + return this; + } + } + + public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { + @SerializedName("inbound_goods") + INBOUND_GOODS("inbound_goods"), + + @SerializedName("standard") + STANDARD("standard"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + PlaceOfSupplyScheme(String value) { + this.value = value; + } + } + } + public enum Type implements ApiRequestParams.EnumParam { @SerializedName("standard") STANDARD("standard"); @@ -3056,7 +3421,7 @@ public enum Type implements ApiRequestParams.EnumParam { @Getter @EqualsAndHashCode(callSuper = false) - public static class Bg { + public static class Bd { /** * Map of extra parameters for custom features not available in this client library. The * content in this map is not serialized under this field's {@code @SerializedName} value. @@ -3070,11 +3435,11 @@ public static class Bg { @SerializedName("standard") Standard standard; - /** Required. Type of registration to be created in an EU country. */ + /** Required. Type of registration to be created in {@code country}. */ @SerializedName("type") Type type; - private Bg(Map extraParams, Standard standard, Type type) { + private Bd(Map extraParams, Standard standard, Type type) { this.extraParams = extraParams; this.standard = standard; this.type = type; @@ -3092,15 +3457,15 @@ public static class Builder { private Type type; /** Finalize and obtain parameter instance from this builder. */ - public RegistrationCreateParams.CountryOptions.Bg build() { - return new RegistrationCreateParams.CountryOptions.Bg( + public RegistrationCreateParams.CountryOptions.Bd build() { + return new RegistrationCreateParams.CountryOptions.Bd( this.extraParams, this.standard, 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 RegistrationCreateParams.CountryOptions.Bg#extraParams} for the field + * map. See {@link RegistrationCreateParams.CountryOptions.Bd#extraParams} for the field * documentation. */ public Builder putExtraParam(String key, Object value) { @@ -3114,7 +3479,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 RegistrationCreateParams.CountryOptions.Bg#extraParams} for the field + * map. See {@link RegistrationCreateParams.CountryOptions.Bd#extraParams} for the field * documentation. */ public Builder putAllExtraParam(Map map) { @@ -3126,13 +3491,13 @@ public Builder putAllExtraParam(Map map) { } /** Options for the standard registration. */ - public Builder setStandard(RegistrationCreateParams.CountryOptions.Bg.Standard standard) { + public Builder setStandard(RegistrationCreateParams.CountryOptions.Bd.Standard standard) { this.standard = standard; return this; } - /** Required. Type of registration to be created in an EU country. */ - public Builder setType(RegistrationCreateParams.CountryOptions.Bg.Type type) { + /** Required. Type of registration to be created in {@code country}. */ + public Builder setType(RegistrationCreateParams.CountryOptions.Bd.Type type) { this.type = type; return this; } @@ -3151,9 +3516,7 @@ public static class Standard { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** - * Required. Place of supply scheme used in an EU standard registration. - */ + /** Place of supply scheme used in an standard registration. */ @SerializedName("place_of_supply_scheme") PlaceOfSupplyScheme placeOfSupplyScheme; @@ -3172,15 +3535,15 @@ public static class Builder { private PlaceOfSupplyScheme placeOfSupplyScheme; /** Finalize and obtain parameter instance from this builder. */ - public RegistrationCreateParams.CountryOptions.Bg.Standard build() { - return new RegistrationCreateParams.CountryOptions.Bg.Standard( + public RegistrationCreateParams.CountryOptions.Bd.Standard build() { + return new RegistrationCreateParams.CountryOptions.Bd.Standard( this.extraParams, this.placeOfSupplyScheme); } /** * Add a key/value pair to `extraParams` map. A map is initialized for the first * `put/putAll` call, and subsequent calls add additional key/value pairs to the original - * map. See {@link RegistrationCreateParams.CountryOptions.Bg.Standard#extraParams} for + * map. See {@link RegistrationCreateParams.CountryOptions.Bd.Standard#extraParams} for * the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -3194,7 +3557,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 RegistrationCreateParams.CountryOptions.Bg.Standard#extraParams} for + * map. See {@link RegistrationCreateParams.CountryOptions.Bd.Standard#extraParams} for * the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -3205,11 +3568,9 @@ public Builder putAllExtraParam(Map map) { return this; } - /** - * Required. Place of supply scheme used in an EU standard registration. - */ + /** Place of supply scheme used in an standard registration. */ public Builder setPlaceOfSupplyScheme( - RegistrationCreateParams.CountryOptions.Bg.Standard.PlaceOfSupplyScheme + RegistrationCreateParams.CountryOptions.Bd.Standard.PlaceOfSupplyScheme placeOfSupplyScheme) { this.placeOfSupplyScheme = placeOfSupplyScheme; return this; @@ -3217,8 +3578,8 @@ public Builder setPlaceOfSupplyScheme( } public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { - @SerializedName("small_seller") - SMALL_SELLER("small_seller"), + @SerializedName("inbound_goods") + INBOUND_GOODS("inbound_goods"), @SerializedName("standard") STANDARD("standard"); @@ -3233,15 +3594,6 @@ public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { } public enum Type implements ApiRequestParams.EnumParam { - @SerializedName("ioss") - IOSS("ioss"), - - @SerializedName("oss_non_union") - OSS_NON_UNION("oss_non_union"), - - @SerializedName("oss_union") - OSS_UNION("oss_union"), - @SerializedName("standard") STANDARD("standard"); @@ -3256,7 +3608,7 @@ public enum Type implements ApiRequestParams.EnumParam { @Getter @EqualsAndHashCode(callSuper = false) - public static class Bh { + public static class Be { /** * Map of extra parameters for custom features not available in this client library. The * content in this map is not serialized under this field's {@code @SerializedName} value. @@ -3266,12 +3618,17 @@ public static class Bh { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** Required. Type of registration to be created in {@code country}. */ + /** Options for the standard registration. */ + @SerializedName("standard") + Standard standard; + + /** Required. Type of registration to be created in an EU country. */ @SerializedName("type") Type type; - private Bh(Map extraParams, Type type) { + private Be(Map extraParams, Standard standard, Type type) { this.extraParams = extraParams; + this.standard = standard; this.type = type; } @@ -3282,17 +3639,20 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Standard standard; + private Type type; /** Finalize and obtain parameter instance from this builder. */ - public RegistrationCreateParams.CountryOptions.Bh build() { - return new RegistrationCreateParams.CountryOptions.Bh(this.extraParams, this.type); + public RegistrationCreateParams.CountryOptions.Be build() { + return new RegistrationCreateParams.CountryOptions.Be( + this.extraParams, this.standard, 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 RegistrationCreateParams.CountryOptions.Bh#extraParams} for the field + * map. See {@link RegistrationCreateParams.CountryOptions.Be#extraParams} for the field * documentation. */ public Builder putExtraParam(String key, Object value) { @@ -3306,7 +3666,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 RegistrationCreateParams.CountryOptions.Bh#extraParams} for the field + * map. See {@link RegistrationCreateParams.CountryOptions.Be#extraParams} for the field * documentation. */ public Builder putAllExtraParam(Map map) { @@ -3317,53 +3677,742 @@ public Builder putAllExtraParam(Map map) { return this; } - /** Required. Type of registration to be created in {@code country}. */ - public Builder setType(RegistrationCreateParams.CountryOptions.Bh.Type type) { + /** Options for the standard registration. */ + public Builder setStandard(RegistrationCreateParams.CountryOptions.Be.Standard standard) { + this.standard = standard; + return this; + } + + /** Required. Type of registration to be created in an EU country. */ + public Builder setType(RegistrationCreateParams.CountryOptions.Be.Type type) { this.type = type; return this; } } - public enum Type implements ApiRequestParams.EnumParam { - @SerializedName("standard") - STANDARD("standard"); + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Standard { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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. Place of supply scheme used in an EU standard registration. + */ + @SerializedName("place_of_supply_scheme") + PlaceOfSupplyScheme placeOfSupplyScheme; - Type(String value) { - this.value = value; + private Standard(Map extraParams, PlaceOfSupplyScheme placeOfSupplyScheme) { + this.extraParams = extraParams; + this.placeOfSupplyScheme = placeOfSupplyScheme; } - } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class Bj { - /** - * Map of extra parameters for custom features not available in this client library. The - * content in this map is not serialized under this field's {@code @SerializedName} value. - * Instead, each key/value pair is serialized as if the key is a root-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. Type of registration to be created in {@code country}. */ - @SerializedName("type") - Type type; + public static class Builder { + private Map extraParams; - private Bj(Map extraParams, Type type) { - this.extraParams = extraParams; - this.type = type; - } + private PlaceOfSupplyScheme placeOfSupplyScheme; - public static Builder builder() { - return new Builder(); - } + /** Finalize and obtain parameter instance from this builder. */ + public RegistrationCreateParams.CountryOptions.Be.Standard build() { + return new RegistrationCreateParams.CountryOptions.Be.Standard( + this.extraParams, this.placeOfSupplyScheme); + } - 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 RegistrationCreateParams.CountryOptions.Be.Standard#extraParams} for + * the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link RegistrationCreateParams.CountryOptions.Be.Standard#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. Place of supply scheme used in an EU standard registration. + */ + public Builder setPlaceOfSupplyScheme( + RegistrationCreateParams.CountryOptions.Be.Standard.PlaceOfSupplyScheme + placeOfSupplyScheme) { + this.placeOfSupplyScheme = placeOfSupplyScheme; + return this; + } + } + + public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { + @SerializedName("inbound_goods") + INBOUND_GOODS("inbound_goods"), + + @SerializedName("small_seller") + SMALL_SELLER("small_seller"), + + @SerializedName("standard") + STANDARD("standard"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + PlaceOfSupplyScheme(String value) { + this.value = value; + } + } + } + + public enum Type implements ApiRequestParams.EnumParam { + @SerializedName("ioss") + IOSS("ioss"), + + @SerializedName("oss_non_union") + OSS_NON_UNION("oss_non_union"), + + @SerializedName("oss_union") + OSS_UNION("oss_union"), + + @SerializedName("standard") + STANDARD("standard"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + Type(String value) { + this.value = value; + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Bf { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-level field (serialized) + * name in this param object. Effectively, this map is flattened to its parent instance. + */ + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** Options for the standard registration. */ + @SerializedName("standard") + Standard standard; + + /** Required. Type of registration to be created in {@code country}. */ + @SerializedName("type") + Type type; + + private Bf(Map extraParams, Standard standard, Type type) { + this.extraParams = extraParams; + this.standard = standard; + this.type = type; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Standard standard; + + private Type type; + + /** Finalize and obtain parameter instance from this builder. */ + public RegistrationCreateParams.CountryOptions.Bf build() { + return new RegistrationCreateParams.CountryOptions.Bf( + this.extraParams, this.standard, 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 RegistrationCreateParams.CountryOptions.Bf#extraParams} for the field + * documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link RegistrationCreateParams.CountryOptions.Bf#extraParams} for the field + * documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Options for the standard registration. */ + public Builder setStandard(RegistrationCreateParams.CountryOptions.Bf.Standard standard) { + this.standard = standard; + return this; + } + + /** Required. Type of registration to be created in {@code country}. */ + public Builder setType(RegistrationCreateParams.CountryOptions.Bf.Type type) { + this.type = type; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Standard { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-level field + * (serialized) name in this param object. Effectively, this map is flattened to its parent + * instance. + */ + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** Place of supply scheme used in an standard registration. */ + @SerializedName("place_of_supply_scheme") + PlaceOfSupplyScheme placeOfSupplyScheme; + + private Standard(Map extraParams, PlaceOfSupplyScheme placeOfSupplyScheme) { + this.extraParams = extraParams; + this.placeOfSupplyScheme = placeOfSupplyScheme; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PlaceOfSupplyScheme placeOfSupplyScheme; + + /** Finalize and obtain parameter instance from this builder. */ + public RegistrationCreateParams.CountryOptions.Bf.Standard build() { + return new RegistrationCreateParams.CountryOptions.Bf.Standard( + this.extraParams, this.placeOfSupplyScheme); + } + + /** + * Add a key/value pair to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link RegistrationCreateParams.CountryOptions.Bf.Standard#extraParams} for + * the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link RegistrationCreateParams.CountryOptions.Bf.Standard#extraParams} for + * the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Place of supply scheme used in an standard registration. */ + public Builder setPlaceOfSupplyScheme( + RegistrationCreateParams.CountryOptions.Bf.Standard.PlaceOfSupplyScheme + placeOfSupplyScheme) { + this.placeOfSupplyScheme = placeOfSupplyScheme; + return this; + } + } + + public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { + @SerializedName("inbound_goods") + INBOUND_GOODS("inbound_goods"), + + @SerializedName("standard") + STANDARD("standard"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + PlaceOfSupplyScheme(String value) { + this.value = value; + } + } + } + + public enum Type implements ApiRequestParams.EnumParam { + @SerializedName("standard") + STANDARD("standard"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + Type(String value) { + this.value = value; + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Bg { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-level field (serialized) + * name in this param object. Effectively, this map is flattened to its parent instance. + */ + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** Options for the standard registration. */ + @SerializedName("standard") + Standard standard; + + /** Required. Type of registration to be created in an EU country. */ + @SerializedName("type") + Type type; + + private Bg(Map extraParams, Standard standard, Type type) { + this.extraParams = extraParams; + this.standard = standard; + this.type = type; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Standard standard; + + private Type type; + + /** Finalize and obtain parameter instance from this builder. */ + public RegistrationCreateParams.CountryOptions.Bg build() { + return new RegistrationCreateParams.CountryOptions.Bg( + this.extraParams, this.standard, 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 RegistrationCreateParams.CountryOptions.Bg#extraParams} for the field + * documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link RegistrationCreateParams.CountryOptions.Bg#extraParams} for the field + * documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Options for the standard registration. */ + public Builder setStandard(RegistrationCreateParams.CountryOptions.Bg.Standard standard) { + this.standard = standard; + return this; + } + + /** Required. Type of registration to be created in an EU country. */ + public Builder setType(RegistrationCreateParams.CountryOptions.Bg.Type type) { + this.type = type; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Standard { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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. Place of supply scheme used in an EU standard registration. + */ + @SerializedName("place_of_supply_scheme") + PlaceOfSupplyScheme placeOfSupplyScheme; + + private Standard(Map extraParams, PlaceOfSupplyScheme placeOfSupplyScheme) { + this.extraParams = extraParams; + this.placeOfSupplyScheme = placeOfSupplyScheme; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PlaceOfSupplyScheme placeOfSupplyScheme; + + /** Finalize and obtain parameter instance from this builder. */ + public RegistrationCreateParams.CountryOptions.Bg.Standard build() { + return new RegistrationCreateParams.CountryOptions.Bg.Standard( + this.extraParams, this.placeOfSupplyScheme); + } + + /** + * Add a key/value pair to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link RegistrationCreateParams.CountryOptions.Bg.Standard#extraParams} for + * the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link RegistrationCreateParams.CountryOptions.Bg.Standard#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. Place of supply scheme used in an EU standard registration. + */ + public Builder setPlaceOfSupplyScheme( + RegistrationCreateParams.CountryOptions.Bg.Standard.PlaceOfSupplyScheme + placeOfSupplyScheme) { + this.placeOfSupplyScheme = placeOfSupplyScheme; + return this; + } + } + + public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { + @SerializedName("inbound_goods") + INBOUND_GOODS("inbound_goods"), + + @SerializedName("small_seller") + SMALL_SELLER("small_seller"), + + @SerializedName("standard") + STANDARD("standard"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + PlaceOfSupplyScheme(String value) { + this.value = value; + } + } + } + + public enum Type implements ApiRequestParams.EnumParam { + @SerializedName("ioss") + IOSS("ioss"), + + @SerializedName("oss_non_union") + OSS_NON_UNION("oss_non_union"), + + @SerializedName("oss_union") + OSS_UNION("oss_union"), + + @SerializedName("standard") + STANDARD("standard"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + Type(String value) { + this.value = value; + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Bh { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-level field (serialized) + * name in this param object. Effectively, this map is flattened to its parent instance. + */ + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** Options for the standard registration. */ + @SerializedName("standard") + Standard standard; + + /** Required. Type of registration to be created in {@code country}. */ + @SerializedName("type") + Type type; + + private Bh(Map extraParams, Standard standard, Type type) { + this.extraParams = extraParams; + this.standard = standard; + this.type = type; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Standard standard; + + private Type type; + + /** Finalize and obtain parameter instance from this builder. */ + public RegistrationCreateParams.CountryOptions.Bh build() { + return new RegistrationCreateParams.CountryOptions.Bh( + this.extraParams, this.standard, 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 RegistrationCreateParams.CountryOptions.Bh#extraParams} for the field + * documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link RegistrationCreateParams.CountryOptions.Bh#extraParams} for the field + * documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Options for the standard registration. */ + public Builder setStandard(RegistrationCreateParams.CountryOptions.Bh.Standard standard) { + this.standard = standard; + return this; + } + + /** Required. Type of registration to be created in {@code country}. */ + public Builder setType(RegistrationCreateParams.CountryOptions.Bh.Type type) { + this.type = type; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Standard { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-level field + * (serialized) name in this param object. Effectively, this map is flattened to its parent + * instance. + */ + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** Place of supply scheme used in an standard registration. */ + @SerializedName("place_of_supply_scheme") + PlaceOfSupplyScheme placeOfSupplyScheme; + + private Standard(Map extraParams, PlaceOfSupplyScheme placeOfSupplyScheme) { + this.extraParams = extraParams; + this.placeOfSupplyScheme = placeOfSupplyScheme; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PlaceOfSupplyScheme placeOfSupplyScheme; + + /** Finalize and obtain parameter instance from this builder. */ + public RegistrationCreateParams.CountryOptions.Bh.Standard build() { + return new RegistrationCreateParams.CountryOptions.Bh.Standard( + this.extraParams, this.placeOfSupplyScheme); + } + + /** + * Add a key/value pair to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link RegistrationCreateParams.CountryOptions.Bh.Standard#extraParams} for + * the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link RegistrationCreateParams.CountryOptions.Bh.Standard#extraParams} for + * the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Place of supply scheme used in an standard registration. */ + public Builder setPlaceOfSupplyScheme( + RegistrationCreateParams.CountryOptions.Bh.Standard.PlaceOfSupplyScheme + placeOfSupplyScheme) { + this.placeOfSupplyScheme = placeOfSupplyScheme; + return this; + } + } + + public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { + @SerializedName("inbound_goods") + INBOUND_GOODS("inbound_goods"), + + @SerializedName("standard") + STANDARD("standard"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + PlaceOfSupplyScheme(String value) { + this.value = value; + } + } + } + + public enum Type implements ApiRequestParams.EnumParam { + @SerializedName("standard") + STANDARD("standard"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + Type(String value) { + this.value = value; + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Bj { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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. Type of registration to be created in {@code country}. */ + @SerializedName("type") + Type type; + + private Bj(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; @@ -3382,34 +4431,221 @@ 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 RegistrationCreateParams.CountryOptions.Bj#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. Type of registration to be created in {@code country}. */ + public Builder setType(RegistrationCreateParams.CountryOptions.Bj.Type type) { + this.type = type; + return this; + } + } + + public enum Type implements ApiRequestParams.EnumParam { + @SerializedName("simplified") + SIMPLIFIED("simplified"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + Type(String value) { + this.value = value; + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Bs { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-level field (serialized) + * name in this param object. Effectively, this map is flattened to its parent instance. + */ + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** Options for the standard registration. */ + @SerializedName("standard") + Standard standard; + + /** Required. Type of registration to be created in {@code country}. */ + @SerializedName("type") + Type type; + + private Bs(Map extraParams, Standard standard, Type type) { + this.extraParams = extraParams; + this.standard = standard; + this.type = type; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Standard standard; + + private Type type; + + /** Finalize and obtain parameter instance from this builder. */ + public RegistrationCreateParams.CountryOptions.Bs build() { + return new RegistrationCreateParams.CountryOptions.Bs( + this.extraParams, this.standard, 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 RegistrationCreateParams.CountryOptions.Bs#extraParams} for the field + * documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link RegistrationCreateParams.CountryOptions.Bs#extraParams} for the field + * documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Options for the standard registration. */ + public Builder setStandard(RegistrationCreateParams.CountryOptions.Bs.Standard standard) { + this.standard = standard; + return this; + } + + /** Required. Type of registration to be created in {@code country}. */ + public Builder setType(RegistrationCreateParams.CountryOptions.Bs.Type type) { + this.type = type; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Standard { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-level field + * (serialized) name in this param object. Effectively, this map is flattened to its parent + * instance. + */ + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** Place of supply scheme used in an standard registration. */ + @SerializedName("place_of_supply_scheme") + PlaceOfSupplyScheme placeOfSupplyScheme; + + private Standard(Map extraParams, PlaceOfSupplyScheme placeOfSupplyScheme) { + this.extraParams = extraParams; + this.placeOfSupplyScheme = placeOfSupplyScheme; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PlaceOfSupplyScheme placeOfSupplyScheme; + + /** Finalize and obtain parameter instance from this builder. */ + public RegistrationCreateParams.CountryOptions.Bs.Standard build() { + return new RegistrationCreateParams.CountryOptions.Bs.Standard( + this.extraParams, this.placeOfSupplyScheme); + } + + /** + * Add a key/value pair to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link RegistrationCreateParams.CountryOptions.Bs.Standard#extraParams} for + * the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link RegistrationCreateParams.CountryOptions.Bs.Standard#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 RegistrationCreateParams.CountryOptions.Bj#extraParams} for the field - * documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** Place of supply scheme used in an standard registration. */ + public Builder setPlaceOfSupplyScheme( + RegistrationCreateParams.CountryOptions.Bs.Standard.PlaceOfSupplyScheme + placeOfSupplyScheme) { + this.placeOfSupplyScheme = placeOfSupplyScheme; + return this; } - this.extraParams.putAll(map); - return this; } - /** Required. Type of registration to be created in {@code country}. */ - public Builder setType(RegistrationCreateParams.CountryOptions.Bj.Type type) { - this.type = type; - return this; + public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { + @SerializedName("inbound_goods") + INBOUND_GOODS("inbound_goods"), + + @SerializedName("standard") + STANDARD("standard"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + PlaceOfSupplyScheme(String value) { + this.value = value; + } } } public enum Type implements ApiRequestParams.EnumParam { - @SerializedName("simplified") - SIMPLIFIED("simplified"); + @SerializedName("standard") + STANDARD("standard"); @Getter(onMethod_ = {@Override}) private final String value; @@ -3422,7 +4658,7 @@ public enum Type implements ApiRequestParams.EnumParam { @Getter @EqualsAndHashCode(callSuper = false) - public static class Bs { + public static class By { /** * Map of extra parameters for custom features not available in this client library. The * content in this map is not serialized under this field's {@code @SerializedName} value. @@ -3436,7 +4672,7 @@ public static class Bs { @SerializedName("type") Type type; - private Bs(Map extraParams, Type type) { + private By(Map extraParams, Type type) { this.extraParams = extraParams; this.type = type; } @@ -3451,14 +4687,14 @@ public static class Builder { private Type type; /** Finalize and obtain parameter instance from this builder. */ - public RegistrationCreateParams.CountryOptions.Bs build() { - return new RegistrationCreateParams.CountryOptions.Bs(this.extraParams, this.type); + public RegistrationCreateParams.CountryOptions.By build() { + return new RegistrationCreateParams.CountryOptions.By(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 RegistrationCreateParams.CountryOptions.Bs#extraParams} for the field + * map. See {@link RegistrationCreateParams.CountryOptions.By#extraParams} for the field * documentation. */ public Builder putExtraParam(String key, Object value) { @@ -3472,7 +4708,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 RegistrationCreateParams.CountryOptions.Bs#extraParams} for the field + * map. See {@link RegistrationCreateParams.CountryOptions.By#extraParams} for the field * documentation. */ public Builder putAllExtraParam(Map map) { @@ -3484,15 +4720,15 @@ public Builder putAllExtraParam(Map map) { } /** Required. Type of registration to be created in {@code country}. */ - public Builder setType(RegistrationCreateParams.CountryOptions.Bs.Type type) { + public Builder setType(RegistrationCreateParams.CountryOptions.By.Type type) { this.type = type; return this; } } public enum Type implements ApiRequestParams.EnumParam { - @SerializedName("standard") - STANDARD("standard"); + @SerializedName("simplified") + SIMPLIFIED("simplified"); @Getter(onMethod_ = {@Override}) private final String value; @@ -3505,7 +4741,7 @@ public enum Type implements ApiRequestParams.EnumParam { @Getter @EqualsAndHashCode(callSuper = false) - public static class By { + public static class Ca { /** * Map of extra parameters for custom features not available in this client library. The * content in this map is not serialized under this field's {@code @SerializedName} value. @@ -3515,12 +4751,17 @@ public static class By { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** Required. Type of registration to be created in {@code country}. */ + /** Options for the provincial tax registration. */ + @SerializedName("province_standard") + ProvinceStandard provinceStandard; + + /** Required. Type of registration to be created in Canada. */ @SerializedName("type") Type type; - private By(Map extraParams, Type type) { + private Ca(Map extraParams, ProvinceStandard provinceStandard, Type type) { this.extraParams = extraParams; + this.provinceStandard = provinceStandard; this.type = type; } @@ -3531,17 +4772,20 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private ProvinceStandard provinceStandard; + private Type type; /** Finalize and obtain parameter instance from this builder. */ - public RegistrationCreateParams.CountryOptions.By build() { - return new RegistrationCreateParams.CountryOptions.By(this.extraParams, this.type); + public RegistrationCreateParams.CountryOptions.Ca build() { + return new RegistrationCreateParams.CountryOptions.Ca( + this.extraParams, this.provinceStandard, 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 RegistrationCreateParams.CountryOptions.By#extraParams} for the field + * map. See {@link RegistrationCreateParams.CountryOptions.Ca#extraParams} for the field * documentation. */ public Builder putExtraParam(String key, Object value) { @@ -3555,7 +4799,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 RegistrationCreateParams.CountryOptions.By#extraParams} for the field + * map. See {@link RegistrationCreateParams.CountryOptions.Ca#extraParams} for the field * documentation. */ public Builder putAllExtraParam(Map map) { @@ -3566,16 +4810,110 @@ public Builder putAllExtraParam(Map map) { return this; } - /** Required. Type of registration to be created in {@code country}. */ - public Builder setType(RegistrationCreateParams.CountryOptions.By.Type type) { + /** Options for the provincial tax registration. */ + public Builder setProvinceStandard( + RegistrationCreateParams.CountryOptions.Ca.ProvinceStandard provinceStandard) { + this.provinceStandard = provinceStandard; + return this; + } + + /** Required. Type of registration to be created in Canada. */ + public Builder setType(RegistrationCreateParams.CountryOptions.Ca.Type type) { this.type = type; return this; } } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class ProvinceStandard { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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. Two-letter CA province code (ISO 3166-2). + */ + @SerializedName("province") + String province; + + private ProvinceStandard(Map extraParams, String province) { + this.extraParams = extraParams; + this.province = province; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private String province; + + /** Finalize and obtain parameter instance from this builder. */ + public RegistrationCreateParams.CountryOptions.Ca.ProvinceStandard build() { + return new RegistrationCreateParams.CountryOptions.Ca.ProvinceStandard( + this.extraParams, this.province); + } + + /** + * Add a key/value pair to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link + * RegistrationCreateParams.CountryOptions.Ca.ProvinceStandard#extraParams} for the field + * documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link + * RegistrationCreateParams.CountryOptions.Ca.ProvinceStandard#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. Two-letter CA province code (ISO 3166-2). + */ + public Builder setProvince(String province) { + this.province = province; + return this; + } + } + } + public enum Type implements ApiRequestParams.EnumParam { + @SerializedName("province_standard") + PROVINCE_STANDARD("province_standard"), + @SerializedName("simplified") - SIMPLIFIED("simplified"); + SIMPLIFIED("simplified"), + + @SerializedName("standard") + STANDARD("standard"); @Getter(onMethod_ = {@Override}) private final String value; @@ -3588,7 +4926,7 @@ public enum Type implements ApiRequestParams.EnumParam { @Getter @EqualsAndHashCode(callSuper = false) - public static class Ca { + public static class Cd { /** * Map of extra parameters for custom features not available in this client library. The * content in this map is not serialized under this field's {@code @SerializedName} value. @@ -3598,17 +4936,17 @@ public static class Ca { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** Options for the provincial tax registration. */ - @SerializedName("province_standard") - ProvinceStandard provinceStandard; + /** Options for the standard registration. */ + @SerializedName("standard") + Standard standard; - /** Required. Type of registration to be created in Canada. */ + /** Required. Type of registration to be created in {@code country}. */ @SerializedName("type") Type type; - private Ca(Map extraParams, ProvinceStandard provinceStandard, Type type) { + private Cd(Map extraParams, Standard standard, Type type) { this.extraParams = extraParams; - this.provinceStandard = provinceStandard; + this.standard = standard; this.type = type; } @@ -3619,20 +4957,20 @@ public static Builder builder() { public static class Builder { private Map extraParams; - private ProvinceStandard provinceStandard; + private Standard standard; private Type type; /** Finalize and obtain parameter instance from this builder. */ - public RegistrationCreateParams.CountryOptions.Ca build() { - return new RegistrationCreateParams.CountryOptions.Ca( - this.extraParams, this.provinceStandard, this.type); + public RegistrationCreateParams.CountryOptions.Cd build() { + return new RegistrationCreateParams.CountryOptions.Cd( + this.extraParams, this.standard, 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 RegistrationCreateParams.CountryOptions.Ca#extraParams} for the field + * map. See {@link RegistrationCreateParams.CountryOptions.Cd#extraParams} for the field * documentation. */ public Builder putExtraParam(String key, Object value) { @@ -3646,7 +4984,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 RegistrationCreateParams.CountryOptions.Ca#extraParams} for the field + * map. See {@link RegistrationCreateParams.CountryOptions.Cd#extraParams} for the field * documentation. */ public Builder putAllExtraParam(Map map) { @@ -3657,15 +4995,14 @@ public Builder putAllExtraParam(Map map) { return this; } - /** Options for the provincial tax registration. */ - public Builder setProvinceStandard( - RegistrationCreateParams.CountryOptions.Ca.ProvinceStandard provinceStandard) { - this.provinceStandard = provinceStandard; + /** Options for the standard registration. */ + public Builder setStandard(RegistrationCreateParams.CountryOptions.Cd.Standard standard) { + this.standard = standard; return this; } - /** Required. Type of registration to be created in Canada. */ - public Builder setType(RegistrationCreateParams.CountryOptions.Ca.Type type) { + /** Required. Type of registration to be created in {@code country}. */ + public Builder setType(RegistrationCreateParams.CountryOptions.Cd.Type type) { this.type = type; return this; } @@ -3673,7 +5010,7 @@ public Builder setType(RegistrationCreateParams.CountryOptions.Ca.Type type) { @Getter @EqualsAndHashCode(callSuper = false) - public static class ProvinceStandard { + public static class Standard { /** * Map of extra parameters for custom features not available in this client library. The * content in this map is not serialized under this field's {@code @SerializedName} value. @@ -3684,16 +5021,13 @@ public static class ProvinceStandard { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** - * Required. Two-letter CA province code (ISO 3166-2). - */ - @SerializedName("province") - String province; + /** Place of supply scheme used in an standard registration. */ + @SerializedName("place_of_supply_scheme") + PlaceOfSupplyScheme placeOfSupplyScheme; - private ProvinceStandard(Map extraParams, String province) { + private Standard(Map extraParams, PlaceOfSupplyScheme placeOfSupplyScheme) { this.extraParams = extraParams; - this.province = province; + this.placeOfSupplyScheme = placeOfSupplyScheme; } public static Builder builder() { @@ -3703,20 +5037,19 @@ public static Builder builder() { public static class Builder { private Map extraParams; - private String province; + private PlaceOfSupplyScheme placeOfSupplyScheme; /** Finalize and obtain parameter instance from this builder. */ - public RegistrationCreateParams.CountryOptions.Ca.ProvinceStandard build() { - return new RegistrationCreateParams.CountryOptions.Ca.ProvinceStandard( - this.extraParams, this.province); + public RegistrationCreateParams.CountryOptions.Cd.Standard build() { + return new RegistrationCreateParams.CountryOptions.Cd.Standard( + this.extraParams, this.placeOfSupplyScheme); } /** * Add a key/value pair to `extraParams` map. A map is initialized for the first * `put/putAll` call, and subsequent calls add additional key/value pairs to the original - * map. See {@link - * RegistrationCreateParams.CountryOptions.Ca.ProvinceStandard#extraParams} for the field - * documentation. + * map. See {@link RegistrationCreateParams.CountryOptions.Cd.Standard#extraParams} for + * the field documentation. */ public Builder putExtraParam(String key, Object value) { if (this.extraParams == null) { @@ -3729,9 +5062,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 - * RegistrationCreateParams.CountryOptions.Ca.ProvinceStandard#extraParams} for the field - * documentation. + * map. See {@link RegistrationCreateParams.CountryOptions.Cd.Standard#extraParams} for + * the field documentation. */ public Builder putAllExtraParam(Map map) { if (this.extraParams == null) { @@ -3741,24 +5073,32 @@ public Builder putAllExtraParam(Map map) { return this; } - /** - * Required. Two-letter CA province code (ISO 3166-2). - */ - public Builder setProvince(String province) { - this.province = province; - return this; + /** Place of supply scheme used in an standard registration. */ + public Builder setPlaceOfSupplyScheme( + RegistrationCreateParams.CountryOptions.Cd.Standard.PlaceOfSupplyScheme + placeOfSupplyScheme) { + this.placeOfSupplyScheme = placeOfSupplyScheme; + return this; + } + } + + public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { + @SerializedName("inbound_goods") + INBOUND_GOODS("inbound_goods"), + + @SerializedName("standard") + STANDARD("standard"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + PlaceOfSupplyScheme(String value) { + this.value = value; } } } public enum Type implements ApiRequestParams.EnumParam { - @SerializedName("province_standard") - PROVINCE_STANDARD("province_standard"), - - @SerializedName("simplified") - SIMPLIFIED("simplified"), - @SerializedName("standard") STANDARD("standard"); @@ -3773,7 +5113,7 @@ public enum Type implements ApiRequestParams.EnumParam { @Getter @EqualsAndHashCode(callSuper = false) - public static class Cd { + public static class Ch { /** * Map of extra parameters for custom features not available in this client library. The * content in this map is not serialized under this field's {@code @SerializedName} value. @@ -3783,12 +5123,17 @@ public static class Cd { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Options for the standard registration. */ + @SerializedName("standard") + Standard standard; + /** Required. Type of registration to be created in {@code country}. */ @SerializedName("type") Type type; - private Cd(Map extraParams, Type type) { + private Ch(Map extraParams, Standard standard, Type type) { this.extraParams = extraParams; + this.standard = standard; this.type = type; } @@ -3799,17 +5144,20 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Standard standard; + private Type type; /** Finalize and obtain parameter instance from this builder. */ - public RegistrationCreateParams.CountryOptions.Cd build() { - return new RegistrationCreateParams.CountryOptions.Cd(this.extraParams, this.type); + public RegistrationCreateParams.CountryOptions.Ch build() { + return new RegistrationCreateParams.CountryOptions.Ch( + this.extraParams, this.standard, 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 RegistrationCreateParams.CountryOptions.Cd#extraParams} for the field + * map. See {@link RegistrationCreateParams.CountryOptions.Ch#extraParams} for the field * documentation. */ public Builder putExtraParam(String key, Object value) { @@ -3823,7 +5171,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 RegistrationCreateParams.CountryOptions.Cd#extraParams} for the field + * map. See {@link RegistrationCreateParams.CountryOptions.Ch#extraParams} for the field * documentation. */ public Builder putAllExtraParam(Map map) { @@ -3834,93 +5182,106 @@ public Builder putAllExtraParam(Map map) { return this; } + /** Options for the standard registration. */ + public Builder setStandard(RegistrationCreateParams.CountryOptions.Ch.Standard standard) { + this.standard = standard; + return this; + } + /** Required. Type of registration to be created in {@code country}. */ - public Builder setType(RegistrationCreateParams.CountryOptions.Cd.Type type) { + public Builder setType(RegistrationCreateParams.CountryOptions.Ch.Type type) { this.type = type; return this; } } - public enum Type implements ApiRequestParams.EnumParam { - @SerializedName("standard") - STANDARD("standard"); + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Standard { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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; + /** Place of supply scheme used in an standard registration. */ + @SerializedName("place_of_supply_scheme") + PlaceOfSupplyScheme placeOfSupplyScheme; - Type(String value) { - this.value = value; + private Standard(Map extraParams, PlaceOfSupplyScheme placeOfSupplyScheme) { + this.extraParams = extraParams; + this.placeOfSupplyScheme = placeOfSupplyScheme; } - } - } - - @Getter - @EqualsAndHashCode(callSuper = false) - public static class Ch { - /** - * Map of extra parameters for custom features not available in this client library. The - * content in this map is not serialized under this field's {@code @SerializedName} value. - * Instead, each key/value pair is serialized as if the key is a root-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. Type of registration to be created in {@code country}. */ - @SerializedName("type") - Type type; - private Ch(Map extraParams, Type type) { - this.extraParams = extraParams; - this.type = type; - } + 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 PlaceOfSupplyScheme placeOfSupplyScheme; - private Type type; + /** Finalize and obtain parameter instance from this builder. */ + public RegistrationCreateParams.CountryOptions.Ch.Standard build() { + return new RegistrationCreateParams.CountryOptions.Ch.Standard( + this.extraParams, this.placeOfSupplyScheme); + } - /** Finalize and obtain parameter instance from this builder. */ - public RegistrationCreateParams.CountryOptions.Ch build() { - return new RegistrationCreateParams.CountryOptions.Ch(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 RegistrationCreateParams.CountryOptions.Ch.Standard#extraParams} for + * the field 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 RegistrationCreateParams.CountryOptions.Ch#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 RegistrationCreateParams.CountryOptions.Ch.Standard#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.put(key, value); - return this; - } - /** - * Add all map key/value pairs to `extraParams` map. A map is initialized for the first - * `put/putAll` call, and subsequent calls add additional key/value pairs to the original - * map. See {@link RegistrationCreateParams.CountryOptions.Ch#extraParams} for the field - * documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** Place of supply scheme used in an standard registration. */ + public Builder setPlaceOfSupplyScheme( + RegistrationCreateParams.CountryOptions.Ch.Standard.PlaceOfSupplyScheme + placeOfSupplyScheme) { + this.placeOfSupplyScheme = placeOfSupplyScheme; + return this; } - this.extraParams.putAll(map); - return this; } - /** Required. Type of registration to be created in {@code country}. */ - public Builder setType(RegistrationCreateParams.CountryOptions.Ch.Type type) { - this.type = type; - return this; + public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { + @SerializedName("inbound_goods") + INBOUND_GOODS("inbound_goods"), + + @SerializedName("standard") + STANDARD("standard"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + PlaceOfSupplyScheme(String value) { + this.value = value; + } } } @@ -4515,6 +5876,9 @@ public Builder setPlaceOfSupplyScheme( } public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { + @SerializedName("inbound_goods") + INBOUND_GOODS("inbound_goods"), + @SerializedName("small_seller") SMALL_SELLER("small_seller"), @@ -4715,6 +6079,9 @@ public Builder setPlaceOfSupplyScheme( } public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { + @SerializedName("inbound_goods") + INBOUND_GOODS("inbound_goods"), + @SerializedName("small_seller") SMALL_SELLER("small_seller"), @@ -4915,6 +6282,9 @@ public Builder setPlaceOfSupplyScheme( } public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { + @SerializedName("inbound_goods") + INBOUND_GOODS("inbound_goods"), + @SerializedName("small_seller") SMALL_SELLER("small_seller"), @@ -5115,6 +6485,9 @@ public Builder setPlaceOfSupplyScheme( } public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { + @SerializedName("inbound_goods") + INBOUND_GOODS("inbound_goods"), + @SerializedName("small_seller") SMALL_SELLER("small_seller"), @@ -5398,6 +6771,9 @@ public Builder setPlaceOfSupplyScheme( } public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { + @SerializedName("inbound_goods") + INBOUND_GOODS("inbound_goods"), + @SerializedName("small_seller") SMALL_SELLER("small_seller"), @@ -5681,6 +7057,9 @@ public Builder setPlaceOfSupplyScheme( } public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { + @SerializedName("inbound_goods") + INBOUND_GOODS("inbound_goods"), + @SerializedName("small_seller") SMALL_SELLER("small_seller"), @@ -5730,12 +7109,17 @@ public static class Et { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Options for the standard registration. */ + @SerializedName("standard") + Standard standard; + /** Required. Type of registration to be created in {@code country}. */ @SerializedName("type") Type type; - private Et(Map extraParams, Type type) { + private Et(Map extraParams, Standard standard, Type type) { this.extraParams = extraParams; + this.standard = standard; this.type = type; } @@ -5746,45 +7130,144 @@ public static Builder builder() { public static class Builder { private Map extraParams; - private Type type; + private Standard standard; + + private Type type; + + /** Finalize and obtain parameter instance from this builder. */ + public RegistrationCreateParams.CountryOptions.Et build() { + return new RegistrationCreateParams.CountryOptions.Et( + this.extraParams, this.standard, 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 RegistrationCreateParams.CountryOptions.Et#extraParams} for the field + * documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link RegistrationCreateParams.CountryOptions.Et#extraParams} for the field + * documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Options for the standard registration. */ + public Builder setStandard(RegistrationCreateParams.CountryOptions.Et.Standard standard) { + this.standard = standard; + return this; + } + + /** Required. Type of registration to be created in {@code country}. */ + public Builder setType(RegistrationCreateParams.CountryOptions.Et.Type type) { + this.type = type; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Standard { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-level field + * (serialized) name in this param object. Effectively, this map is flattened to its parent + * instance. + */ + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** Place of supply scheme used in an standard registration. */ + @SerializedName("place_of_supply_scheme") + PlaceOfSupplyScheme placeOfSupplyScheme; + + private Standard(Map extraParams, PlaceOfSupplyScheme placeOfSupplyScheme) { + this.extraParams = extraParams; + this.placeOfSupplyScheme = placeOfSupplyScheme; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PlaceOfSupplyScheme placeOfSupplyScheme; - /** Finalize and obtain parameter instance from this builder. */ - public RegistrationCreateParams.CountryOptions.Et build() { - return new RegistrationCreateParams.CountryOptions.Et(this.extraParams, this.type); - } + /** Finalize and obtain parameter instance from this builder. */ + public RegistrationCreateParams.CountryOptions.Et.Standard build() { + return new RegistrationCreateParams.CountryOptions.Et.Standard( + this.extraParams, this.placeOfSupplyScheme); + } - /** - * Add a key/value pair to `extraParams` map. A map is initialized for the first - * `put/putAll` call, and subsequent calls add additional key/value pairs to the original - * map. See {@link RegistrationCreateParams.CountryOptions.Et#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 RegistrationCreateParams.CountryOptions.Et.Standard#extraParams} for + * the 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 RegistrationCreateParams.CountryOptions.Et#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 RegistrationCreateParams.CountryOptions.Et.Standard#extraParams} for + * the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Place of supply scheme used in an standard registration. */ + public Builder setPlaceOfSupplyScheme( + RegistrationCreateParams.CountryOptions.Et.Standard.PlaceOfSupplyScheme + placeOfSupplyScheme) { + this.placeOfSupplyScheme = placeOfSupplyScheme; + return this; } - this.extraParams.putAll(map); - return this; } - /** Required. Type of registration to be created in {@code country}. */ - public Builder setType(RegistrationCreateParams.CountryOptions.Et.Type type) { - this.type = type; - return this; + public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { + @SerializedName("inbound_goods") + INBOUND_GOODS("inbound_goods"), + + @SerializedName("standard") + STANDARD("standard"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + PlaceOfSupplyScheme(String value) { + this.value = value; + } } } @@ -5964,6 +7447,9 @@ public Builder setPlaceOfSupplyScheme( } public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { + @SerializedName("inbound_goods") + INBOUND_GOODS("inbound_goods"), + @SerializedName("small_seller") SMALL_SELLER("small_seller"), @@ -6164,6 +7650,9 @@ public Builder setPlaceOfSupplyScheme( } public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { + @SerializedName("inbound_goods") + INBOUND_GOODS("inbound_goods"), + @SerializedName("small_seller") SMALL_SELLER("small_seller"), @@ -6213,12 +7702,17 @@ public static class Gb { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Options for the standard registration. */ + @SerializedName("standard") + Standard standard; + /** Required. Type of registration to be created in {@code country}. */ @SerializedName("type") Type type; - private Gb(Map extraParams, Type type) { + private Gb(Map extraParams, Standard standard, Type type) { this.extraParams = extraParams; + this.standard = standard; this.type = type; } @@ -6229,11 +7723,14 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Standard standard; + private Type type; /** Finalize and obtain parameter instance from this builder. */ public RegistrationCreateParams.CountryOptions.Gb build() { - return new RegistrationCreateParams.CountryOptions.Gb(this.extraParams, this.type); + return new RegistrationCreateParams.CountryOptions.Gb( + this.extraParams, this.standard, this.type); } /** @@ -6264,6 +7761,12 @@ public Builder putAllExtraParam(Map map) { return this; } + /** Options for the standard registration. */ + public Builder setStandard(RegistrationCreateParams.CountryOptions.Gb.Standard standard) { + this.standard = standard; + return this; + } + /** Required. Type of registration to be created in {@code country}. */ public Builder setType(RegistrationCreateParams.CountryOptions.Gb.Type type) { this.type = type; @@ -6271,6 +7774,96 @@ public Builder setType(RegistrationCreateParams.CountryOptions.Gb.Type type) { } } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Standard { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-level field + * (serialized) name in this param object. Effectively, this map is flattened to its parent + * instance. + */ + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** Place of supply scheme used in an standard registration. */ + @SerializedName("place_of_supply_scheme") + PlaceOfSupplyScheme placeOfSupplyScheme; + + private Standard(Map extraParams, PlaceOfSupplyScheme placeOfSupplyScheme) { + this.extraParams = extraParams; + this.placeOfSupplyScheme = placeOfSupplyScheme; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PlaceOfSupplyScheme placeOfSupplyScheme; + + /** Finalize and obtain parameter instance from this builder. */ + public RegistrationCreateParams.CountryOptions.Gb.Standard build() { + return new RegistrationCreateParams.CountryOptions.Gb.Standard( + this.extraParams, this.placeOfSupplyScheme); + } + + /** + * Add a key/value pair to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link RegistrationCreateParams.CountryOptions.Gb.Standard#extraParams} for + * the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link RegistrationCreateParams.CountryOptions.Gb.Standard#extraParams} for + * the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Place of supply scheme used in an standard registration. */ + public Builder setPlaceOfSupplyScheme( + RegistrationCreateParams.CountryOptions.Gb.Standard.PlaceOfSupplyScheme + placeOfSupplyScheme) { + this.placeOfSupplyScheme = placeOfSupplyScheme; + return this; + } + } + + public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { + @SerializedName("inbound_goods") + INBOUND_GOODS("inbound_goods"), + + @SerializedName("standard") + STANDARD("standard"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + PlaceOfSupplyScheme(String value) { + this.value = value; + } + } + } + public enum Type implements ApiRequestParams.EnumParam { @SerializedName("standard") STANDARD("standard"); @@ -6379,12 +7972,17 @@ public static class Gn { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Options for the standard registration. */ + @SerializedName("standard") + Standard standard; + /** Required. Type of registration to be created in {@code country}. */ @SerializedName("type") Type type; - private Gn(Map extraParams, Type type) { + private Gn(Map extraParams, Standard standard, Type type) { this.extraParams = extraParams; + this.standard = standard; this.type = type; } @@ -6395,45 +7993,144 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Standard standard; + private Type type; /** Finalize and obtain parameter instance from this builder. */ public RegistrationCreateParams.CountryOptions.Gn build() { - return new RegistrationCreateParams.CountryOptions.Gn(this.extraParams, this.type); + return new RegistrationCreateParams.CountryOptions.Gn( + this.extraParams, this.standard, 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 RegistrationCreateParams.CountryOptions.Gn#extraParams} for the field + * 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 RegistrationCreateParams.CountryOptions.Gn#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 RegistrationCreateParams.CountryOptions.Gn#extraParams} for the field + * documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Options for the standard registration. */ + public Builder setStandard(RegistrationCreateParams.CountryOptions.Gn.Standard standard) { + this.standard = standard; + return this; + } + + /** Required. Type of registration to be created in {@code country}. */ + public Builder setType(RegistrationCreateParams.CountryOptions.Gn.Type type) { + this.type = type; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Standard { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-level field + * (serialized) name in this param object. Effectively, this map is flattened to its parent + * instance. + */ + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** Place of supply scheme used in an standard registration. */ + @SerializedName("place_of_supply_scheme") + PlaceOfSupplyScheme placeOfSupplyScheme; + + private Standard(Map extraParams, PlaceOfSupplyScheme placeOfSupplyScheme) { + this.extraParams = extraParams; + this.placeOfSupplyScheme = placeOfSupplyScheme; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PlaceOfSupplyScheme placeOfSupplyScheme; + + /** Finalize and obtain parameter instance from this builder. */ + public RegistrationCreateParams.CountryOptions.Gn.Standard build() { + return new RegistrationCreateParams.CountryOptions.Gn.Standard( + this.extraParams, this.placeOfSupplyScheme); + } + + /** + * Add a key/value pair to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link RegistrationCreateParams.CountryOptions.Gn.Standard#extraParams} for + * the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link RegistrationCreateParams.CountryOptions.Gn.Standard#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.put(key, value); - return this; - } - /** - * Add all map key/value pairs to `extraParams` map. A map is initialized for the first - * `put/putAll` call, and subsequent calls add additional key/value pairs to the original - * map. See {@link RegistrationCreateParams.CountryOptions.Gn#extraParams} for the field - * documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** Place of supply scheme used in an standard registration. */ + public Builder setPlaceOfSupplyScheme( + RegistrationCreateParams.CountryOptions.Gn.Standard.PlaceOfSupplyScheme + placeOfSupplyScheme) { + this.placeOfSupplyScheme = placeOfSupplyScheme; + return this; } - this.extraParams.putAll(map); - return this; } - /** Required. Type of registration to be created in {@code country}. */ - public Builder setType(RegistrationCreateParams.CountryOptions.Gn.Type type) { - this.type = type; - return this; + public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { + @SerializedName("inbound_goods") + INBOUND_GOODS("inbound_goods"), + + @SerializedName("standard") + STANDARD("standard"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + PlaceOfSupplyScheme(String value) { + this.value = value; + } } } @@ -6613,6 +8310,9 @@ public Builder setPlaceOfSupplyScheme( } public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { + @SerializedName("inbound_goods") + INBOUND_GOODS("inbound_goods"), + @SerializedName("small_seller") SMALL_SELLER("small_seller"), @@ -6813,6 +8513,9 @@ public Builder setPlaceOfSupplyScheme( } public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { + @SerializedName("inbound_goods") + INBOUND_GOODS("inbound_goods"), + @SerializedName("small_seller") SMALL_SELLER("small_seller"), @@ -7013,6 +8716,9 @@ public Builder setPlaceOfSupplyScheme( } public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { + @SerializedName("inbound_goods") + INBOUND_GOODS("inbound_goods"), + @SerializedName("small_seller") SMALL_SELLER("small_seller"), @@ -7296,6 +9002,9 @@ public Builder setPlaceOfSupplyScheme( } public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { + @SerializedName("inbound_goods") + INBOUND_GOODS("inbound_goods"), + @SerializedName("small_seller") SMALL_SELLER("small_seller"), @@ -7428,12 +9137,17 @@ public static class Is { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Options for the standard registration. */ + @SerializedName("standard") + Standard standard; + /** Required. Type of registration to be created in {@code country}. */ @SerializedName("type") Type type; - private Is(Map extraParams, Type type) { + private Is(Map extraParams, Standard standard, Type type) { this.extraParams = extraParams; + this.standard = standard; this.type = type; } @@ -7444,11 +9158,14 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Standard standard; + private Type type; /** Finalize and obtain parameter instance from this builder. */ public RegistrationCreateParams.CountryOptions.Is build() { - return new RegistrationCreateParams.CountryOptions.Is(this.extraParams, this.type); + return new RegistrationCreateParams.CountryOptions.Is( + this.extraParams, this.standard, this.type); } /** @@ -7479,6 +9196,12 @@ public Builder putAllExtraParam(Map map) { return this; } + /** Options for the standard registration. */ + public Builder setStandard(RegistrationCreateParams.CountryOptions.Is.Standard standard) { + this.standard = standard; + return this; + } + /** Required. Type of registration to be created in {@code country}. */ public Builder setType(RegistrationCreateParams.CountryOptions.Is.Type type) { this.type = type; @@ -7486,6 +9209,96 @@ public Builder setType(RegistrationCreateParams.CountryOptions.Is.Type type) { } } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Standard { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-level field + * (serialized) name in this param object. Effectively, this map is flattened to its parent + * instance. + */ + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** Place of supply scheme used in an standard registration. */ + @SerializedName("place_of_supply_scheme") + PlaceOfSupplyScheme placeOfSupplyScheme; + + private Standard(Map extraParams, PlaceOfSupplyScheme placeOfSupplyScheme) { + this.extraParams = extraParams; + this.placeOfSupplyScheme = placeOfSupplyScheme; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PlaceOfSupplyScheme placeOfSupplyScheme; + + /** Finalize and obtain parameter instance from this builder. */ + public RegistrationCreateParams.CountryOptions.Is.Standard build() { + return new RegistrationCreateParams.CountryOptions.Is.Standard( + this.extraParams, this.placeOfSupplyScheme); + } + + /** + * Add a key/value pair to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link RegistrationCreateParams.CountryOptions.Is.Standard#extraParams} for + * the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link RegistrationCreateParams.CountryOptions.Is.Standard#extraParams} for + * the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Place of supply scheme used in an standard registration. */ + public Builder setPlaceOfSupplyScheme( + RegistrationCreateParams.CountryOptions.Is.Standard.PlaceOfSupplyScheme + placeOfSupplyScheme) { + this.placeOfSupplyScheme = placeOfSupplyScheme; + return this; + } + } + + public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { + @SerializedName("inbound_goods") + INBOUND_GOODS("inbound_goods"), + + @SerializedName("standard") + STANDARD("standard"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + PlaceOfSupplyScheme(String value) { + this.value = value; + } + } + } + public enum Type implements ApiRequestParams.EnumParam { @SerializedName("standard") STANDARD("standard"); @@ -7662,6 +9475,9 @@ public Builder setPlaceOfSupplyScheme( } public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { + @SerializedName("inbound_goods") + INBOUND_GOODS("inbound_goods"), + @SerializedName("small_seller") SMALL_SELLER("small_seller"), @@ -7711,12 +9527,17 @@ public static class Jp { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Options for the standard registration. */ + @SerializedName("standard") + Standard standard; + /** Required. Type of registration to be created in {@code country}. */ @SerializedName("type") Type type; - private Jp(Map extraParams, Type type) { + private Jp(Map extraParams, Standard standard, Type type) { this.extraParams = extraParams; + this.standard = standard; this.type = type; } @@ -7727,11 +9548,14 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Standard standard; + private Type type; /** Finalize and obtain parameter instance from this builder. */ public RegistrationCreateParams.CountryOptions.Jp build() { - return new RegistrationCreateParams.CountryOptions.Jp(this.extraParams, this.type); + return new RegistrationCreateParams.CountryOptions.Jp( + this.extraParams, this.standard, this.type); } /** @@ -7762,6 +9586,12 @@ public Builder putAllExtraParam(Map map) { return this; } + /** Options for the standard registration. */ + public Builder setStandard(RegistrationCreateParams.CountryOptions.Jp.Standard standard) { + this.standard = standard; + return this; + } + /** Required. Type of registration to be created in {@code country}. */ public Builder setType(RegistrationCreateParams.CountryOptions.Jp.Type type) { this.type = type; @@ -7769,6 +9599,96 @@ public Builder setType(RegistrationCreateParams.CountryOptions.Jp.Type type) { } } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Standard { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-level field + * (serialized) name in this param object. Effectively, this map is flattened to its parent + * instance. + */ + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** Place of supply scheme used in an standard registration. */ + @SerializedName("place_of_supply_scheme") + PlaceOfSupplyScheme placeOfSupplyScheme; + + private Standard(Map extraParams, PlaceOfSupplyScheme placeOfSupplyScheme) { + this.extraParams = extraParams; + this.placeOfSupplyScheme = placeOfSupplyScheme; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PlaceOfSupplyScheme placeOfSupplyScheme; + + /** Finalize and obtain parameter instance from this builder. */ + public RegistrationCreateParams.CountryOptions.Jp.Standard build() { + return new RegistrationCreateParams.CountryOptions.Jp.Standard( + this.extraParams, this.placeOfSupplyScheme); + } + + /** + * Add a key/value pair to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link RegistrationCreateParams.CountryOptions.Jp.Standard#extraParams} for + * the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link RegistrationCreateParams.CountryOptions.Jp.Standard#extraParams} for + * the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Place of supply scheme used in an standard registration. */ + public Builder setPlaceOfSupplyScheme( + RegistrationCreateParams.CountryOptions.Jp.Standard.PlaceOfSupplyScheme + placeOfSupplyScheme) { + this.placeOfSupplyScheme = placeOfSupplyScheme; + return this; + } + } + + public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { + @SerializedName("inbound_goods") + INBOUND_GOODS("inbound_goods"), + + @SerializedName("standard") + STANDARD("standard"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + PlaceOfSupplyScheme(String value) { + this.value = value; + } + } + } + public enum Type implements ApiRequestParams.EnumParam { @SerializedName("standard") STANDARD("standard"); @@ -8443,6 +10363,9 @@ public Builder setPlaceOfSupplyScheme( } public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { + @SerializedName("inbound_goods") + INBOUND_GOODS("inbound_goods"), + @SerializedName("small_seller") SMALL_SELLER("small_seller"), @@ -8643,6 +10566,9 @@ public Builder setPlaceOfSupplyScheme( } public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { + @SerializedName("inbound_goods") + INBOUND_GOODS("inbound_goods"), + @SerializedName("small_seller") SMALL_SELLER("small_seller"), @@ -8843,6 +10769,9 @@ public Builder setPlaceOfSupplyScheme( } public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { + @SerializedName("inbound_goods") + INBOUND_GOODS("inbound_goods"), + @SerializedName("small_seller") SMALL_SELLER("small_seller"), @@ -8943,16 +10872,286 @@ public Builder putAllExtraParam(Map map) { return this; } - /** Required. Type of registration to be created in {@code country}. */ - public Builder setType(RegistrationCreateParams.CountryOptions.Ma.Type type) { - this.type = type; - return this; + /** Required. Type of registration to be created in {@code country}. */ + public Builder setType(RegistrationCreateParams.CountryOptions.Ma.Type type) { + this.type = type; + return this; + } + } + + public enum Type implements ApiRequestParams.EnumParam { + @SerializedName("simplified") + SIMPLIFIED("simplified"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + Type(String value) { + this.value = value; + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Md { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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. Type of registration to be created in {@code country}. */ + @SerializedName("type") + Type type; + + private Md(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 RegistrationCreateParams.CountryOptions.Md build() { + return new RegistrationCreateParams.CountryOptions.Md(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 RegistrationCreateParams.CountryOptions.Md#extraParams} for the field + * documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link RegistrationCreateParams.CountryOptions.Md#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. Type of registration to be created in {@code country}. */ + public Builder setType(RegistrationCreateParams.CountryOptions.Md.Type type) { + this.type = type; + return this; + } + } + + public enum Type implements ApiRequestParams.EnumParam { + @SerializedName("simplified") + SIMPLIFIED("simplified"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + Type(String value) { + this.value = value; + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Me { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-level field (serialized) + * name in this param object. Effectively, this map is flattened to its parent instance. + */ + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** Options for the standard registration. */ + @SerializedName("standard") + Standard standard; + + /** Required. Type of registration to be created in {@code country}. */ + @SerializedName("type") + Type type; + + private Me(Map extraParams, Standard standard, Type type) { + this.extraParams = extraParams; + this.standard = standard; + this.type = type; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Standard standard; + + private Type type; + + /** Finalize and obtain parameter instance from this builder. */ + public RegistrationCreateParams.CountryOptions.Me build() { + return new RegistrationCreateParams.CountryOptions.Me( + this.extraParams, this.standard, 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 RegistrationCreateParams.CountryOptions.Me#extraParams} for the field + * documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link RegistrationCreateParams.CountryOptions.Me#extraParams} for the field + * documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Options for the standard registration. */ + public Builder setStandard(RegistrationCreateParams.CountryOptions.Me.Standard standard) { + this.standard = standard; + return this; + } + + /** Required. Type of registration to be created in {@code country}. */ + public Builder setType(RegistrationCreateParams.CountryOptions.Me.Type type) { + this.type = type; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Standard { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-level field + * (serialized) name in this param object. Effectively, this map is flattened to its parent + * instance. + */ + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** Place of supply scheme used in an standard registration. */ + @SerializedName("place_of_supply_scheme") + PlaceOfSupplyScheme placeOfSupplyScheme; + + private Standard(Map extraParams, PlaceOfSupplyScheme placeOfSupplyScheme) { + this.extraParams = extraParams; + this.placeOfSupplyScheme = placeOfSupplyScheme; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PlaceOfSupplyScheme placeOfSupplyScheme; + + /** Finalize and obtain parameter instance from this builder. */ + public RegistrationCreateParams.CountryOptions.Me.Standard build() { + return new RegistrationCreateParams.CountryOptions.Me.Standard( + this.extraParams, this.placeOfSupplyScheme); + } + + /** + * Add a key/value pair to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link RegistrationCreateParams.CountryOptions.Me.Standard#extraParams} for + * the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link RegistrationCreateParams.CountryOptions.Me.Standard#extraParams} for + * the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Place of supply scheme used in an standard registration. */ + public Builder setPlaceOfSupplyScheme( + RegistrationCreateParams.CountryOptions.Me.Standard.PlaceOfSupplyScheme + placeOfSupplyScheme) { + this.placeOfSupplyScheme = placeOfSupplyScheme; + return this; + } + } + + public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { + @SerializedName("inbound_goods") + INBOUND_GOODS("inbound_goods"), + + @SerializedName("standard") + STANDARD("standard"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + PlaceOfSupplyScheme(String value) { + this.value = value; + } } } public enum Type implements ApiRequestParams.EnumParam { - @SerializedName("simplified") - SIMPLIFIED("simplified"); + @SerializedName("standard") + STANDARD("standard"); @Getter(onMethod_ = {@Override}) private final String value; @@ -8965,7 +11164,7 @@ public enum Type implements ApiRequestParams.EnumParam { @Getter @EqualsAndHashCode(callSuper = false) - public static class Md { + public static class Mk { /** * Map of extra parameters for custom features not available in this client library. The * content in this map is not serialized under this field's {@code @SerializedName} value. @@ -8975,12 +11174,17 @@ public static class Md { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Options for the standard registration. */ + @SerializedName("standard") + Standard standard; + /** Required. Type of registration to be created in {@code country}. */ @SerializedName("type") Type type; - private Md(Map extraParams, Type type) { + private Mk(Map extraParams, Standard standard, Type type) { this.extraParams = extraParams; + this.standard = standard; this.type = type; } @@ -8991,17 +11195,20 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Standard standard; + private Type type; /** Finalize and obtain parameter instance from this builder. */ - public RegistrationCreateParams.CountryOptions.Md build() { - return new RegistrationCreateParams.CountryOptions.Md(this.extraParams, this.type); + public RegistrationCreateParams.CountryOptions.Mk build() { + return new RegistrationCreateParams.CountryOptions.Mk( + this.extraParams, this.standard, 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 RegistrationCreateParams.CountryOptions.Md#extraParams} for the field + * map. See {@link RegistrationCreateParams.CountryOptions.Mk#extraParams} for the field * documentation. */ public Builder putExtraParam(String key, Object value) { @@ -9015,7 +11222,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 RegistrationCreateParams.CountryOptions.Md#extraParams} for the field + * map. See {@link RegistrationCreateParams.CountryOptions.Mk#extraParams} for the field * documentation. */ public Builder putAllExtraParam(Map map) { @@ -9026,93 +11233,106 @@ public Builder putAllExtraParam(Map map) { return this; } + /** Options for the standard registration. */ + public Builder setStandard(RegistrationCreateParams.CountryOptions.Mk.Standard standard) { + this.standard = standard; + return this; + } + /** Required. Type of registration to be created in {@code country}. */ - public Builder setType(RegistrationCreateParams.CountryOptions.Md.Type type) { + public Builder setType(RegistrationCreateParams.CountryOptions.Mk.Type type) { this.type = type; return this; } } - public enum Type implements ApiRequestParams.EnumParam { - @SerializedName("simplified") - SIMPLIFIED("simplified"); + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Standard { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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; + /** Place of supply scheme used in an standard registration. */ + @SerializedName("place_of_supply_scheme") + PlaceOfSupplyScheme placeOfSupplyScheme; - Type(String value) { - this.value = value; + private Standard(Map extraParams, PlaceOfSupplyScheme placeOfSupplyScheme) { + this.extraParams = extraParams; + this.placeOfSupplyScheme = placeOfSupplyScheme; } - } - } - - @Getter - @EqualsAndHashCode(callSuper = false) - public static class Me { - /** - * Map of extra parameters for custom features not available in this client library. The - * content in this map is not serialized under this field's {@code @SerializedName} value. - * Instead, each key/value pair is serialized as if the key is a root-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. Type of registration to be created in {@code country}. */ - @SerializedName("type") - Type type; - private Me(Map extraParams, Type type) { - this.extraParams = extraParams; - this.type = type; - } + 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 PlaceOfSupplyScheme placeOfSupplyScheme; - private Type type; + /** Finalize and obtain parameter instance from this builder. */ + public RegistrationCreateParams.CountryOptions.Mk.Standard build() { + return new RegistrationCreateParams.CountryOptions.Mk.Standard( + this.extraParams, this.placeOfSupplyScheme); + } - /** Finalize and obtain parameter instance from this builder. */ - public RegistrationCreateParams.CountryOptions.Me build() { - return new RegistrationCreateParams.CountryOptions.Me(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 RegistrationCreateParams.CountryOptions.Mk.Standard#extraParams} for + * the field 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 RegistrationCreateParams.CountryOptions.Me#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 RegistrationCreateParams.CountryOptions.Mk.Standard#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.put(key, value); - return this; - } - /** - * Add all map key/value pairs to `extraParams` map. A map is initialized for the first - * `put/putAll` call, and subsequent calls add additional key/value pairs to the original - * map. See {@link RegistrationCreateParams.CountryOptions.Me#extraParams} for the field - * documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** Place of supply scheme used in an standard registration. */ + public Builder setPlaceOfSupplyScheme( + RegistrationCreateParams.CountryOptions.Mk.Standard.PlaceOfSupplyScheme + placeOfSupplyScheme) { + this.placeOfSupplyScheme = placeOfSupplyScheme; + return this; } - this.extraParams.putAll(map); - return this; } - /** Required. Type of registration to be created in {@code country}. */ - public Builder setType(RegistrationCreateParams.CountryOptions.Me.Type type) { - this.type = type; - return this; + public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { + @SerializedName("inbound_goods") + INBOUND_GOODS("inbound_goods"), + + @SerializedName("standard") + STANDARD("standard"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + PlaceOfSupplyScheme(String value) { + this.value = value; + } } } @@ -9131,7 +11351,7 @@ public enum Type implements ApiRequestParams.EnumParam { @Getter @EqualsAndHashCode(callSuper = false) - public static class Mk { + public static class Mr { /** * Map of extra parameters for custom features not available in this client library. The * content in this map is not serialized under this field's {@code @SerializedName} value. @@ -9141,12 +11361,17 @@ public static class Mk { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Options for the standard registration. */ + @SerializedName("standard") + Standard standard; + /** Required. Type of registration to be created in {@code country}. */ @SerializedName("type") Type type; - private Mk(Map extraParams, Type type) { + private Mr(Map extraParams, Standard standard, Type type) { this.extraParams = extraParams; + this.standard = standard; this.type = type; } @@ -9157,17 +11382,20 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Standard standard; + private Type type; /** Finalize and obtain parameter instance from this builder. */ - public RegistrationCreateParams.CountryOptions.Mk build() { - return new RegistrationCreateParams.CountryOptions.Mk(this.extraParams, this.type); + public RegistrationCreateParams.CountryOptions.Mr build() { + return new RegistrationCreateParams.CountryOptions.Mr( + this.extraParams, this.standard, 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 RegistrationCreateParams.CountryOptions.Mk#extraParams} for the field + * map. See {@link RegistrationCreateParams.CountryOptions.Mr#extraParams} for the field * documentation. */ public Builder putExtraParam(String key, Object value) { @@ -9181,7 +11409,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 RegistrationCreateParams.CountryOptions.Mk#extraParams} for the field + * map. See {@link RegistrationCreateParams.CountryOptions.Mr#extraParams} for the field * documentation. */ public Builder putAllExtraParam(Map map) { @@ -9192,93 +11420,106 @@ public Builder putAllExtraParam(Map map) { return this; } + /** Options for the standard registration. */ + public Builder setStandard(RegistrationCreateParams.CountryOptions.Mr.Standard standard) { + this.standard = standard; + return this; + } + /** Required. Type of registration to be created in {@code country}. */ - public Builder setType(RegistrationCreateParams.CountryOptions.Mk.Type type) { + public Builder setType(RegistrationCreateParams.CountryOptions.Mr.Type type) { this.type = type; return this; } } - public enum Type implements ApiRequestParams.EnumParam { - @SerializedName("standard") - STANDARD("standard"); + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Standard { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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; + /** Place of supply scheme used in an standard registration. */ + @SerializedName("place_of_supply_scheme") + PlaceOfSupplyScheme placeOfSupplyScheme; - Type(String value) { - this.value = value; + private Standard(Map extraParams, PlaceOfSupplyScheme placeOfSupplyScheme) { + this.extraParams = extraParams; + this.placeOfSupplyScheme = placeOfSupplyScheme; } - } - } - @Getter - @EqualsAndHashCode(callSuper = false) - public static class Mr { - /** - * Map of extra parameters for custom features not available in this client library. The - * content in this map is not serialized under this field's {@code @SerializedName} value. - * Instead, each key/value pair is serialized as if the key is a root-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. Type of registration to be created in {@code country}. */ - @SerializedName("type") - Type type; + public static class Builder { + private Map extraParams; - private Mr(Map extraParams, Type type) { - this.extraParams = extraParams; - this.type = type; - } + private PlaceOfSupplyScheme placeOfSupplyScheme; + + /** Finalize and obtain parameter instance from this builder. */ + public RegistrationCreateParams.CountryOptions.Mr.Standard build() { + return new RegistrationCreateParams.CountryOptions.Mr.Standard( + this.extraParams, this.placeOfSupplyScheme); + } + + /** + * Add a key/value pair to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link RegistrationCreateParams.CountryOptions.Mr.Standard#extraParams} for + * the 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 RegistrationCreateParams.CountryOptions.Mr.Standard#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; + /** Place of supply scheme used in an standard registration. */ + public Builder setPlaceOfSupplyScheme( + RegistrationCreateParams.CountryOptions.Mr.Standard.PlaceOfSupplyScheme + placeOfSupplyScheme) { + this.placeOfSupplyScheme = placeOfSupplyScheme; + return this; + } + } - private Type type; + public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { + @SerializedName("inbound_goods") + INBOUND_GOODS("inbound_goods"), - /** Finalize and obtain parameter instance from this builder. */ - public RegistrationCreateParams.CountryOptions.Mr build() { - return new RegistrationCreateParams.CountryOptions.Mr(this.extraParams, this.type); - } + @SerializedName("standard") + STANDARD("standard"); - /** - * Add a key/value pair to `extraParams` map. A map is initialized for the first - * `put/putAll` call, and subsequent calls add additional key/value pairs to the original - * map. See {@link RegistrationCreateParams.CountryOptions.Mr#extraParams} for the 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(onMethod_ = {@Override}) + private final String 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 RegistrationCreateParams.CountryOptions.Mr#extraParams} for the field - * documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + PlaceOfSupplyScheme(String value) { + this.value = value; } - this.extraParams.putAll(map); - return this; - } - - /** Required. Type of registration to be created in {@code country}. */ - public Builder setType(RegistrationCreateParams.CountryOptions.Mr.Type type) { - this.type = type; - return this; } } @@ -9458,6 +11699,9 @@ public Builder setPlaceOfSupplyScheme( } public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { + @SerializedName("inbound_goods") + INBOUND_GOODS("inbound_goods"), + @SerializedName("small_seller") SMALL_SELLER("small_seller"), @@ -9732,8 +11976,211 @@ public Builder setType(RegistrationCreateParams.CountryOptions.Ng.Type type) { } public enum Type implements ApiRequestParams.EnumParam { - @SerializedName("simplified") - SIMPLIFIED("simplified"); + @SerializedName("simplified") + SIMPLIFIED("simplified"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + Type(String value) { + this.value = value; + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Nl { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-level field (serialized) + * name in this param object. Effectively, this map is flattened to its parent instance. + */ + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** Options for the standard registration. */ + @SerializedName("standard") + Standard standard; + + /** Required. Type of registration to be created in an EU country. */ + @SerializedName("type") + Type type; + + private Nl(Map extraParams, Standard standard, Type type) { + this.extraParams = extraParams; + this.standard = standard; + this.type = type; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Standard standard; + + private Type type; + + /** Finalize and obtain parameter instance from this builder. */ + public RegistrationCreateParams.CountryOptions.Nl build() { + return new RegistrationCreateParams.CountryOptions.Nl( + this.extraParams, this.standard, 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 RegistrationCreateParams.CountryOptions.Nl#extraParams} for the field + * documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link RegistrationCreateParams.CountryOptions.Nl#extraParams} for the field + * documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Options for the standard registration. */ + public Builder setStandard(RegistrationCreateParams.CountryOptions.Nl.Standard standard) { + this.standard = standard; + return this; + } + + /** Required. Type of registration to be created in an EU country. */ + public Builder setType(RegistrationCreateParams.CountryOptions.Nl.Type type) { + this.type = type; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Standard { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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. Place of supply scheme used in an EU standard registration. + */ + @SerializedName("place_of_supply_scheme") + PlaceOfSupplyScheme placeOfSupplyScheme; + + private Standard(Map extraParams, PlaceOfSupplyScheme placeOfSupplyScheme) { + this.extraParams = extraParams; + this.placeOfSupplyScheme = placeOfSupplyScheme; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PlaceOfSupplyScheme placeOfSupplyScheme; + + /** Finalize and obtain parameter instance from this builder. */ + public RegistrationCreateParams.CountryOptions.Nl.Standard build() { + return new RegistrationCreateParams.CountryOptions.Nl.Standard( + this.extraParams, this.placeOfSupplyScheme); + } + + /** + * Add a key/value pair to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link RegistrationCreateParams.CountryOptions.Nl.Standard#extraParams} for + * the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link RegistrationCreateParams.CountryOptions.Nl.Standard#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. Place of supply scheme used in an EU standard registration. + */ + public Builder setPlaceOfSupplyScheme( + RegistrationCreateParams.CountryOptions.Nl.Standard.PlaceOfSupplyScheme + placeOfSupplyScheme) { + this.placeOfSupplyScheme = placeOfSupplyScheme; + return this; + } + } + + public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { + @SerializedName("inbound_goods") + INBOUND_GOODS("inbound_goods"), + + @SerializedName("small_seller") + SMALL_SELLER("small_seller"), + + @SerializedName("standard") + STANDARD("standard"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + PlaceOfSupplyScheme(String value) { + this.value = value; + } + } + } + + public enum Type implements ApiRequestParams.EnumParam { + @SerializedName("ioss") + IOSS("ioss"), + + @SerializedName("oss_non_union") + OSS_NON_UNION("oss_non_union"), + + @SerializedName("oss_union") + OSS_UNION("oss_union"), + + @SerializedName("standard") + STANDARD("standard"); @Getter(onMethod_ = {@Override}) private final String value; @@ -9746,7 +12193,7 @@ public enum Type implements ApiRequestParams.EnumParam { @Getter @EqualsAndHashCode(callSuper = false) - public static class Nl { + public static class No { /** * Map of extra parameters for custom features not available in this client library. The * content in this map is not serialized under this field's {@code @SerializedName} value. @@ -9760,11 +12207,11 @@ public static class Nl { @SerializedName("standard") Standard standard; - /** Required. Type of registration to be created in an EU country. */ + /** Required. Type of registration to be created in {@code country}. */ @SerializedName("type") Type type; - private Nl(Map extraParams, Standard standard, Type type) { + private No(Map extraParams, Standard standard, Type type) { this.extraParams = extraParams; this.standard = standard; this.type = type; @@ -9782,15 +12229,15 @@ public static class Builder { private Type type; /** Finalize and obtain parameter instance from this builder. */ - public RegistrationCreateParams.CountryOptions.Nl build() { - return new RegistrationCreateParams.CountryOptions.Nl( + public RegistrationCreateParams.CountryOptions.No build() { + return new RegistrationCreateParams.CountryOptions.No( this.extraParams, this.standard, 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 RegistrationCreateParams.CountryOptions.Nl#extraParams} for the field + * map. See {@link RegistrationCreateParams.CountryOptions.No#extraParams} for the field * documentation. */ public Builder putExtraParam(String key, Object value) { @@ -9804,7 +12251,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 RegistrationCreateParams.CountryOptions.Nl#extraParams} for the field + * map. See {@link RegistrationCreateParams.CountryOptions.No#extraParams} for the field * documentation. */ public Builder putAllExtraParam(Map map) { @@ -9816,13 +12263,13 @@ public Builder putAllExtraParam(Map map) { } /** Options for the standard registration. */ - public Builder setStandard(RegistrationCreateParams.CountryOptions.Nl.Standard standard) { + public Builder setStandard(RegistrationCreateParams.CountryOptions.No.Standard standard) { this.standard = standard; return this; } - /** Required. Type of registration to be created in an EU country. */ - public Builder setType(RegistrationCreateParams.CountryOptions.Nl.Type type) { + /** Required. Type of registration to be created in {@code country}. */ + public Builder setType(RegistrationCreateParams.CountryOptions.No.Type type) { this.type = type; return this; } @@ -9841,9 +12288,7 @@ public static class Standard { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** - * Required. Place of supply scheme used in an EU standard registration. - */ + /** Place of supply scheme used in an standard registration. */ @SerializedName("place_of_supply_scheme") PlaceOfSupplyScheme placeOfSupplyScheme; @@ -9862,15 +12307,15 @@ public static class Builder { private PlaceOfSupplyScheme placeOfSupplyScheme; /** Finalize and obtain parameter instance from this builder. */ - public RegistrationCreateParams.CountryOptions.Nl.Standard build() { - return new RegistrationCreateParams.CountryOptions.Nl.Standard( + public RegistrationCreateParams.CountryOptions.No.Standard build() { + return new RegistrationCreateParams.CountryOptions.No.Standard( this.extraParams, this.placeOfSupplyScheme); } /** * Add a key/value pair to `extraParams` map. A map is initialized for the first * `put/putAll` call, and subsequent calls add additional key/value pairs to the original - * map. See {@link RegistrationCreateParams.CountryOptions.Nl.Standard#extraParams} for + * map. See {@link RegistrationCreateParams.CountryOptions.No.Standard#extraParams} for * the field documentation. */ public Builder putExtraParam(String key, Object value) { @@ -9884,7 +12329,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 RegistrationCreateParams.CountryOptions.Nl.Standard#extraParams} for + * map. See {@link RegistrationCreateParams.CountryOptions.No.Standard#extraParams} for * the field documentation. */ public Builder putAllExtraParam(Map map) { @@ -9895,11 +12340,9 @@ public Builder putAllExtraParam(Map map) { return this; } - /** - * Required. Place of supply scheme used in an EU standard registration. - */ + /** Place of supply scheme used in an standard registration. */ public Builder setPlaceOfSupplyScheme( - RegistrationCreateParams.CountryOptions.Nl.Standard.PlaceOfSupplyScheme + RegistrationCreateParams.CountryOptions.No.Standard.PlaceOfSupplyScheme placeOfSupplyScheme) { this.placeOfSupplyScheme = placeOfSupplyScheme; return this; @@ -9907,8 +12350,8 @@ public Builder setPlaceOfSupplyScheme( } public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { - @SerializedName("small_seller") - SMALL_SELLER("small_seller"), + @SerializedName("inbound_goods") + INBOUND_GOODS("inbound_goods"), @SerializedName("standard") STANDARD("standard"); @@ -9923,15 +12366,6 @@ public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { } public enum Type implements ApiRequestParams.EnumParam { - @SerializedName("ioss") - IOSS("ioss"), - - @SerializedName("oss_non_union") - OSS_NON_UNION("oss_non_union"), - - @SerializedName("oss_union") - OSS_UNION("oss_union"), - @SerializedName("standard") STANDARD("standard"); @@ -9946,7 +12380,7 @@ public enum Type implements ApiRequestParams.EnumParam { @Getter @EqualsAndHashCode(callSuper = false) - public static class No { + public static class Np { /** * Map of extra parameters for custom features not available in this client library. The * content in this map is not serialized under this field's {@code @SerializedName} value. @@ -9960,7 +12394,7 @@ public static class No { @SerializedName("type") Type type; - private No(Map extraParams, Type type) { + private Np(Map extraParams, Type type) { this.extraParams = extraParams; this.type = type; } @@ -9975,14 +12409,14 @@ public static class Builder { private Type type; /** Finalize and obtain parameter instance from this builder. */ - public RegistrationCreateParams.CountryOptions.No build() { - return new RegistrationCreateParams.CountryOptions.No(this.extraParams, this.type); + public RegistrationCreateParams.CountryOptions.Np build() { + return new RegistrationCreateParams.CountryOptions.Np(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 RegistrationCreateParams.CountryOptions.No#extraParams} for the field + * map. See {@link RegistrationCreateParams.CountryOptions.Np#extraParams} for the field * documentation. */ public Builder putExtraParam(String key, Object value) { @@ -9996,7 +12430,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 RegistrationCreateParams.CountryOptions.No#extraParams} for the field + * map. See {@link RegistrationCreateParams.CountryOptions.Np#extraParams} for the field * documentation. */ public Builder putAllExtraParam(Map map) { @@ -10008,15 +12442,15 @@ public Builder putAllExtraParam(Map map) { } /** Required. Type of registration to be created in {@code country}. */ - public Builder setType(RegistrationCreateParams.CountryOptions.No.Type type) { + public Builder setType(RegistrationCreateParams.CountryOptions.Np.Type type) { this.type = type; return this; } } public enum Type implements ApiRequestParams.EnumParam { - @SerializedName("standard") - STANDARD("standard"); + @SerializedName("simplified") + SIMPLIFIED("simplified"); @Getter(onMethod_ = {@Override}) private final String value; @@ -10029,7 +12463,7 @@ public enum Type implements ApiRequestParams.EnumParam { @Getter @EqualsAndHashCode(callSuper = false) - public static class Np { + public static class Nz { /** * Map of extra parameters for custom features not available in this client library. The * content in this map is not serialized under this field's {@code @SerializedName} value. @@ -10039,12 +12473,17 @@ public static class Np { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Options for the standard registration. */ + @SerializedName("standard") + Standard standard; + /** Required. Type of registration to be created in {@code country}. */ @SerializedName("type") Type type; - private Np(Map extraParams, Type type) { + private Nz(Map extraParams, Standard standard, Type type) { this.extraParams = extraParams; + this.standard = standard; this.type = type; } @@ -10055,17 +12494,20 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Standard standard; + private Type type; /** Finalize and obtain parameter instance from this builder. */ - public RegistrationCreateParams.CountryOptions.Np build() { - return new RegistrationCreateParams.CountryOptions.Np(this.extraParams, this.type); + public RegistrationCreateParams.CountryOptions.Nz build() { + return new RegistrationCreateParams.CountryOptions.Nz( + this.extraParams, this.standard, 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 RegistrationCreateParams.CountryOptions.Np#extraParams} for the field + * map. See {@link RegistrationCreateParams.CountryOptions.Nz#extraParams} for the field * documentation. */ public Builder putExtraParam(String key, Object value) { @@ -10079,7 +12521,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 RegistrationCreateParams.CountryOptions.Np#extraParams} for the field + * map. See {@link RegistrationCreateParams.CountryOptions.Nz#extraParams} for the field * documentation. */ public Builder putAllExtraParam(Map map) { @@ -10090,16 +12532,112 @@ public Builder putAllExtraParam(Map map) { return this; } + /** Options for the standard registration. */ + public Builder setStandard(RegistrationCreateParams.CountryOptions.Nz.Standard standard) { + this.standard = standard; + return this; + } + /** Required. Type of registration to be created in {@code country}. */ - public Builder setType(RegistrationCreateParams.CountryOptions.Np.Type type) { + public Builder setType(RegistrationCreateParams.CountryOptions.Nz.Type type) { this.type = type; return this; } } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Standard { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-level field + * (serialized) name in this param object. Effectively, this map is flattened to its parent + * instance. + */ + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** Place of supply scheme used in an standard registration. */ + @SerializedName("place_of_supply_scheme") + PlaceOfSupplyScheme placeOfSupplyScheme; + + private Standard(Map extraParams, PlaceOfSupplyScheme placeOfSupplyScheme) { + this.extraParams = extraParams; + this.placeOfSupplyScheme = placeOfSupplyScheme; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PlaceOfSupplyScheme placeOfSupplyScheme; + + /** Finalize and obtain parameter instance from this builder. */ + public RegistrationCreateParams.CountryOptions.Nz.Standard build() { + return new RegistrationCreateParams.CountryOptions.Nz.Standard( + this.extraParams, this.placeOfSupplyScheme); + } + + /** + * Add a key/value pair to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link RegistrationCreateParams.CountryOptions.Nz.Standard#extraParams} for + * the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link RegistrationCreateParams.CountryOptions.Nz.Standard#extraParams} for + * the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Place of supply scheme used in an standard registration. */ + public Builder setPlaceOfSupplyScheme( + RegistrationCreateParams.CountryOptions.Nz.Standard.PlaceOfSupplyScheme + placeOfSupplyScheme) { + this.placeOfSupplyScheme = placeOfSupplyScheme; + return this; + } + } + + public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { + @SerializedName("inbound_goods") + INBOUND_GOODS("inbound_goods"), + + @SerializedName("standard") + STANDARD("standard"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + PlaceOfSupplyScheme(String value) { + this.value = value; + } + } + } + public enum Type implements ApiRequestParams.EnumParam { - @SerializedName("simplified") - SIMPLIFIED("simplified"); + @SerializedName("standard") + STANDARD("standard"); @Getter(onMethod_ = {@Override}) private final String value; @@ -10112,7 +12650,7 @@ public enum Type implements ApiRequestParams.EnumParam { @Getter @EqualsAndHashCode(callSuper = false) - public static class Nz { + public static class Om { /** * Map of extra parameters for custom features not available in this client library. The * content in this map is not serialized under this field's {@code @SerializedName} value. @@ -10122,12 +12660,17 @@ public static class Nz { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Options for the standard registration. */ + @SerializedName("standard") + Standard standard; + /** Required. Type of registration to be created in {@code country}. */ @SerializedName("type") Type type; - private Nz(Map extraParams, Type type) { + private Om(Map extraParams, Standard standard, Type type) { this.extraParams = extraParams; + this.standard = standard; this.type = type; } @@ -10138,17 +12681,20 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Standard standard; + private Type type; /** Finalize and obtain parameter instance from this builder. */ - public RegistrationCreateParams.CountryOptions.Nz build() { - return new RegistrationCreateParams.CountryOptions.Nz(this.extraParams, this.type); + public RegistrationCreateParams.CountryOptions.Om build() { + return new RegistrationCreateParams.CountryOptions.Om( + this.extraParams, this.standard, 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 RegistrationCreateParams.CountryOptions.Nz#extraParams} for the field + * map. See {@link RegistrationCreateParams.CountryOptions.Om#extraParams} for the field * documentation. */ public Builder putExtraParam(String key, Object value) { @@ -10162,7 +12708,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 RegistrationCreateParams.CountryOptions.Nz#extraParams} for the field + * map. See {@link RegistrationCreateParams.CountryOptions.Om#extraParams} for the field * documentation. */ public Builder putAllExtraParam(Map map) { @@ -10173,93 +12719,106 @@ public Builder putAllExtraParam(Map map) { return this; } + /** Options for the standard registration. */ + public Builder setStandard(RegistrationCreateParams.CountryOptions.Om.Standard standard) { + this.standard = standard; + return this; + } + /** Required. Type of registration to be created in {@code country}. */ - public Builder setType(RegistrationCreateParams.CountryOptions.Nz.Type type) { + public Builder setType(RegistrationCreateParams.CountryOptions.Om.Type type) { this.type = type; return this; } } - public enum Type implements ApiRequestParams.EnumParam { - @SerializedName("standard") - STANDARD("standard"); + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Standard { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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; + /** Place of supply scheme used in an standard registration. */ + @SerializedName("place_of_supply_scheme") + PlaceOfSupplyScheme placeOfSupplyScheme; - Type(String value) { - this.value = value; + private Standard(Map extraParams, PlaceOfSupplyScheme placeOfSupplyScheme) { + this.extraParams = extraParams; + this.placeOfSupplyScheme = placeOfSupplyScheme; } - } - } - - @Getter - @EqualsAndHashCode(callSuper = false) - public static class Om { - /** - * Map of extra parameters for custom features not available in this client library. The - * content in this map is not serialized under this field's {@code @SerializedName} value. - * Instead, each key/value pair is serialized as if the key is a root-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. Type of registration to be created in {@code country}. */ - @SerializedName("type") - Type type; - private Om(Map extraParams, Type type) { - this.extraParams = extraParams; - this.type = type; - } + 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 PlaceOfSupplyScheme placeOfSupplyScheme; - private Type type; + /** Finalize and obtain parameter instance from this builder. */ + public RegistrationCreateParams.CountryOptions.Om.Standard build() { + return new RegistrationCreateParams.CountryOptions.Om.Standard( + this.extraParams, this.placeOfSupplyScheme); + } - /** Finalize and obtain parameter instance from this builder. */ - public RegistrationCreateParams.CountryOptions.Om build() { - return new RegistrationCreateParams.CountryOptions.Om(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 RegistrationCreateParams.CountryOptions.Om.Standard#extraParams} for + * the field 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 RegistrationCreateParams.CountryOptions.Om#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 RegistrationCreateParams.CountryOptions.Om.Standard#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.put(key, value); - return this; - } - /** - * Add all map key/value pairs to `extraParams` map. A map is initialized for the first - * `put/putAll` call, and subsequent calls add additional key/value pairs to the original - * map. See {@link RegistrationCreateParams.CountryOptions.Om#extraParams} for the field - * documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** Place of supply scheme used in an standard registration. */ + public Builder setPlaceOfSupplyScheme( + RegistrationCreateParams.CountryOptions.Om.Standard.PlaceOfSupplyScheme + placeOfSupplyScheme) { + this.placeOfSupplyScheme = placeOfSupplyScheme; + return this; } - this.extraParams.putAll(map); - return this; } - /** Required. Type of registration to be created in {@code country}. */ - public Builder setType(RegistrationCreateParams.CountryOptions.Om.Type type) { - this.type = type; - return this; + public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { + @SerializedName("inbound_goods") + INBOUND_GOODS("inbound_goods"), + + @SerializedName("standard") + STANDARD("standard"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + PlaceOfSupplyScheme(String value) { + this.value = value; + } } } @@ -10605,6 +13164,9 @@ public Builder setPlaceOfSupplyScheme( } public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { + @SerializedName("inbound_goods") + INBOUND_GOODS("inbound_goods"), + @SerializedName("small_seller") SMALL_SELLER("small_seller"), @@ -10805,6 +13367,9 @@ public Builder setPlaceOfSupplyScheme( } public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { + @SerializedName("inbound_goods") + INBOUND_GOODS("inbound_goods"), + @SerializedName("small_seller") SMALL_SELLER("small_seller"), @@ -11005,6 +13570,9 @@ public Builder setPlaceOfSupplyScheme( } public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { + @SerializedName("inbound_goods") + INBOUND_GOODS("inbound_goods"), + @SerializedName("small_seller") SMALL_SELLER("small_seller"), @@ -11054,12 +13622,17 @@ public static class Rs { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Options for the standard registration. */ + @SerializedName("standard") + Standard standard; + /** Required. Type of registration to be created in {@code country}. */ @SerializedName("type") Type type; - private Rs(Map extraParams, Type type) { + private Rs(Map extraParams, Standard standard, Type type) { this.extraParams = extraParams; + this.standard = standard; this.type = type; } @@ -11070,11 +13643,14 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Standard standard; + private Type type; /** Finalize and obtain parameter instance from this builder. */ public RegistrationCreateParams.CountryOptions.Rs build() { - return new RegistrationCreateParams.CountryOptions.Rs(this.extraParams, this.type); + return new RegistrationCreateParams.CountryOptions.Rs( + this.extraParams, this.standard, this.type); } /** @@ -11105,6 +13681,12 @@ public Builder putAllExtraParam(Map map) { return this; } + /** Options for the standard registration. */ + public Builder setStandard(RegistrationCreateParams.CountryOptions.Rs.Standard standard) { + this.standard = standard; + return this; + } + /** Required. Type of registration to be created in {@code country}. */ public Builder setType(RegistrationCreateParams.CountryOptions.Rs.Type type) { this.type = type; @@ -11112,6 +13694,96 @@ public Builder setType(RegistrationCreateParams.CountryOptions.Rs.Type type) { } } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Standard { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-level field + * (serialized) name in this param object. Effectively, this map is flattened to its parent + * instance. + */ + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** Place of supply scheme used in an standard registration. */ + @SerializedName("place_of_supply_scheme") + PlaceOfSupplyScheme placeOfSupplyScheme; + + private Standard(Map extraParams, PlaceOfSupplyScheme placeOfSupplyScheme) { + this.extraParams = extraParams; + this.placeOfSupplyScheme = placeOfSupplyScheme; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PlaceOfSupplyScheme placeOfSupplyScheme; + + /** Finalize and obtain parameter instance from this builder. */ + public RegistrationCreateParams.CountryOptions.Rs.Standard build() { + return new RegistrationCreateParams.CountryOptions.Rs.Standard( + this.extraParams, this.placeOfSupplyScheme); + } + + /** + * Add a key/value pair to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link RegistrationCreateParams.CountryOptions.Rs.Standard#extraParams} for + * the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link RegistrationCreateParams.CountryOptions.Rs.Standard#extraParams} for + * the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Place of supply scheme used in an standard registration. */ + public Builder setPlaceOfSupplyScheme( + RegistrationCreateParams.CountryOptions.Rs.Standard.PlaceOfSupplyScheme + placeOfSupplyScheme) { + this.placeOfSupplyScheme = placeOfSupplyScheme; + return this; + } + } + + public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { + @SerializedName("inbound_goods") + INBOUND_GOODS("inbound_goods"), + + @SerializedName("standard") + STANDARD("standard"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + PlaceOfSupplyScheme(String value) { + this.value = value; + } + } + } + public enum Type implements ApiRequestParams.EnumParam { @SerializedName("standard") STANDARD("standard"); @@ -11454,6 +14126,9 @@ public Builder setPlaceOfSupplyScheme( } public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { + @SerializedName("inbound_goods") + INBOUND_GOODS("inbound_goods"), + @SerializedName("small_seller") SMALL_SELLER("small_seller"), @@ -11503,12 +14178,17 @@ public static class Sg { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Options for the standard registration. */ + @SerializedName("standard") + Standard standard; + /** Required. Type of registration to be created in {@code country}. */ @SerializedName("type") Type type; - private Sg(Map extraParams, Type type) { + private Sg(Map extraParams, Standard standard, Type type) { this.extraParams = extraParams; + this.standard = standard; this.type = type; } @@ -11519,45 +14199,144 @@ public static Builder builder() { public static class Builder { private Map extraParams; - private Type type; + private Standard standard; + + private Type type; + + /** Finalize and obtain parameter instance from this builder. */ + public RegistrationCreateParams.CountryOptions.Sg build() { + return new RegistrationCreateParams.CountryOptions.Sg( + this.extraParams, this.standard, 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 RegistrationCreateParams.CountryOptions.Sg#extraParams} for the field + * documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link RegistrationCreateParams.CountryOptions.Sg#extraParams} for the field + * documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Options for the standard registration. */ + public Builder setStandard(RegistrationCreateParams.CountryOptions.Sg.Standard standard) { + this.standard = standard; + return this; + } + + /** Required. Type of registration to be created in {@code country}. */ + public Builder setType(RegistrationCreateParams.CountryOptions.Sg.Type type) { + this.type = type; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Standard { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-level field + * (serialized) name in this param object. Effectively, this map is flattened to its parent + * instance. + */ + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** Place of supply scheme used in an standard registration. */ + @SerializedName("place_of_supply_scheme") + PlaceOfSupplyScheme placeOfSupplyScheme; + + private Standard(Map extraParams, PlaceOfSupplyScheme placeOfSupplyScheme) { + this.extraParams = extraParams; + this.placeOfSupplyScheme = placeOfSupplyScheme; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PlaceOfSupplyScheme placeOfSupplyScheme; - /** Finalize and obtain parameter instance from this builder. */ - public RegistrationCreateParams.CountryOptions.Sg build() { - return new RegistrationCreateParams.CountryOptions.Sg(this.extraParams, this.type); - } + /** Finalize and obtain parameter instance from this builder. */ + public RegistrationCreateParams.CountryOptions.Sg.Standard build() { + return new RegistrationCreateParams.CountryOptions.Sg.Standard( + this.extraParams, this.placeOfSupplyScheme); + } - /** - * Add a key/value pair to `extraParams` map. A map is initialized for the first - * `put/putAll` call, and subsequent calls add additional key/value pairs to the original - * map. See {@link RegistrationCreateParams.CountryOptions.Sg#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 RegistrationCreateParams.CountryOptions.Sg.Standard#extraParams} for + * the 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 RegistrationCreateParams.CountryOptions.Sg#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 RegistrationCreateParams.CountryOptions.Sg.Standard#extraParams} for + * the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Place of supply scheme used in an standard registration. */ + public Builder setPlaceOfSupplyScheme( + RegistrationCreateParams.CountryOptions.Sg.Standard.PlaceOfSupplyScheme + placeOfSupplyScheme) { + this.placeOfSupplyScheme = placeOfSupplyScheme; + return this; } - this.extraParams.putAll(map); - return this; } - /** Required. Type of registration to be created in {@code country}. */ - public Builder setType(RegistrationCreateParams.CountryOptions.Sg.Type type) { - this.type = type; - return this; + public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { + @SerializedName("inbound_goods") + INBOUND_GOODS("inbound_goods"), + + @SerializedName("standard") + STANDARD("standard"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + PlaceOfSupplyScheme(String value) { + this.value = value; + } } } @@ -11737,6 +14516,9 @@ public Builder setPlaceOfSupplyScheme( } public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { + @SerializedName("inbound_goods") + INBOUND_GOODS("inbound_goods"), + @SerializedName("small_seller") SMALL_SELLER("small_seller"), @@ -11937,6 +14719,9 @@ public Builder setPlaceOfSupplyScheme( } public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { + @SerializedName("inbound_goods") + INBOUND_GOODS("inbound_goods"), + @SerializedName("small_seller") SMALL_SELLER("small_seller"), @@ -12069,12 +14854,17 @@ public static class Sr { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Options for the standard registration. */ + @SerializedName("standard") + Standard standard; + /** Required. Type of registration to be created in {@code country}. */ @SerializedName("type") Type type; - private Sr(Map extraParams, Type type) { + private Sr(Map extraParams, Standard standard, Type type) { this.extraParams = extraParams; + this.standard = standard; this.type = type; } @@ -12085,11 +14875,14 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Standard standard; + private Type type; /** Finalize and obtain parameter instance from this builder. */ public RegistrationCreateParams.CountryOptions.Sr build() { - return new RegistrationCreateParams.CountryOptions.Sr(this.extraParams, this.type); + return new RegistrationCreateParams.CountryOptions.Sr( + this.extraParams, this.standard, this.type); } /** @@ -12120,6 +14913,12 @@ public Builder putAllExtraParam(Map map) { return this; } + /** Options for the standard registration. */ + public Builder setStandard(RegistrationCreateParams.CountryOptions.Sr.Standard standard) { + this.standard = standard; + return this; + } + /** Required. Type of registration to be created in {@code country}. */ public Builder setType(RegistrationCreateParams.CountryOptions.Sr.Type type) { this.type = type; @@ -12127,6 +14926,96 @@ public Builder setType(RegistrationCreateParams.CountryOptions.Sr.Type type) { } } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Standard { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-level field + * (serialized) name in this param object. Effectively, this map is flattened to its parent + * instance. + */ + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** Place of supply scheme used in an standard registration. */ + @SerializedName("place_of_supply_scheme") + PlaceOfSupplyScheme placeOfSupplyScheme; + + private Standard(Map extraParams, PlaceOfSupplyScheme placeOfSupplyScheme) { + this.extraParams = extraParams; + this.placeOfSupplyScheme = placeOfSupplyScheme; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PlaceOfSupplyScheme placeOfSupplyScheme; + + /** Finalize and obtain parameter instance from this builder. */ + public RegistrationCreateParams.CountryOptions.Sr.Standard build() { + return new RegistrationCreateParams.CountryOptions.Sr.Standard( + this.extraParams, this.placeOfSupplyScheme); + } + + /** + * Add a key/value pair to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link RegistrationCreateParams.CountryOptions.Sr.Standard#extraParams} for + * the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link RegistrationCreateParams.CountryOptions.Sr.Standard#extraParams} for + * the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Place of supply scheme used in an standard registration. */ + public Builder setPlaceOfSupplyScheme( + RegistrationCreateParams.CountryOptions.Sr.Standard.PlaceOfSupplyScheme + placeOfSupplyScheme) { + this.placeOfSupplyScheme = placeOfSupplyScheme; + return this; + } + } + + public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { + @SerializedName("inbound_goods") + INBOUND_GOODS("inbound_goods"), + + @SerializedName("standard") + STANDARD("standard"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + PlaceOfSupplyScheme(String value) { + this.value = value; + } + } + } + public enum Type implements ApiRequestParams.EnumParam { @SerializedName("standard") STANDARD("standard"); @@ -13208,12 +16097,17 @@ public static class Uy { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Options for the standard registration. */ + @SerializedName("standard") + Standard standard; + /** Required. Type of registration to be created in {@code country}. */ @SerializedName("type") Type type; - private Uy(Map extraParams, Type type) { + private Uy(Map extraParams, Standard standard, Type type) { this.extraParams = extraParams; + this.standard = standard; this.type = type; } @@ -13224,45 +16118,144 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Standard standard; + private Type type; - /** Finalize and obtain parameter instance from this builder. */ - public RegistrationCreateParams.CountryOptions.Uy build() { - return new RegistrationCreateParams.CountryOptions.Uy(this.extraParams, this.type); - } + /** Finalize and obtain parameter instance from this builder. */ + public RegistrationCreateParams.CountryOptions.Uy build() { + return new RegistrationCreateParams.CountryOptions.Uy( + this.extraParams, this.standard, 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 RegistrationCreateParams.CountryOptions.Uy#extraParams} for the field + * documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link RegistrationCreateParams.CountryOptions.Uy#extraParams} for the field + * documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Options for the standard registration. */ + public Builder setStandard(RegistrationCreateParams.CountryOptions.Uy.Standard standard) { + this.standard = standard; + return this; + } + + /** Required. Type of registration to be created in {@code country}. */ + public Builder setType(RegistrationCreateParams.CountryOptions.Uy.Type type) { + this.type = type; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Standard { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-level field + * (serialized) name in this param object. Effectively, this map is flattened to its parent + * instance. + */ + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** Place of supply scheme used in an standard registration. */ + @SerializedName("place_of_supply_scheme") + PlaceOfSupplyScheme placeOfSupplyScheme; + + private Standard(Map extraParams, PlaceOfSupplyScheme placeOfSupplyScheme) { + this.extraParams = extraParams; + this.placeOfSupplyScheme = placeOfSupplyScheme; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PlaceOfSupplyScheme placeOfSupplyScheme; + + /** Finalize and obtain parameter instance from this builder. */ + public RegistrationCreateParams.CountryOptions.Uy.Standard build() { + return new RegistrationCreateParams.CountryOptions.Uy.Standard( + this.extraParams, this.placeOfSupplyScheme); + } + + /** + * Add a key/value pair to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link RegistrationCreateParams.CountryOptions.Uy.Standard#extraParams} for + * the field 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 RegistrationCreateParams.CountryOptions.Uy#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 RegistrationCreateParams.CountryOptions.Uy.Standard#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.put(key, value); - return this; - } - /** - * Add all map key/value pairs to `extraParams` map. A map is initialized for the first - * `put/putAll` call, and subsequent calls add additional key/value pairs to the original - * map. See {@link RegistrationCreateParams.CountryOptions.Uy#extraParams} for the field - * documentation. - */ - public Builder putAllExtraParam(Map map) { - if (this.extraParams == null) { - this.extraParams = new HashMap<>(); + /** Place of supply scheme used in an standard registration. */ + public Builder setPlaceOfSupplyScheme( + RegistrationCreateParams.CountryOptions.Uy.Standard.PlaceOfSupplyScheme + placeOfSupplyScheme) { + this.placeOfSupplyScheme = placeOfSupplyScheme; + return this; } - this.extraParams.putAll(map); - return this; } - /** Required. Type of registration to be created in {@code country}. */ - public Builder setType(RegistrationCreateParams.CountryOptions.Uy.Type type) { - this.type = type; - return this; + public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { + @SerializedName("inbound_goods") + INBOUND_GOODS("inbound_goods"), + + @SerializedName("standard") + STANDARD("standard"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + PlaceOfSupplyScheme(String value) { + this.value = value; + } } } @@ -13457,12 +16450,17 @@ public static class Za { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Options for the standard registration. */ + @SerializedName("standard") + Standard standard; + /** Required. Type of registration to be created in {@code country}. */ @SerializedName("type") Type type; - private Za(Map extraParams, Type type) { + private Za(Map extraParams, Standard standard, Type type) { this.extraParams = extraParams; + this.standard = standard; this.type = type; } @@ -13473,11 +16471,14 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Standard standard; + private Type type; /** Finalize and obtain parameter instance from this builder. */ public RegistrationCreateParams.CountryOptions.Za build() { - return new RegistrationCreateParams.CountryOptions.Za(this.extraParams, this.type); + return new RegistrationCreateParams.CountryOptions.Za( + this.extraParams, this.standard, this.type); } /** @@ -13508,6 +16509,12 @@ public Builder putAllExtraParam(Map map) { return this; } + /** Options for the standard registration. */ + public Builder setStandard(RegistrationCreateParams.CountryOptions.Za.Standard standard) { + this.standard = standard; + return this; + } + /** Required. Type of registration to be created in {@code country}. */ public Builder setType(RegistrationCreateParams.CountryOptions.Za.Type type) { this.type = type; @@ -13515,6 +16522,96 @@ public Builder setType(RegistrationCreateParams.CountryOptions.Za.Type type) { } } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Standard { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-level field + * (serialized) name in this param object. Effectively, this map is flattened to its parent + * instance. + */ + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** Place of supply scheme used in an standard registration. */ + @SerializedName("place_of_supply_scheme") + PlaceOfSupplyScheme placeOfSupplyScheme; + + private Standard(Map extraParams, PlaceOfSupplyScheme placeOfSupplyScheme) { + this.extraParams = extraParams; + this.placeOfSupplyScheme = placeOfSupplyScheme; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PlaceOfSupplyScheme placeOfSupplyScheme; + + /** Finalize and obtain parameter instance from this builder. */ + public RegistrationCreateParams.CountryOptions.Za.Standard build() { + return new RegistrationCreateParams.CountryOptions.Za.Standard( + this.extraParams, this.placeOfSupplyScheme); + } + + /** + * Add a key/value pair to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link RegistrationCreateParams.CountryOptions.Za.Standard#extraParams} for + * the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link RegistrationCreateParams.CountryOptions.Za.Standard#extraParams} for + * the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Place of supply scheme used in an standard registration. */ + public Builder setPlaceOfSupplyScheme( + RegistrationCreateParams.CountryOptions.Za.Standard.PlaceOfSupplyScheme + placeOfSupplyScheme) { + this.placeOfSupplyScheme = placeOfSupplyScheme; + return this; + } + } + + public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { + @SerializedName("inbound_goods") + INBOUND_GOODS("inbound_goods"), + + @SerializedName("standard") + STANDARD("standard"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + PlaceOfSupplyScheme(String value) { + this.value = value; + } + } + } + public enum Type implements ApiRequestParams.EnumParam { @SerializedName("standard") STANDARD("standard"); @@ -13623,12 +16720,17 @@ public static class Zw { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; + /** Options for the standard registration. */ + @SerializedName("standard") + Standard standard; + /** Required. Type of registration to be created in {@code country}. */ @SerializedName("type") Type type; - private Zw(Map extraParams, Type type) { + private Zw(Map extraParams, Standard standard, Type type) { this.extraParams = extraParams; + this.standard = standard; this.type = type; } @@ -13639,11 +16741,14 @@ public static Builder builder() { public static class Builder { private Map extraParams; + private Standard standard; + private Type type; /** Finalize and obtain parameter instance from this builder. */ public RegistrationCreateParams.CountryOptions.Zw build() { - return new RegistrationCreateParams.CountryOptions.Zw(this.extraParams, this.type); + return new RegistrationCreateParams.CountryOptions.Zw( + this.extraParams, this.standard, this.type); } /** @@ -13674,6 +16779,12 @@ public Builder putAllExtraParam(Map map) { return this; } + /** Options for the standard registration. */ + public Builder setStandard(RegistrationCreateParams.CountryOptions.Zw.Standard standard) { + this.standard = standard; + return this; + } + /** Required. Type of registration to be created in {@code country}. */ public Builder setType(RegistrationCreateParams.CountryOptions.Zw.Type type) { this.type = type; @@ -13681,6 +16792,96 @@ public Builder setType(RegistrationCreateParams.CountryOptions.Zw.Type type) { } } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Standard { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-level field + * (serialized) name in this param object. Effectively, this map is flattened to its parent + * instance. + */ + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** Place of supply scheme used in an standard registration. */ + @SerializedName("place_of_supply_scheme") + PlaceOfSupplyScheme placeOfSupplyScheme; + + private Standard(Map extraParams, PlaceOfSupplyScheme placeOfSupplyScheme) { + this.extraParams = extraParams; + this.placeOfSupplyScheme = placeOfSupplyScheme; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private PlaceOfSupplyScheme placeOfSupplyScheme; + + /** Finalize and obtain parameter instance from this builder. */ + public RegistrationCreateParams.CountryOptions.Zw.Standard build() { + return new RegistrationCreateParams.CountryOptions.Zw.Standard( + this.extraParams, this.placeOfSupplyScheme); + } + + /** + * Add a key/value pair to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link RegistrationCreateParams.CountryOptions.Zw.Standard#extraParams} for + * the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link RegistrationCreateParams.CountryOptions.Zw.Standard#extraParams} for + * the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** Place of supply scheme used in an standard registration. */ + public Builder setPlaceOfSupplyScheme( + RegistrationCreateParams.CountryOptions.Zw.Standard.PlaceOfSupplyScheme + placeOfSupplyScheme) { + this.placeOfSupplyScheme = placeOfSupplyScheme; + return this; + } + } + + public enum PlaceOfSupplyScheme implements ApiRequestParams.EnumParam { + @SerializedName("inbound_goods") + INBOUND_GOODS("inbound_goods"), + + @SerializedName("standard") + STANDARD("standard"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + PlaceOfSupplyScheme(String value) { + this.value = value; + } + } + } + public enum Type implements ApiRequestParams.EnumParam { @SerializedName("standard") STANDARD("standard"); diff --git a/src/main/java/com/stripe/param/terminal/ConfigurationCreateParams.java b/src/main/java/com/stripe/param/terminal/ConfigurationCreateParams.java index cd5ac064d68..4b96784ac91 100644 --- a/src/main/java/com/stripe/param/terminal/ConfigurationCreateParams.java +++ b/src/main/java/com/stripe/param/terminal/ConfigurationCreateParams.java @@ -565,10 +565,18 @@ public Builder setSplashscreen(EmptyParam splashscreen) { @Getter @EqualsAndHashCode(callSuper = false) public static class Tipping { + /** Tipping configuration for AED. */ + @SerializedName("aed") + Aed aed; + /** Tipping configuration for AUD. */ @SerializedName("aud") Aud aud; + /** Tipping configuration for BGN. */ + @SerializedName("bgn") + Bgn bgn; + /** Tipping configuration for CAD. */ @SerializedName("cad") Cad cad; @@ -606,6 +614,10 @@ public static class Tipping { @SerializedName("hkd") Hkd hkd; + /** Tipping configuration for HUF. */ + @SerializedName("huf") + Huf huf; + /** Tipping configuration for JPY. */ @SerializedName("jpy") Jpy jpy; @@ -626,6 +638,10 @@ public static class Tipping { @SerializedName("pln") Pln pln; + /** Tipping configuration for RON. */ + @SerializedName("ron") + Ron ron; + /** Tipping configuration for SEK. */ @SerializedName("sek") Sek sek; @@ -639,7 +655,9 @@ public static class Tipping { Usd usd; private Tipping( + Aed aed, Aud aud, + Bgn bgn, Cad cad, Chf chf, Czk czk, @@ -648,15 +666,19 @@ private Tipping( Map extraParams, Gbp gbp, Hkd hkd, + Huf huf, Jpy jpy, Myr myr, Nok nok, Nzd nzd, Pln pln, + Ron ron, Sek sek, Sgd sgd, Usd usd) { + this.aed = aed; this.aud = aud; + this.bgn = bgn; this.cad = cad; this.chf = chf; this.czk = czk; @@ -665,11 +687,13 @@ private Tipping( this.extraParams = extraParams; this.gbp = gbp; this.hkd = hkd; + this.huf = huf; this.jpy = jpy; this.myr = myr; this.nok = nok; this.nzd = nzd; this.pln = pln; + this.ron = ron; this.sek = sek; this.sgd = sgd; this.usd = usd; @@ -680,8 +704,12 @@ public static Builder builder() { } public static class Builder { + private Aed aed; + private Aud aud; + private Bgn bgn; + private Cad cad; private Chf chf; @@ -698,6 +726,8 @@ public static class Builder { private Hkd hkd; + private Huf huf; + private Jpy jpy; private Myr myr; @@ -708,6 +738,8 @@ public static class Builder { private Pln pln; + private Ron ron; + private Sek sek; private Sgd sgd; @@ -717,7 +749,9 @@ public static class Builder { /** Finalize and obtain parameter instance from this builder. */ public ConfigurationCreateParams.Tipping build() { return new ConfigurationCreateParams.Tipping( + this.aed, this.aud, + this.bgn, this.cad, this.chf, this.czk, @@ -726,22 +760,36 @@ public ConfigurationCreateParams.Tipping build() { this.extraParams, this.gbp, this.hkd, + this.huf, this.jpy, this.myr, this.nok, this.nzd, this.pln, + this.ron, this.sek, this.sgd, this.usd); } + /** Tipping configuration for AED. */ + public Builder setAed(ConfigurationCreateParams.Tipping.Aed aed) { + this.aed = aed; + return this; + } + /** Tipping configuration for AUD. */ public Builder setAud(ConfigurationCreateParams.Tipping.Aud aud) { this.aud = aud; return this; } + /** Tipping configuration for BGN. */ + public Builder setBgn(ConfigurationCreateParams.Tipping.Bgn bgn) { + this.bgn = bgn; + return this; + } + /** Tipping configuration for CAD. */ public Builder setCad(ConfigurationCreateParams.Tipping.Cad cad) { this.cad = cad; @@ -810,6 +858,12 @@ public Builder setHkd(ConfigurationCreateParams.Tipping.Hkd hkd) { return this; } + /** Tipping configuration for HUF. */ + public Builder setHuf(ConfigurationCreateParams.Tipping.Huf huf) { + this.huf = huf; + return this; + } + /** Tipping configuration for JPY. */ public Builder setJpy(ConfigurationCreateParams.Tipping.Jpy jpy) { this.jpy = jpy; @@ -840,6 +894,12 @@ public Builder setPln(ConfigurationCreateParams.Tipping.Pln pln) { return this; } + /** Tipping configuration for RON. */ + public Builder setRon(ConfigurationCreateParams.Tipping.Ron ron) { + this.ron = ron; + return this; + } + /** Tipping configuration for SEK. */ public Builder setSek(ConfigurationCreateParams.Tipping.Sek sek) { this.sek = sek; @@ -861,7 +921,7 @@ public Builder setUsd(ConfigurationCreateParams.Tipping.Usd usd) { @Getter @EqualsAndHashCode(callSuper = false) - public static class Aud { + public static class Aed { /** * Map of extra parameters for custom features not available in this client library. The * content in this map is not serialized under this field's {@code @SerializedName} value. @@ -886,7 +946,7 @@ public static class Aud { @SerializedName("smart_tip_threshold") Long smartTipThreshold; - private Aud( + private Aed( Map extraParams, List fixedAmounts, List percentages, @@ -911,15 +971,15 @@ public static class Builder { private Long smartTipThreshold; /** Finalize and obtain parameter instance from this builder. */ - public ConfigurationCreateParams.Tipping.Aud build() { - return new ConfigurationCreateParams.Tipping.Aud( + public ConfigurationCreateParams.Tipping.Aed build() { + return new ConfigurationCreateParams.Tipping.Aed( this.extraParams, this.fixedAmounts, this.percentages, this.smartTipThreshold); } /** * Add a key/value pair to `extraParams` map. A map is initialized for the first * `put/putAll` call, and subsequent calls add additional key/value pairs to the original - * map. See {@link ConfigurationCreateParams.Tipping.Aud#extraParams} for the field + * map. See {@link ConfigurationCreateParams.Tipping.Aed#extraParams} for the field * documentation. */ public Builder putExtraParam(String key, Object value) { @@ -933,7 +993,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 ConfigurationCreateParams.Tipping.Aud#extraParams} for the field + * map. See {@link ConfigurationCreateParams.Tipping.Aed#extraParams} for the field * documentation. */ public Builder putAllExtraParam(Map map) { @@ -947,7 +1007,7 @@ public Builder putAllExtraParam(Map map) { /** * Add an element to `fixedAmounts` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationCreateParams.Tipping.Aud#fixedAmounts} for the field documentation. + * ConfigurationCreateParams.Tipping.Aed#fixedAmounts} for the field documentation. */ public Builder addFixedAmount(Long element) { if (this.fixedAmounts == null) { @@ -960,7 +1020,7 @@ public Builder addFixedAmount(Long element) { /** * Add all elements to `fixedAmounts` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationCreateParams.Tipping.Aud#fixedAmounts} for the field documentation. + * ConfigurationCreateParams.Tipping.Aed#fixedAmounts} for the field documentation. */ public Builder addAllFixedAmount(List elements) { if (this.fixedAmounts == null) { @@ -973,7 +1033,7 @@ public Builder addAllFixedAmount(List elements) { /** * Add an element to `percentages` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationCreateParams.Tipping.Aud#percentages} for the field documentation. + * ConfigurationCreateParams.Tipping.Aed#percentages} for the field documentation. */ public Builder addPercentage(Long element) { if (this.percentages == null) { @@ -986,7 +1046,7 @@ public Builder addPercentage(Long element) { /** * Add all elements to `percentages` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationCreateParams.Tipping.Aud#percentages} for the field documentation. + * ConfigurationCreateParams.Tipping.Aed#percentages} for the field documentation. */ public Builder addAllPercentage(List elements) { if (this.percentages == null) { @@ -1009,7 +1069,7 @@ public Builder setSmartTipThreshold(Long smartTipThreshold) { @Getter @EqualsAndHashCode(callSuper = false) - public static class Cad { + public static class Aud { /** * Map of extra parameters for custom features not available in this client library. The * content in this map is not serialized under this field's {@code @SerializedName} value. @@ -1034,7 +1094,7 @@ public static class Cad { @SerializedName("smart_tip_threshold") Long smartTipThreshold; - private Cad( + private Aud( Map extraParams, List fixedAmounts, List percentages, @@ -1059,15 +1119,15 @@ public static class Builder { private Long smartTipThreshold; /** Finalize and obtain parameter instance from this builder. */ - public ConfigurationCreateParams.Tipping.Cad build() { - return new ConfigurationCreateParams.Tipping.Cad( + public ConfigurationCreateParams.Tipping.Aud build() { + return new ConfigurationCreateParams.Tipping.Aud( this.extraParams, this.fixedAmounts, this.percentages, this.smartTipThreshold); } /** * Add a key/value pair to `extraParams` map. A map is initialized for the first * `put/putAll` call, and subsequent calls add additional key/value pairs to the original - * map. See {@link ConfigurationCreateParams.Tipping.Cad#extraParams} for the field + * map. See {@link ConfigurationCreateParams.Tipping.Aud#extraParams} for the field * documentation. */ public Builder putExtraParam(String key, Object value) { @@ -1081,7 +1141,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 ConfigurationCreateParams.Tipping.Cad#extraParams} for the field + * map. See {@link ConfigurationCreateParams.Tipping.Aud#extraParams} for the field * documentation. */ public Builder putAllExtraParam(Map map) { @@ -1095,7 +1155,7 @@ public Builder putAllExtraParam(Map map) { /** * Add an element to `fixedAmounts` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationCreateParams.Tipping.Cad#fixedAmounts} for the field documentation. + * ConfigurationCreateParams.Tipping.Aud#fixedAmounts} for the field documentation. */ public Builder addFixedAmount(Long element) { if (this.fixedAmounts == null) { @@ -1108,7 +1168,7 @@ public Builder addFixedAmount(Long element) { /** * Add all elements to `fixedAmounts` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationCreateParams.Tipping.Cad#fixedAmounts} for the field documentation. + * ConfigurationCreateParams.Tipping.Aud#fixedAmounts} for the field documentation. */ public Builder addAllFixedAmount(List elements) { if (this.fixedAmounts == null) { @@ -1121,7 +1181,7 @@ public Builder addAllFixedAmount(List elements) { /** * Add an element to `percentages` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationCreateParams.Tipping.Cad#percentages} for the field documentation. + * ConfigurationCreateParams.Tipping.Aud#percentages} for the field documentation. */ public Builder addPercentage(Long element) { if (this.percentages == null) { @@ -1134,7 +1194,7 @@ public Builder addPercentage(Long element) { /** * Add all elements to `percentages` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationCreateParams.Tipping.Cad#percentages} for the field documentation. + * ConfigurationCreateParams.Tipping.Aud#percentages} for the field documentation. */ public Builder addAllPercentage(List elements) { if (this.percentages == null) { @@ -1157,7 +1217,7 @@ public Builder setSmartTipThreshold(Long smartTipThreshold) { @Getter @EqualsAndHashCode(callSuper = false) - public static class Chf { + public static class Bgn { /** * Map of extra parameters for custom features not available in this client library. The * content in this map is not serialized under this field's {@code @SerializedName} value. @@ -1182,7 +1242,7 @@ public static class Chf { @SerializedName("smart_tip_threshold") Long smartTipThreshold; - private Chf( + private Bgn( Map extraParams, List fixedAmounts, List percentages, @@ -1207,15 +1267,15 @@ public static class Builder { private Long smartTipThreshold; /** Finalize and obtain parameter instance from this builder. */ - public ConfigurationCreateParams.Tipping.Chf build() { - return new ConfigurationCreateParams.Tipping.Chf( + public ConfigurationCreateParams.Tipping.Bgn build() { + return new ConfigurationCreateParams.Tipping.Bgn( this.extraParams, this.fixedAmounts, this.percentages, this.smartTipThreshold); } /** * Add a key/value pair to `extraParams` map. A map is initialized for the first * `put/putAll` call, and subsequent calls add additional key/value pairs to the original - * map. See {@link ConfigurationCreateParams.Tipping.Chf#extraParams} for the field + * map. See {@link ConfigurationCreateParams.Tipping.Bgn#extraParams} for the field * documentation. */ public Builder putExtraParam(String key, Object value) { @@ -1229,7 +1289,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 ConfigurationCreateParams.Tipping.Chf#extraParams} for the field + * map. See {@link ConfigurationCreateParams.Tipping.Bgn#extraParams} for the field * documentation. */ public Builder putAllExtraParam(Map map) { @@ -1243,7 +1303,7 @@ public Builder putAllExtraParam(Map map) { /** * Add an element to `fixedAmounts` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationCreateParams.Tipping.Chf#fixedAmounts} for the field documentation. + * ConfigurationCreateParams.Tipping.Bgn#fixedAmounts} for the field documentation. */ public Builder addFixedAmount(Long element) { if (this.fixedAmounts == null) { @@ -1256,7 +1316,7 @@ public Builder addFixedAmount(Long element) { /** * Add all elements to `fixedAmounts` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationCreateParams.Tipping.Chf#fixedAmounts} for the field documentation. + * ConfigurationCreateParams.Tipping.Bgn#fixedAmounts} for the field documentation. */ public Builder addAllFixedAmount(List elements) { if (this.fixedAmounts == null) { @@ -1269,7 +1329,7 @@ public Builder addAllFixedAmount(List elements) { /** * Add an element to `percentages` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationCreateParams.Tipping.Chf#percentages} for the field documentation. + * ConfigurationCreateParams.Tipping.Bgn#percentages} for the field documentation. */ public Builder addPercentage(Long element) { if (this.percentages == null) { @@ -1282,7 +1342,7 @@ public Builder addPercentage(Long element) { /** * Add all elements to `percentages` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationCreateParams.Tipping.Chf#percentages} for the field documentation. + * ConfigurationCreateParams.Tipping.Bgn#percentages} for the field documentation. */ public Builder addAllPercentage(List elements) { if (this.percentages == null) { @@ -1305,7 +1365,7 @@ public Builder setSmartTipThreshold(Long smartTipThreshold) { @Getter @EqualsAndHashCode(callSuper = false) - public static class Czk { + public static class Cad { /** * Map of extra parameters for custom features not available in this client library. The * content in this map is not serialized under this field's {@code @SerializedName} value. @@ -1330,7 +1390,7 @@ public static class Czk { @SerializedName("smart_tip_threshold") Long smartTipThreshold; - private Czk( + private Cad( Map extraParams, List fixedAmounts, List percentages, @@ -1355,15 +1415,15 @@ public static class Builder { private Long smartTipThreshold; /** Finalize and obtain parameter instance from this builder. */ - public ConfigurationCreateParams.Tipping.Czk build() { - return new ConfigurationCreateParams.Tipping.Czk( + public ConfigurationCreateParams.Tipping.Cad build() { + return new ConfigurationCreateParams.Tipping.Cad( this.extraParams, this.fixedAmounts, this.percentages, this.smartTipThreshold); } /** * Add a key/value pair to `extraParams` map. A map is initialized for the first * `put/putAll` call, and subsequent calls add additional key/value pairs to the original - * map. See {@link ConfigurationCreateParams.Tipping.Czk#extraParams} for the field + * map. See {@link ConfigurationCreateParams.Tipping.Cad#extraParams} for the field * documentation. */ public Builder putExtraParam(String key, Object value) { @@ -1377,7 +1437,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 ConfigurationCreateParams.Tipping.Czk#extraParams} for the field + * map. See {@link ConfigurationCreateParams.Tipping.Cad#extraParams} for the field * documentation. */ public Builder putAllExtraParam(Map map) { @@ -1391,7 +1451,7 @@ public Builder putAllExtraParam(Map map) { /** * Add an element to `fixedAmounts` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationCreateParams.Tipping.Czk#fixedAmounts} for the field documentation. + * ConfigurationCreateParams.Tipping.Cad#fixedAmounts} for the field documentation. */ public Builder addFixedAmount(Long element) { if (this.fixedAmounts == null) { @@ -1404,7 +1464,7 @@ public Builder addFixedAmount(Long element) { /** * Add all elements to `fixedAmounts` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationCreateParams.Tipping.Czk#fixedAmounts} for the field documentation. + * ConfigurationCreateParams.Tipping.Cad#fixedAmounts} for the field documentation. */ public Builder addAllFixedAmount(List elements) { if (this.fixedAmounts == null) { @@ -1417,7 +1477,7 @@ public Builder addAllFixedAmount(List elements) { /** * Add an element to `percentages` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationCreateParams.Tipping.Czk#percentages} for the field documentation. + * ConfigurationCreateParams.Tipping.Cad#percentages} for the field documentation. */ public Builder addPercentage(Long element) { if (this.percentages == null) { @@ -1430,7 +1490,7 @@ public Builder addPercentage(Long element) { /** * Add all elements to `percentages` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationCreateParams.Tipping.Czk#percentages} for the field documentation. + * ConfigurationCreateParams.Tipping.Cad#percentages} for the field documentation. */ public Builder addAllPercentage(List elements) { if (this.percentages == null) { @@ -1453,7 +1513,7 @@ public Builder setSmartTipThreshold(Long smartTipThreshold) { @Getter @EqualsAndHashCode(callSuper = false) - public static class Dkk { + public static class Chf { /** * Map of extra parameters for custom features not available in this client library. The * content in this map is not serialized under this field's {@code @SerializedName} value. @@ -1478,7 +1538,7 @@ public static class Dkk { @SerializedName("smart_tip_threshold") Long smartTipThreshold; - private Dkk( + private Chf( Map extraParams, List fixedAmounts, List percentages, @@ -1503,15 +1563,15 @@ public static class Builder { private Long smartTipThreshold; /** Finalize and obtain parameter instance from this builder. */ - public ConfigurationCreateParams.Tipping.Dkk build() { - return new ConfigurationCreateParams.Tipping.Dkk( + public ConfigurationCreateParams.Tipping.Chf build() { + return new ConfigurationCreateParams.Tipping.Chf( this.extraParams, this.fixedAmounts, this.percentages, this.smartTipThreshold); } /** * Add a key/value pair to `extraParams` map. A map is initialized for the first * `put/putAll` call, and subsequent calls add additional key/value pairs to the original - * map. See {@link ConfigurationCreateParams.Tipping.Dkk#extraParams} for the field + * map. See {@link ConfigurationCreateParams.Tipping.Chf#extraParams} for the field * documentation. */ public Builder putExtraParam(String key, Object value) { @@ -1525,7 +1585,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 ConfigurationCreateParams.Tipping.Dkk#extraParams} for the field + * map. See {@link ConfigurationCreateParams.Tipping.Chf#extraParams} for the field * documentation. */ public Builder putAllExtraParam(Map map) { @@ -1539,7 +1599,7 @@ public Builder putAllExtraParam(Map map) { /** * Add an element to `fixedAmounts` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationCreateParams.Tipping.Dkk#fixedAmounts} for the field documentation. + * ConfigurationCreateParams.Tipping.Chf#fixedAmounts} for the field documentation. */ public Builder addFixedAmount(Long element) { if (this.fixedAmounts == null) { @@ -1552,7 +1612,7 @@ public Builder addFixedAmount(Long element) { /** * Add all elements to `fixedAmounts` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationCreateParams.Tipping.Dkk#fixedAmounts} for the field documentation. + * ConfigurationCreateParams.Tipping.Chf#fixedAmounts} for the field documentation. */ public Builder addAllFixedAmount(List elements) { if (this.fixedAmounts == null) { @@ -1565,7 +1625,7 @@ public Builder addAllFixedAmount(List elements) { /** * Add an element to `percentages` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationCreateParams.Tipping.Dkk#percentages} for the field documentation. + * ConfigurationCreateParams.Tipping.Chf#percentages} for the field documentation. */ public Builder addPercentage(Long element) { if (this.percentages == null) { @@ -1578,7 +1638,7 @@ public Builder addPercentage(Long element) { /** * Add all elements to `percentages` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationCreateParams.Tipping.Dkk#percentages} for the field documentation. + * ConfigurationCreateParams.Tipping.Chf#percentages} for the field documentation. */ public Builder addAllPercentage(List elements) { if (this.percentages == null) { @@ -1601,7 +1661,7 @@ public Builder setSmartTipThreshold(Long smartTipThreshold) { @Getter @EqualsAndHashCode(callSuper = false) - public static class Eur { + public static class Czk { /** * Map of extra parameters for custom features not available in this client library. The * content in this map is not serialized under this field's {@code @SerializedName} value. @@ -1626,7 +1686,7 @@ public static class Eur { @SerializedName("smart_tip_threshold") Long smartTipThreshold; - private Eur( + private Czk( Map extraParams, List fixedAmounts, List percentages, @@ -1651,15 +1711,15 @@ public static class Builder { private Long smartTipThreshold; /** Finalize and obtain parameter instance from this builder. */ - public ConfigurationCreateParams.Tipping.Eur build() { - return new ConfigurationCreateParams.Tipping.Eur( + public ConfigurationCreateParams.Tipping.Czk build() { + return new ConfigurationCreateParams.Tipping.Czk( this.extraParams, this.fixedAmounts, this.percentages, this.smartTipThreshold); } /** * Add a key/value pair to `extraParams` map. A map is initialized for the first * `put/putAll` call, and subsequent calls add additional key/value pairs to the original - * map. See {@link ConfigurationCreateParams.Tipping.Eur#extraParams} for the field + * map. See {@link ConfigurationCreateParams.Tipping.Czk#extraParams} for the field * documentation. */ public Builder putExtraParam(String key, Object value) { @@ -1673,7 +1733,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 ConfigurationCreateParams.Tipping.Eur#extraParams} for the field + * map. See {@link ConfigurationCreateParams.Tipping.Czk#extraParams} for the field * documentation. */ public Builder putAllExtraParam(Map map) { @@ -1687,7 +1747,7 @@ public Builder putAllExtraParam(Map map) { /** * Add an element to `fixedAmounts` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationCreateParams.Tipping.Eur#fixedAmounts} for the field documentation. + * ConfigurationCreateParams.Tipping.Czk#fixedAmounts} for the field documentation. */ public Builder addFixedAmount(Long element) { if (this.fixedAmounts == null) { @@ -1700,7 +1760,7 @@ public Builder addFixedAmount(Long element) { /** * Add all elements to `fixedAmounts` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationCreateParams.Tipping.Eur#fixedAmounts} for the field documentation. + * ConfigurationCreateParams.Tipping.Czk#fixedAmounts} for the field documentation. */ public Builder addAllFixedAmount(List elements) { if (this.fixedAmounts == null) { @@ -1713,7 +1773,7 @@ public Builder addAllFixedAmount(List elements) { /** * Add an element to `percentages` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationCreateParams.Tipping.Eur#percentages} for the field documentation. + * ConfigurationCreateParams.Tipping.Czk#percentages} for the field documentation. */ public Builder addPercentage(Long element) { if (this.percentages == null) { @@ -1726,7 +1786,7 @@ public Builder addPercentage(Long element) { /** * Add all elements to `percentages` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationCreateParams.Tipping.Eur#percentages} for the field documentation. + * ConfigurationCreateParams.Tipping.Czk#percentages} for the field documentation. */ public Builder addAllPercentage(List elements) { if (this.percentages == null) { @@ -1749,7 +1809,7 @@ public Builder setSmartTipThreshold(Long smartTipThreshold) { @Getter @EqualsAndHashCode(callSuper = false) - public static class Gbp { + public static class Dkk { /** * Map of extra parameters for custom features not available in this client library. The * content in this map is not serialized under this field's {@code @SerializedName} value. @@ -1774,7 +1834,7 @@ public static class Gbp { @SerializedName("smart_tip_threshold") Long smartTipThreshold; - private Gbp( + private Dkk( Map extraParams, List fixedAmounts, List percentages, @@ -1799,15 +1859,15 @@ public static class Builder { private Long smartTipThreshold; /** Finalize and obtain parameter instance from this builder. */ - public ConfigurationCreateParams.Tipping.Gbp build() { - return new ConfigurationCreateParams.Tipping.Gbp( + public ConfigurationCreateParams.Tipping.Dkk build() { + return new ConfigurationCreateParams.Tipping.Dkk( this.extraParams, this.fixedAmounts, this.percentages, this.smartTipThreshold); } /** * Add a key/value pair to `extraParams` map. A map is initialized for the first * `put/putAll` call, and subsequent calls add additional key/value pairs to the original - * map. See {@link ConfigurationCreateParams.Tipping.Gbp#extraParams} for the field + * map. See {@link ConfigurationCreateParams.Tipping.Dkk#extraParams} for the field * documentation. */ public Builder putExtraParam(String key, Object value) { @@ -1821,7 +1881,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 ConfigurationCreateParams.Tipping.Gbp#extraParams} for the field + * map. See {@link ConfigurationCreateParams.Tipping.Dkk#extraParams} for the field * documentation. */ public Builder putAllExtraParam(Map map) { @@ -1835,7 +1895,7 @@ public Builder putAllExtraParam(Map map) { /** * Add an element to `fixedAmounts` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationCreateParams.Tipping.Gbp#fixedAmounts} for the field documentation. + * ConfigurationCreateParams.Tipping.Dkk#fixedAmounts} for the field documentation. */ public Builder addFixedAmount(Long element) { if (this.fixedAmounts == null) { @@ -1848,7 +1908,7 @@ public Builder addFixedAmount(Long element) { /** * Add all elements to `fixedAmounts` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationCreateParams.Tipping.Gbp#fixedAmounts} for the field documentation. + * ConfigurationCreateParams.Tipping.Dkk#fixedAmounts} for the field documentation. */ public Builder addAllFixedAmount(List elements) { if (this.fixedAmounts == null) { @@ -1861,7 +1921,7 @@ public Builder addAllFixedAmount(List elements) { /** * Add an element to `percentages` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationCreateParams.Tipping.Gbp#percentages} for the field documentation. + * ConfigurationCreateParams.Tipping.Dkk#percentages} for the field documentation. */ public Builder addPercentage(Long element) { if (this.percentages == null) { @@ -1874,7 +1934,7 @@ public Builder addPercentage(Long element) { /** * Add all elements to `percentages` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationCreateParams.Tipping.Gbp#percentages} for the field documentation. + * ConfigurationCreateParams.Tipping.Dkk#percentages} for the field documentation. */ public Builder addAllPercentage(List elements) { if (this.percentages == null) { @@ -1897,7 +1957,7 @@ public Builder setSmartTipThreshold(Long smartTipThreshold) { @Getter @EqualsAndHashCode(callSuper = false) - public static class Hkd { + 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} value. @@ -1922,7 +1982,7 @@ public static class Hkd { @SerializedName("smart_tip_threshold") Long smartTipThreshold; - private Hkd( + private Eur( Map extraParams, List fixedAmounts, List percentages, @@ -1947,15 +2007,15 @@ public static class Builder { private Long smartTipThreshold; /** Finalize and obtain parameter instance from this builder. */ - public ConfigurationCreateParams.Tipping.Hkd build() { - return new ConfigurationCreateParams.Tipping.Hkd( + public ConfigurationCreateParams.Tipping.Eur build() { + return new ConfigurationCreateParams.Tipping.Eur( this.extraParams, this.fixedAmounts, this.percentages, this.smartTipThreshold); } /** * Add a key/value pair to `extraParams` map. A map is initialized for the first * `put/putAll` call, and subsequent calls add additional key/value pairs to the original - * map. See {@link ConfigurationCreateParams.Tipping.Hkd#extraParams} for the field + * map. See {@link ConfigurationCreateParams.Tipping.Eur#extraParams} for the field * documentation. */ public Builder putExtraParam(String key, Object value) { @@ -1969,7 +2029,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 ConfigurationCreateParams.Tipping.Hkd#extraParams} for the field + * map. See {@link ConfigurationCreateParams.Tipping.Eur#extraParams} for the field * documentation. */ public Builder putAllExtraParam(Map map) { @@ -1983,7 +2043,7 @@ public Builder putAllExtraParam(Map map) { /** * Add an element to `fixedAmounts` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationCreateParams.Tipping.Hkd#fixedAmounts} for the field documentation. + * ConfigurationCreateParams.Tipping.Eur#fixedAmounts} for the field documentation. */ public Builder addFixedAmount(Long element) { if (this.fixedAmounts == null) { @@ -1996,7 +2056,7 @@ public Builder addFixedAmount(Long element) { /** * Add all elements to `fixedAmounts` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationCreateParams.Tipping.Hkd#fixedAmounts} for the field documentation. + * ConfigurationCreateParams.Tipping.Eur#fixedAmounts} for the field documentation. */ public Builder addAllFixedAmount(List elements) { if (this.fixedAmounts == null) { @@ -2009,7 +2069,7 @@ public Builder addAllFixedAmount(List elements) { /** * Add an element to `percentages` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationCreateParams.Tipping.Hkd#percentages} for the field documentation. + * ConfigurationCreateParams.Tipping.Eur#percentages} for the field documentation. */ public Builder addPercentage(Long element) { if (this.percentages == null) { @@ -2022,7 +2082,7 @@ public Builder addPercentage(Long element) { /** * Add all elements to `percentages` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationCreateParams.Tipping.Hkd#percentages} for the field documentation. + * ConfigurationCreateParams.Tipping.Eur#percentages} for the field documentation. */ public Builder addAllPercentage(List elements) { if (this.percentages == null) { @@ -2045,7 +2105,7 @@ public Builder setSmartTipThreshold(Long smartTipThreshold) { @Getter @EqualsAndHashCode(callSuper = false) - public static class Jpy { + 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. @@ -2070,7 +2130,7 @@ public static class Jpy { @SerializedName("smart_tip_threshold") Long smartTipThreshold; - private Jpy( + private Gbp( Map extraParams, List fixedAmounts, List percentages, @@ -2095,15 +2155,15 @@ public static class Builder { private Long smartTipThreshold; /** Finalize and obtain parameter instance from this builder. */ - public ConfigurationCreateParams.Tipping.Jpy build() { - return new ConfigurationCreateParams.Tipping.Jpy( + public ConfigurationCreateParams.Tipping.Gbp build() { + return new ConfigurationCreateParams.Tipping.Gbp( this.extraParams, this.fixedAmounts, this.percentages, this.smartTipThreshold); } /** * Add a key/value pair to `extraParams` map. A map is initialized for the first * `put/putAll` call, and subsequent calls add additional key/value pairs to the original - * map. See {@link ConfigurationCreateParams.Tipping.Jpy#extraParams} for the field + * map. See {@link ConfigurationCreateParams.Tipping.Gbp#extraParams} for the field * documentation. */ public Builder putExtraParam(String key, Object value) { @@ -2117,7 +2177,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 ConfigurationCreateParams.Tipping.Jpy#extraParams} for the field + * map. See {@link ConfigurationCreateParams.Tipping.Gbp#extraParams} for the field * documentation. */ public Builder putAllExtraParam(Map map) { @@ -2131,7 +2191,7 @@ public Builder putAllExtraParam(Map map) { /** * Add an element to `fixedAmounts` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationCreateParams.Tipping.Jpy#fixedAmounts} for the field documentation. + * ConfigurationCreateParams.Tipping.Gbp#fixedAmounts} for the field documentation. */ public Builder addFixedAmount(Long element) { if (this.fixedAmounts == null) { @@ -2144,7 +2204,7 @@ public Builder addFixedAmount(Long element) { /** * Add all elements to `fixedAmounts` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationCreateParams.Tipping.Jpy#fixedAmounts} for the field documentation. + * ConfigurationCreateParams.Tipping.Gbp#fixedAmounts} for the field documentation. */ public Builder addAllFixedAmount(List elements) { if (this.fixedAmounts == null) { @@ -2157,7 +2217,7 @@ public Builder addAllFixedAmount(List elements) { /** * Add an element to `percentages` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationCreateParams.Tipping.Jpy#percentages} for the field documentation. + * ConfigurationCreateParams.Tipping.Gbp#percentages} for the field documentation. */ public Builder addPercentage(Long element) { if (this.percentages == null) { @@ -2170,7 +2230,7 @@ public Builder addPercentage(Long element) { /** * Add all elements to `percentages` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationCreateParams.Tipping.Jpy#percentages} for the field documentation. + * ConfigurationCreateParams.Tipping.Gbp#percentages} for the field documentation. */ public Builder addAllPercentage(List elements) { if (this.percentages == null) { @@ -2193,7 +2253,7 @@ public Builder setSmartTipThreshold(Long smartTipThreshold) { @Getter @EqualsAndHashCode(callSuper = false) - public static class Myr { + public static class Hkd { /** * Map of extra parameters for custom features not available in this client library. The * content in this map is not serialized under this field's {@code @SerializedName} value. @@ -2218,7 +2278,7 @@ public static class Myr { @SerializedName("smart_tip_threshold") Long smartTipThreshold; - private Myr( + private Hkd( Map extraParams, List fixedAmounts, List percentages, @@ -2243,15 +2303,15 @@ public static class Builder { private Long smartTipThreshold; /** Finalize and obtain parameter instance from this builder. */ - public ConfigurationCreateParams.Tipping.Myr build() { - return new ConfigurationCreateParams.Tipping.Myr( + public ConfigurationCreateParams.Tipping.Hkd build() { + return new ConfigurationCreateParams.Tipping.Hkd( this.extraParams, this.fixedAmounts, this.percentages, this.smartTipThreshold); } /** * Add a key/value pair to `extraParams` map. A map is initialized for the first * `put/putAll` call, and subsequent calls add additional key/value pairs to the original - * map. See {@link ConfigurationCreateParams.Tipping.Myr#extraParams} for the field + * map. See {@link ConfigurationCreateParams.Tipping.Hkd#extraParams} for the field * documentation. */ public Builder putExtraParam(String key, Object value) { @@ -2265,7 +2325,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 ConfigurationCreateParams.Tipping.Myr#extraParams} for the field + * map. See {@link ConfigurationCreateParams.Tipping.Hkd#extraParams} for the field * documentation. */ public Builder putAllExtraParam(Map map) { @@ -2279,7 +2339,7 @@ public Builder putAllExtraParam(Map map) { /** * Add an element to `fixedAmounts` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationCreateParams.Tipping.Myr#fixedAmounts} for the field documentation. + * ConfigurationCreateParams.Tipping.Hkd#fixedAmounts} for the field documentation. */ public Builder addFixedAmount(Long element) { if (this.fixedAmounts == null) { @@ -2292,7 +2352,7 @@ public Builder addFixedAmount(Long element) { /** * Add all elements to `fixedAmounts` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationCreateParams.Tipping.Myr#fixedAmounts} for the field documentation. + * ConfigurationCreateParams.Tipping.Hkd#fixedAmounts} for the field documentation. */ public Builder addAllFixedAmount(List elements) { if (this.fixedAmounts == null) { @@ -2305,7 +2365,7 @@ public Builder addAllFixedAmount(List elements) { /** * Add an element to `percentages` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationCreateParams.Tipping.Myr#percentages} for the field documentation. + * ConfigurationCreateParams.Tipping.Hkd#percentages} for the field documentation. */ public Builder addPercentage(Long element) { if (this.percentages == null) { @@ -2318,7 +2378,7 @@ public Builder addPercentage(Long element) { /** * Add all elements to `percentages` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationCreateParams.Tipping.Myr#percentages} for the field documentation. + * ConfigurationCreateParams.Tipping.Hkd#percentages} for the field documentation. */ public Builder addAllPercentage(List elements) { if (this.percentages == null) { @@ -2341,7 +2401,7 @@ public Builder setSmartTipThreshold(Long smartTipThreshold) { @Getter @EqualsAndHashCode(callSuper = false) - public static class Nok { + public static class Huf { /** * Map of extra parameters for custom features not available in this client library. The * content in this map is not serialized under this field's {@code @SerializedName} value. @@ -2366,7 +2426,7 @@ public static class Nok { @SerializedName("smart_tip_threshold") Long smartTipThreshold; - private Nok( + private Huf( Map extraParams, List fixedAmounts, List percentages, @@ -2391,15 +2451,15 @@ public static class Builder { private Long smartTipThreshold; /** Finalize and obtain parameter instance from this builder. */ - public ConfigurationCreateParams.Tipping.Nok build() { - return new ConfigurationCreateParams.Tipping.Nok( + public ConfigurationCreateParams.Tipping.Huf build() { + return new ConfigurationCreateParams.Tipping.Huf( this.extraParams, this.fixedAmounts, this.percentages, this.smartTipThreshold); } /** * Add a key/value pair to `extraParams` map. A map is initialized for the first * `put/putAll` call, and subsequent calls add additional key/value pairs to the original - * map. See {@link ConfigurationCreateParams.Tipping.Nok#extraParams} for the field + * map. See {@link ConfigurationCreateParams.Tipping.Huf#extraParams} for the field * documentation. */ public Builder putExtraParam(String key, Object value) { @@ -2413,7 +2473,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 ConfigurationCreateParams.Tipping.Nok#extraParams} for the field + * map. See {@link ConfigurationCreateParams.Tipping.Huf#extraParams} for the field * documentation. */ public Builder putAllExtraParam(Map map) { @@ -2427,7 +2487,7 @@ public Builder putAllExtraParam(Map map) { /** * Add an element to `fixedAmounts` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationCreateParams.Tipping.Nok#fixedAmounts} for the field documentation. + * ConfigurationCreateParams.Tipping.Huf#fixedAmounts} for the field documentation. */ public Builder addFixedAmount(Long element) { if (this.fixedAmounts == null) { @@ -2440,7 +2500,7 @@ public Builder addFixedAmount(Long element) { /** * Add all elements to `fixedAmounts` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationCreateParams.Tipping.Nok#fixedAmounts} for the field documentation. + * ConfigurationCreateParams.Tipping.Huf#fixedAmounts} for the field documentation. */ public Builder addAllFixedAmount(List elements) { if (this.fixedAmounts == null) { @@ -2453,7 +2513,7 @@ public Builder addAllFixedAmount(List elements) { /** * Add an element to `percentages` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationCreateParams.Tipping.Nok#percentages} for the field documentation. + * ConfigurationCreateParams.Tipping.Huf#percentages} for the field documentation. */ public Builder addPercentage(Long element) { if (this.percentages == null) { @@ -2466,7 +2526,7 @@ public Builder addPercentage(Long element) { /** * Add all elements to `percentages` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationCreateParams.Tipping.Nok#percentages} for the field documentation. + * ConfigurationCreateParams.Tipping.Huf#percentages} for the field documentation. */ public Builder addAllPercentage(List elements) { if (this.percentages == null) { @@ -2489,7 +2549,7 @@ public Builder setSmartTipThreshold(Long smartTipThreshold) { @Getter @EqualsAndHashCode(callSuper = false) - public static class Nzd { + public static class Jpy { /** * Map of extra parameters for custom features not available in this client library. The * content in this map is not serialized under this field's {@code @SerializedName} value. @@ -2514,7 +2574,7 @@ public static class Nzd { @SerializedName("smart_tip_threshold") Long smartTipThreshold; - private Nzd( + private Jpy( Map extraParams, List fixedAmounts, List percentages, @@ -2539,15 +2599,15 @@ public static class Builder { private Long smartTipThreshold; /** Finalize and obtain parameter instance from this builder. */ - public ConfigurationCreateParams.Tipping.Nzd build() { - return new ConfigurationCreateParams.Tipping.Nzd( + public ConfigurationCreateParams.Tipping.Jpy build() { + return new ConfigurationCreateParams.Tipping.Jpy( this.extraParams, this.fixedAmounts, this.percentages, this.smartTipThreshold); } /** * Add a key/value pair to `extraParams` map. A map is initialized for the first * `put/putAll` call, and subsequent calls add additional key/value pairs to the original - * map. See {@link ConfigurationCreateParams.Tipping.Nzd#extraParams} for the field + * map. See {@link ConfigurationCreateParams.Tipping.Jpy#extraParams} for the field * documentation. */ public Builder putExtraParam(String key, Object value) { @@ -2561,7 +2621,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 ConfigurationCreateParams.Tipping.Nzd#extraParams} for the field + * map. See {@link ConfigurationCreateParams.Tipping.Jpy#extraParams} for the field * documentation. */ public Builder putAllExtraParam(Map map) { @@ -2575,7 +2635,7 @@ public Builder putAllExtraParam(Map map) { /** * Add an element to `fixedAmounts` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationCreateParams.Tipping.Nzd#fixedAmounts} for the field documentation. + * ConfigurationCreateParams.Tipping.Jpy#fixedAmounts} for the field documentation. */ public Builder addFixedAmount(Long element) { if (this.fixedAmounts == null) { @@ -2588,7 +2648,7 @@ public Builder addFixedAmount(Long element) { /** * Add all elements to `fixedAmounts` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationCreateParams.Tipping.Nzd#fixedAmounts} for the field documentation. + * ConfigurationCreateParams.Tipping.Jpy#fixedAmounts} for the field documentation. */ public Builder addAllFixedAmount(List elements) { if (this.fixedAmounts == null) { @@ -2601,7 +2661,7 @@ public Builder addAllFixedAmount(List elements) { /** * Add an element to `percentages` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationCreateParams.Tipping.Nzd#percentages} for the field documentation. + * ConfigurationCreateParams.Tipping.Jpy#percentages} for the field documentation. */ public Builder addPercentage(Long element) { if (this.percentages == null) { @@ -2614,7 +2674,7 @@ public Builder addPercentage(Long element) { /** * Add all elements to `percentages` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationCreateParams.Tipping.Nzd#percentages} for the field documentation. + * ConfigurationCreateParams.Tipping.Jpy#percentages} for the field documentation. */ public Builder addAllPercentage(List elements) { if (this.percentages == null) { @@ -2637,7 +2697,7 @@ public Builder setSmartTipThreshold(Long smartTipThreshold) { @Getter @EqualsAndHashCode(callSuper = false) - public static class Pln { + public static class Myr { /** * Map of extra parameters for custom features not available in this client library. The * content in this map is not serialized under this field's {@code @SerializedName} value. @@ -2662,7 +2722,7 @@ public static class Pln { @SerializedName("smart_tip_threshold") Long smartTipThreshold; - private Pln( + private Myr( Map extraParams, List fixedAmounts, List percentages, @@ -2687,15 +2747,15 @@ public static class Builder { private Long smartTipThreshold; /** Finalize and obtain parameter instance from this builder. */ - public ConfigurationCreateParams.Tipping.Pln build() { - return new ConfigurationCreateParams.Tipping.Pln( + public ConfigurationCreateParams.Tipping.Myr build() { + return new ConfigurationCreateParams.Tipping.Myr( this.extraParams, this.fixedAmounts, this.percentages, this.smartTipThreshold); } /** * Add a key/value pair to `extraParams` map. A map is initialized for the first * `put/putAll` call, and subsequent calls add additional key/value pairs to the original - * map. See {@link ConfigurationCreateParams.Tipping.Pln#extraParams} for the field + * map. See {@link ConfigurationCreateParams.Tipping.Myr#extraParams} for the field * documentation. */ public Builder putExtraParam(String key, Object value) { @@ -2709,7 +2769,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 ConfigurationCreateParams.Tipping.Pln#extraParams} for the field + * map. See {@link ConfigurationCreateParams.Tipping.Myr#extraParams} for the field * documentation. */ public Builder putAllExtraParam(Map map) { @@ -2723,7 +2783,7 @@ public Builder putAllExtraParam(Map map) { /** * Add an element to `fixedAmounts` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationCreateParams.Tipping.Pln#fixedAmounts} for the field documentation. + * ConfigurationCreateParams.Tipping.Myr#fixedAmounts} for the field documentation. */ public Builder addFixedAmount(Long element) { if (this.fixedAmounts == null) { @@ -2736,7 +2796,7 @@ public Builder addFixedAmount(Long element) { /** * Add all elements to `fixedAmounts` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationCreateParams.Tipping.Pln#fixedAmounts} for the field documentation. + * ConfigurationCreateParams.Tipping.Myr#fixedAmounts} for the field documentation. */ public Builder addAllFixedAmount(List elements) { if (this.fixedAmounts == null) { @@ -2749,7 +2809,7 @@ public Builder addAllFixedAmount(List elements) { /** * Add an element to `percentages` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationCreateParams.Tipping.Pln#percentages} for the field documentation. + * ConfigurationCreateParams.Tipping.Myr#percentages} for the field documentation. */ public Builder addPercentage(Long element) { if (this.percentages == null) { @@ -2762,7 +2822,599 @@ public Builder addPercentage(Long element) { /** * Add all elements to `percentages` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationCreateParams.Tipping.Pln#percentages} for the field documentation. + * ConfigurationCreateParams.Tipping.Myr#percentages} for the field documentation. + */ + public Builder addAllPercentage(List elements) { + if (this.percentages == null) { + this.percentages = new ArrayList<>(); + } + this.percentages.addAll(elements); + return this; + } + + /** + * Below this amount, fixed amounts will be displayed; above it, percentages will be + * displayed. + */ + public Builder setSmartTipThreshold(Long smartTipThreshold) { + this.smartTipThreshold = smartTipThreshold; + return this; + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Nok { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-level field (serialized) + * name in this param object. Effectively, this map is flattened to its parent instance. + */ + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** Fixed amounts displayed when collecting a tip. */ + @SerializedName("fixed_amounts") + List fixedAmounts; + + /** Percentages displayed when collecting a tip. */ + @SerializedName("percentages") + List percentages; + + /** + * Below this amount, fixed amounts will be displayed; above it, percentages will be + * displayed. + */ + @SerializedName("smart_tip_threshold") + Long smartTipThreshold; + + private Nok( + Map extraParams, + List fixedAmounts, + List percentages, + Long smartTipThreshold) { + this.extraParams = extraParams; + this.fixedAmounts = fixedAmounts; + this.percentages = percentages; + this.smartTipThreshold = smartTipThreshold; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private List fixedAmounts; + + private List percentages; + + private Long smartTipThreshold; + + /** Finalize and obtain parameter instance from this builder. */ + public ConfigurationCreateParams.Tipping.Nok build() { + return new ConfigurationCreateParams.Tipping.Nok( + this.extraParams, this.fixedAmounts, this.percentages, this.smartTipThreshold); + } + + /** + * Add a key/value pair to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link ConfigurationCreateParams.Tipping.Nok#extraParams} for the field + * documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link ConfigurationCreateParams.Tipping.Nok#extraParams} for the field + * documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** + * Add an element to `fixedAmounts` list. A list is initialized for the first `add/addAll` + * call, and subsequent calls adds additional elements to the original list. See {@link + * ConfigurationCreateParams.Tipping.Nok#fixedAmounts} for the field documentation. + */ + public Builder addFixedAmount(Long element) { + if (this.fixedAmounts == null) { + this.fixedAmounts = new ArrayList<>(); + } + this.fixedAmounts.add(element); + return this; + } + + /** + * Add all elements to `fixedAmounts` list. A list is initialized for the first `add/addAll` + * call, and subsequent calls adds additional elements to the original list. See {@link + * ConfigurationCreateParams.Tipping.Nok#fixedAmounts} for the field documentation. + */ + public Builder addAllFixedAmount(List elements) { + if (this.fixedAmounts == null) { + this.fixedAmounts = new ArrayList<>(); + } + this.fixedAmounts.addAll(elements); + return this; + } + + /** + * Add an element to `percentages` list. A list is initialized for the first `add/addAll` + * call, and subsequent calls adds additional elements to the original list. See {@link + * ConfigurationCreateParams.Tipping.Nok#percentages} for the field documentation. + */ + public Builder addPercentage(Long element) { + if (this.percentages == null) { + this.percentages = new ArrayList<>(); + } + this.percentages.add(element); + return this; + } + + /** + * Add all elements to `percentages` list. A list is initialized for the first `add/addAll` + * call, and subsequent calls adds additional elements to the original list. See {@link + * ConfigurationCreateParams.Tipping.Nok#percentages} for the field documentation. + */ + public Builder addAllPercentage(List elements) { + if (this.percentages == null) { + this.percentages = new ArrayList<>(); + } + this.percentages.addAll(elements); + return this; + } + + /** + * Below this amount, fixed amounts will be displayed; above it, percentages will be + * displayed. + */ + public Builder setSmartTipThreshold(Long smartTipThreshold) { + this.smartTipThreshold = smartTipThreshold; + return this; + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Nzd { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-level field (serialized) + * name in this param object. Effectively, this map is flattened to its parent instance. + */ + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** Fixed amounts displayed when collecting a tip. */ + @SerializedName("fixed_amounts") + List fixedAmounts; + + /** Percentages displayed when collecting a tip. */ + @SerializedName("percentages") + List percentages; + + /** + * Below this amount, fixed amounts will be displayed; above it, percentages will be + * displayed. + */ + @SerializedName("smart_tip_threshold") + Long smartTipThreshold; + + private Nzd( + Map extraParams, + List fixedAmounts, + List percentages, + Long smartTipThreshold) { + this.extraParams = extraParams; + this.fixedAmounts = fixedAmounts; + this.percentages = percentages; + this.smartTipThreshold = smartTipThreshold; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private List fixedAmounts; + + private List percentages; + + private Long smartTipThreshold; + + /** Finalize and obtain parameter instance from this builder. */ + public ConfigurationCreateParams.Tipping.Nzd build() { + return new ConfigurationCreateParams.Tipping.Nzd( + this.extraParams, this.fixedAmounts, this.percentages, this.smartTipThreshold); + } + + /** + * Add a key/value pair to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link ConfigurationCreateParams.Tipping.Nzd#extraParams} for the field + * documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link ConfigurationCreateParams.Tipping.Nzd#extraParams} for the field + * documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** + * Add an element to `fixedAmounts` list. A list is initialized for the first `add/addAll` + * call, and subsequent calls adds additional elements to the original list. See {@link + * ConfigurationCreateParams.Tipping.Nzd#fixedAmounts} for the field documentation. + */ + public Builder addFixedAmount(Long element) { + if (this.fixedAmounts == null) { + this.fixedAmounts = new ArrayList<>(); + } + this.fixedAmounts.add(element); + return this; + } + + /** + * Add all elements to `fixedAmounts` list. A list is initialized for the first `add/addAll` + * call, and subsequent calls adds additional elements to the original list. See {@link + * ConfigurationCreateParams.Tipping.Nzd#fixedAmounts} for the field documentation. + */ + public Builder addAllFixedAmount(List elements) { + if (this.fixedAmounts == null) { + this.fixedAmounts = new ArrayList<>(); + } + this.fixedAmounts.addAll(elements); + return this; + } + + /** + * Add an element to `percentages` list. A list is initialized for the first `add/addAll` + * call, and subsequent calls adds additional elements to the original list. See {@link + * ConfigurationCreateParams.Tipping.Nzd#percentages} for the field documentation. + */ + public Builder addPercentage(Long element) { + if (this.percentages == null) { + this.percentages = new ArrayList<>(); + } + this.percentages.add(element); + return this; + } + + /** + * Add all elements to `percentages` list. A list is initialized for the first `add/addAll` + * call, and subsequent calls adds additional elements to the original list. See {@link + * ConfigurationCreateParams.Tipping.Nzd#percentages} for the field documentation. + */ + public Builder addAllPercentage(List elements) { + if (this.percentages == null) { + this.percentages = new ArrayList<>(); + } + this.percentages.addAll(elements); + return this; + } + + /** + * Below this amount, fixed amounts will be displayed; above it, percentages will be + * displayed. + */ + public Builder setSmartTipThreshold(Long smartTipThreshold) { + this.smartTipThreshold = smartTipThreshold; + return this; + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Pln { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-level field (serialized) + * name in this param object. Effectively, this map is flattened to its parent instance. + */ + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** Fixed amounts displayed when collecting a tip. */ + @SerializedName("fixed_amounts") + List fixedAmounts; + + /** Percentages displayed when collecting a tip. */ + @SerializedName("percentages") + List percentages; + + /** + * Below this amount, fixed amounts will be displayed; above it, percentages will be + * displayed. + */ + @SerializedName("smart_tip_threshold") + Long smartTipThreshold; + + private Pln( + Map extraParams, + List fixedAmounts, + List percentages, + Long smartTipThreshold) { + this.extraParams = extraParams; + this.fixedAmounts = fixedAmounts; + this.percentages = percentages; + this.smartTipThreshold = smartTipThreshold; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private List fixedAmounts; + + private List percentages; + + private Long smartTipThreshold; + + /** Finalize and obtain parameter instance from this builder. */ + public ConfigurationCreateParams.Tipping.Pln build() { + return new ConfigurationCreateParams.Tipping.Pln( + this.extraParams, this.fixedAmounts, this.percentages, this.smartTipThreshold); + } + + /** + * Add a key/value pair to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link ConfigurationCreateParams.Tipping.Pln#extraParams} for the field + * documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link ConfigurationCreateParams.Tipping.Pln#extraParams} for the field + * documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** + * Add an element to `fixedAmounts` list. A list is initialized for the first `add/addAll` + * call, and subsequent calls adds additional elements to the original list. See {@link + * ConfigurationCreateParams.Tipping.Pln#fixedAmounts} for the field documentation. + */ + public Builder addFixedAmount(Long element) { + if (this.fixedAmounts == null) { + this.fixedAmounts = new ArrayList<>(); + } + this.fixedAmounts.add(element); + return this; + } + + /** + * Add all elements to `fixedAmounts` list. A list is initialized for the first `add/addAll` + * call, and subsequent calls adds additional elements to the original list. See {@link + * ConfigurationCreateParams.Tipping.Pln#fixedAmounts} for the field documentation. + */ + public Builder addAllFixedAmount(List elements) { + if (this.fixedAmounts == null) { + this.fixedAmounts = new ArrayList<>(); + } + this.fixedAmounts.addAll(elements); + return this; + } + + /** + * Add an element to `percentages` list. A list is initialized for the first `add/addAll` + * call, and subsequent calls adds additional elements to the original list. See {@link + * ConfigurationCreateParams.Tipping.Pln#percentages} for the field documentation. + */ + public Builder addPercentage(Long element) { + if (this.percentages == null) { + this.percentages = new ArrayList<>(); + } + this.percentages.add(element); + return this; + } + + /** + * Add all elements to `percentages` list. A list is initialized for the first `add/addAll` + * call, and subsequent calls adds additional elements to the original list. See {@link + * ConfigurationCreateParams.Tipping.Pln#percentages} for the field documentation. + */ + public Builder addAllPercentage(List elements) { + if (this.percentages == null) { + this.percentages = new ArrayList<>(); + } + this.percentages.addAll(elements); + return this; + } + + /** + * Below this amount, fixed amounts will be displayed; above it, percentages will be + * displayed. + */ + public Builder setSmartTipThreshold(Long smartTipThreshold) { + this.smartTipThreshold = smartTipThreshold; + return this; + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Ron { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-level field (serialized) + * name in this param object. Effectively, this map is flattened to its parent instance. + */ + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** Fixed amounts displayed when collecting a tip. */ + @SerializedName("fixed_amounts") + List fixedAmounts; + + /** Percentages displayed when collecting a tip. */ + @SerializedName("percentages") + List percentages; + + /** + * Below this amount, fixed amounts will be displayed; above it, percentages will be + * displayed. + */ + @SerializedName("smart_tip_threshold") + Long smartTipThreshold; + + private Ron( + Map extraParams, + List fixedAmounts, + List percentages, + Long smartTipThreshold) { + this.extraParams = extraParams; + this.fixedAmounts = fixedAmounts; + this.percentages = percentages; + this.smartTipThreshold = smartTipThreshold; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private List fixedAmounts; + + private List percentages; + + private Long smartTipThreshold; + + /** Finalize and obtain parameter instance from this builder. */ + public ConfigurationCreateParams.Tipping.Ron build() { + return new ConfigurationCreateParams.Tipping.Ron( + this.extraParams, this.fixedAmounts, this.percentages, this.smartTipThreshold); + } + + /** + * Add a key/value pair to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link ConfigurationCreateParams.Tipping.Ron#extraParams} for the field + * documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link ConfigurationCreateParams.Tipping.Ron#extraParams} for the field + * documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** + * Add an element to `fixedAmounts` list. A list is initialized for the first `add/addAll` + * call, and subsequent calls adds additional elements to the original list. See {@link + * ConfigurationCreateParams.Tipping.Ron#fixedAmounts} for the field documentation. + */ + public Builder addFixedAmount(Long element) { + if (this.fixedAmounts == null) { + this.fixedAmounts = new ArrayList<>(); + } + this.fixedAmounts.add(element); + return this; + } + + /** + * Add all elements to `fixedAmounts` list. A list is initialized for the first `add/addAll` + * call, and subsequent calls adds additional elements to the original list. See {@link + * ConfigurationCreateParams.Tipping.Ron#fixedAmounts} for the field documentation. + */ + public Builder addAllFixedAmount(List elements) { + if (this.fixedAmounts == null) { + this.fixedAmounts = new ArrayList<>(); + } + this.fixedAmounts.addAll(elements); + return this; + } + + /** + * Add an element to `percentages` list. A list is initialized for the first `add/addAll` + * call, and subsequent calls adds additional elements to the original list. See {@link + * ConfigurationCreateParams.Tipping.Ron#percentages} for the field documentation. + */ + public Builder addPercentage(Long element) { + if (this.percentages == null) { + this.percentages = new ArrayList<>(); + } + this.percentages.add(element); + return this; + } + + /** + * Add all elements to `percentages` list. A list is initialized for the first `add/addAll` + * call, and subsequent calls adds additional elements to the original list. See {@link + * ConfigurationCreateParams.Tipping.Ron#percentages} for the field documentation. */ public Builder addAllPercentage(List elements) { if (this.percentages == null) { diff --git a/src/main/java/com/stripe/param/terminal/ConfigurationUpdateParams.java b/src/main/java/com/stripe/param/terminal/ConfigurationUpdateParams.java index cd59f9782cb..19a7ca81a31 100644 --- a/src/main/java/com/stripe/param/terminal/ConfigurationUpdateParams.java +++ b/src/main/java/com/stripe/param/terminal/ConfigurationUpdateParams.java @@ -595,10 +595,18 @@ public Builder setSplashscreen(EmptyParam splashscreen) { @Getter @EqualsAndHashCode(callSuper = false) public static class Tipping { + /** Tipping configuration for AED. */ + @SerializedName("aed") + Aed aed; + /** Tipping configuration for AUD. */ @SerializedName("aud") Aud aud; + /** Tipping configuration for BGN. */ + @SerializedName("bgn") + Bgn bgn; + /** Tipping configuration for CAD. */ @SerializedName("cad") Cad cad; @@ -636,6 +644,10 @@ public static class Tipping { @SerializedName("hkd") Hkd hkd; + /** Tipping configuration for HUF. */ + @SerializedName("huf") + Huf huf; + /** Tipping configuration for JPY. */ @SerializedName("jpy") Jpy jpy; @@ -656,6 +668,10 @@ public static class Tipping { @SerializedName("pln") Pln pln; + /** Tipping configuration for RON. */ + @SerializedName("ron") + Ron ron; + /** Tipping configuration for SEK. */ @SerializedName("sek") Sek sek; @@ -669,7 +685,9 @@ public static class Tipping { Usd usd; private Tipping( + Aed aed, Aud aud, + Bgn bgn, Cad cad, Chf chf, Czk czk, @@ -678,15 +696,19 @@ private Tipping( Map extraParams, Gbp gbp, Hkd hkd, + Huf huf, Jpy jpy, Myr myr, Nok nok, Nzd nzd, Pln pln, + Ron ron, Sek sek, Sgd sgd, Usd usd) { + this.aed = aed; this.aud = aud; + this.bgn = bgn; this.cad = cad; this.chf = chf; this.czk = czk; @@ -695,11 +717,13 @@ private Tipping( this.extraParams = extraParams; this.gbp = gbp; this.hkd = hkd; + this.huf = huf; this.jpy = jpy; this.myr = myr; this.nok = nok; this.nzd = nzd; this.pln = pln; + this.ron = ron; this.sek = sek; this.sgd = sgd; this.usd = usd; @@ -710,8 +734,12 @@ public static Builder builder() { } public static class Builder { + private Aed aed; + private Aud aud; + private Bgn bgn; + private Cad cad; private Chf chf; @@ -728,6 +756,8 @@ public static class Builder { private Hkd hkd; + private Huf huf; + private Jpy jpy; private Myr myr; @@ -738,6 +768,8 @@ public static class Builder { private Pln pln; + private Ron ron; + private Sek sek; private Sgd sgd; @@ -747,7 +779,9 @@ public static class Builder { /** Finalize and obtain parameter instance from this builder. */ public ConfigurationUpdateParams.Tipping build() { return new ConfigurationUpdateParams.Tipping( + this.aed, this.aud, + this.bgn, this.cad, this.chf, this.czk, @@ -756,22 +790,36 @@ public ConfigurationUpdateParams.Tipping build() { this.extraParams, this.gbp, this.hkd, + this.huf, this.jpy, this.myr, this.nok, this.nzd, this.pln, + this.ron, this.sek, this.sgd, this.usd); } + /** Tipping configuration for AED. */ + public Builder setAed(ConfigurationUpdateParams.Tipping.Aed aed) { + this.aed = aed; + return this; + } + /** Tipping configuration for AUD. */ public Builder setAud(ConfigurationUpdateParams.Tipping.Aud aud) { this.aud = aud; return this; } + /** Tipping configuration for BGN. */ + public Builder setBgn(ConfigurationUpdateParams.Tipping.Bgn bgn) { + this.bgn = bgn; + return this; + } + /** Tipping configuration for CAD. */ public Builder setCad(ConfigurationUpdateParams.Tipping.Cad cad) { this.cad = cad; @@ -840,6 +888,12 @@ public Builder setHkd(ConfigurationUpdateParams.Tipping.Hkd hkd) { return this; } + /** Tipping configuration for HUF. */ + public Builder setHuf(ConfigurationUpdateParams.Tipping.Huf huf) { + this.huf = huf; + return this; + } + /** Tipping configuration for JPY. */ public Builder setJpy(ConfigurationUpdateParams.Tipping.Jpy jpy) { this.jpy = jpy; @@ -870,6 +924,12 @@ public Builder setPln(ConfigurationUpdateParams.Tipping.Pln pln) { return this; } + /** Tipping configuration for RON. */ + public Builder setRon(ConfigurationUpdateParams.Tipping.Ron ron) { + this.ron = ron; + return this; + } + /** Tipping configuration for SEK. */ public Builder setSek(ConfigurationUpdateParams.Tipping.Sek sek) { this.sek = sek; @@ -891,7 +951,7 @@ public Builder setUsd(ConfigurationUpdateParams.Tipping.Usd usd) { @Getter @EqualsAndHashCode(callSuper = false) - public static class Aud { + public static class Aed { /** * Map of extra parameters for custom features not available in this client library. The * content in this map is not serialized under this field's {@code @SerializedName} value. @@ -916,7 +976,7 @@ public static class Aud { @SerializedName("smart_tip_threshold") Long smartTipThreshold; - private Aud( + private Aed( Map extraParams, List fixedAmounts, List percentages, @@ -941,15 +1001,15 @@ public static class Builder { private Long smartTipThreshold; /** Finalize and obtain parameter instance from this builder. */ - public ConfigurationUpdateParams.Tipping.Aud build() { - return new ConfigurationUpdateParams.Tipping.Aud( + public ConfigurationUpdateParams.Tipping.Aed build() { + return new ConfigurationUpdateParams.Tipping.Aed( this.extraParams, this.fixedAmounts, this.percentages, this.smartTipThreshold); } /** * Add a key/value pair to `extraParams` map. A map is initialized for the first * `put/putAll` call, and subsequent calls add additional key/value pairs to the original - * map. See {@link ConfigurationUpdateParams.Tipping.Aud#extraParams} for the field + * map. See {@link ConfigurationUpdateParams.Tipping.Aed#extraParams} for the field * documentation. */ public Builder putExtraParam(String key, Object value) { @@ -963,7 +1023,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 ConfigurationUpdateParams.Tipping.Aud#extraParams} for the field + * map. See {@link ConfigurationUpdateParams.Tipping.Aed#extraParams} for the field * documentation. */ public Builder putAllExtraParam(Map map) { @@ -977,7 +1037,7 @@ public Builder putAllExtraParam(Map map) { /** * Add an element to `fixedAmounts` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationUpdateParams.Tipping.Aud#fixedAmounts} for the field documentation. + * ConfigurationUpdateParams.Tipping.Aed#fixedAmounts} for the field documentation. */ public Builder addFixedAmount(Long element) { if (this.fixedAmounts == null) { @@ -990,7 +1050,7 @@ public Builder addFixedAmount(Long element) { /** * Add all elements to `fixedAmounts` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationUpdateParams.Tipping.Aud#fixedAmounts} for the field documentation. + * ConfigurationUpdateParams.Tipping.Aed#fixedAmounts} for the field documentation. */ public Builder addAllFixedAmount(List elements) { if (this.fixedAmounts == null) { @@ -1003,7 +1063,7 @@ public Builder addAllFixedAmount(List elements) { /** * Add an element to `percentages` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationUpdateParams.Tipping.Aud#percentages} for the field documentation. + * ConfigurationUpdateParams.Tipping.Aed#percentages} for the field documentation. */ public Builder addPercentage(Long element) { if (this.percentages == null) { @@ -1016,7 +1076,7 @@ public Builder addPercentage(Long element) { /** * Add all elements to `percentages` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationUpdateParams.Tipping.Aud#percentages} for the field documentation. + * ConfigurationUpdateParams.Tipping.Aed#percentages} for the field documentation. */ public Builder addAllPercentage(List elements) { if (this.percentages == null) { @@ -1039,7 +1099,7 @@ public Builder setSmartTipThreshold(Long smartTipThreshold) { @Getter @EqualsAndHashCode(callSuper = false) - public static class Cad { + public static class Aud { /** * Map of extra parameters for custom features not available in this client library. The * content in this map is not serialized under this field's {@code @SerializedName} value. @@ -1064,7 +1124,7 @@ public static class Cad { @SerializedName("smart_tip_threshold") Long smartTipThreshold; - private Cad( + private Aud( Map extraParams, List fixedAmounts, List percentages, @@ -1089,15 +1149,15 @@ public static class Builder { private Long smartTipThreshold; /** Finalize and obtain parameter instance from this builder. */ - public ConfigurationUpdateParams.Tipping.Cad build() { - return new ConfigurationUpdateParams.Tipping.Cad( + public ConfigurationUpdateParams.Tipping.Aud build() { + return new ConfigurationUpdateParams.Tipping.Aud( this.extraParams, this.fixedAmounts, this.percentages, this.smartTipThreshold); } /** * Add a key/value pair to `extraParams` map. A map is initialized for the first * `put/putAll` call, and subsequent calls add additional key/value pairs to the original - * map. See {@link ConfigurationUpdateParams.Tipping.Cad#extraParams} for the field + * map. See {@link ConfigurationUpdateParams.Tipping.Aud#extraParams} for the field * documentation. */ public Builder putExtraParam(String key, Object value) { @@ -1111,7 +1171,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 ConfigurationUpdateParams.Tipping.Cad#extraParams} for the field + * map. See {@link ConfigurationUpdateParams.Tipping.Aud#extraParams} for the field * documentation. */ public Builder putAllExtraParam(Map map) { @@ -1125,7 +1185,7 @@ public Builder putAllExtraParam(Map map) { /** * Add an element to `fixedAmounts` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationUpdateParams.Tipping.Cad#fixedAmounts} for the field documentation. + * ConfigurationUpdateParams.Tipping.Aud#fixedAmounts} for the field documentation. */ public Builder addFixedAmount(Long element) { if (this.fixedAmounts == null) { @@ -1138,7 +1198,7 @@ public Builder addFixedAmount(Long element) { /** * Add all elements to `fixedAmounts` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationUpdateParams.Tipping.Cad#fixedAmounts} for the field documentation. + * ConfigurationUpdateParams.Tipping.Aud#fixedAmounts} for the field documentation. */ public Builder addAllFixedAmount(List elements) { if (this.fixedAmounts == null) { @@ -1151,7 +1211,7 @@ public Builder addAllFixedAmount(List elements) { /** * Add an element to `percentages` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationUpdateParams.Tipping.Cad#percentages} for the field documentation. + * ConfigurationUpdateParams.Tipping.Aud#percentages} for the field documentation. */ public Builder addPercentage(Long element) { if (this.percentages == null) { @@ -1164,7 +1224,7 @@ public Builder addPercentage(Long element) { /** * Add all elements to `percentages` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationUpdateParams.Tipping.Cad#percentages} for the field documentation. + * ConfigurationUpdateParams.Tipping.Aud#percentages} for the field documentation. */ public Builder addAllPercentage(List elements) { if (this.percentages == null) { @@ -1187,7 +1247,7 @@ public Builder setSmartTipThreshold(Long smartTipThreshold) { @Getter @EqualsAndHashCode(callSuper = false) - public static class Chf { + public static class Bgn { /** * Map of extra parameters for custom features not available in this client library. The * content in this map is not serialized under this field's {@code @SerializedName} value. @@ -1212,7 +1272,7 @@ public static class Chf { @SerializedName("smart_tip_threshold") Long smartTipThreshold; - private Chf( + private Bgn( Map extraParams, List fixedAmounts, List percentages, @@ -1237,15 +1297,15 @@ public static class Builder { private Long smartTipThreshold; /** Finalize and obtain parameter instance from this builder. */ - public ConfigurationUpdateParams.Tipping.Chf build() { - return new ConfigurationUpdateParams.Tipping.Chf( + public ConfigurationUpdateParams.Tipping.Bgn build() { + return new ConfigurationUpdateParams.Tipping.Bgn( this.extraParams, this.fixedAmounts, this.percentages, this.smartTipThreshold); } /** * Add a key/value pair to `extraParams` map. A map is initialized for the first * `put/putAll` call, and subsequent calls add additional key/value pairs to the original - * map. See {@link ConfigurationUpdateParams.Tipping.Chf#extraParams} for the field + * map. See {@link ConfigurationUpdateParams.Tipping.Bgn#extraParams} for the field * documentation. */ public Builder putExtraParam(String key, Object value) { @@ -1259,7 +1319,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 ConfigurationUpdateParams.Tipping.Chf#extraParams} for the field + * map. See {@link ConfigurationUpdateParams.Tipping.Bgn#extraParams} for the field * documentation. */ public Builder putAllExtraParam(Map map) { @@ -1273,7 +1333,7 @@ public Builder putAllExtraParam(Map map) { /** * Add an element to `fixedAmounts` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationUpdateParams.Tipping.Chf#fixedAmounts} for the field documentation. + * ConfigurationUpdateParams.Tipping.Bgn#fixedAmounts} for the field documentation. */ public Builder addFixedAmount(Long element) { if (this.fixedAmounts == null) { @@ -1286,7 +1346,7 @@ public Builder addFixedAmount(Long element) { /** * Add all elements to `fixedAmounts` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationUpdateParams.Tipping.Chf#fixedAmounts} for the field documentation. + * ConfigurationUpdateParams.Tipping.Bgn#fixedAmounts} for the field documentation. */ public Builder addAllFixedAmount(List elements) { if (this.fixedAmounts == null) { @@ -1299,7 +1359,7 @@ public Builder addAllFixedAmount(List elements) { /** * Add an element to `percentages` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationUpdateParams.Tipping.Chf#percentages} for the field documentation. + * ConfigurationUpdateParams.Tipping.Bgn#percentages} for the field documentation. */ public Builder addPercentage(Long element) { if (this.percentages == null) { @@ -1312,7 +1372,7 @@ public Builder addPercentage(Long element) { /** * Add all elements to `percentages` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationUpdateParams.Tipping.Chf#percentages} for the field documentation. + * ConfigurationUpdateParams.Tipping.Bgn#percentages} for the field documentation. */ public Builder addAllPercentage(List elements) { if (this.percentages == null) { @@ -1335,7 +1395,7 @@ public Builder setSmartTipThreshold(Long smartTipThreshold) { @Getter @EqualsAndHashCode(callSuper = false) - public static class Czk { + public static class Cad { /** * Map of extra parameters for custom features not available in this client library. The * content in this map is not serialized under this field's {@code @SerializedName} value. @@ -1360,7 +1420,7 @@ public static class Czk { @SerializedName("smart_tip_threshold") Long smartTipThreshold; - private Czk( + private Cad( Map extraParams, List fixedAmounts, List percentages, @@ -1385,15 +1445,15 @@ public static class Builder { private Long smartTipThreshold; /** Finalize and obtain parameter instance from this builder. */ - public ConfigurationUpdateParams.Tipping.Czk build() { - return new ConfigurationUpdateParams.Tipping.Czk( + public ConfigurationUpdateParams.Tipping.Cad build() { + return new ConfigurationUpdateParams.Tipping.Cad( this.extraParams, this.fixedAmounts, this.percentages, this.smartTipThreshold); } /** * Add a key/value pair to `extraParams` map. A map is initialized for the first * `put/putAll` call, and subsequent calls add additional key/value pairs to the original - * map. See {@link ConfigurationUpdateParams.Tipping.Czk#extraParams} for the field + * map. See {@link ConfigurationUpdateParams.Tipping.Cad#extraParams} for the field * documentation. */ public Builder putExtraParam(String key, Object value) { @@ -1407,7 +1467,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 ConfigurationUpdateParams.Tipping.Czk#extraParams} for the field + * map. See {@link ConfigurationUpdateParams.Tipping.Cad#extraParams} for the field * documentation. */ public Builder putAllExtraParam(Map map) { @@ -1421,7 +1481,7 @@ public Builder putAllExtraParam(Map map) { /** * Add an element to `fixedAmounts` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationUpdateParams.Tipping.Czk#fixedAmounts} for the field documentation. + * ConfigurationUpdateParams.Tipping.Cad#fixedAmounts} for the field documentation. */ public Builder addFixedAmount(Long element) { if (this.fixedAmounts == null) { @@ -1434,7 +1494,7 @@ public Builder addFixedAmount(Long element) { /** * Add all elements to `fixedAmounts` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationUpdateParams.Tipping.Czk#fixedAmounts} for the field documentation. + * ConfigurationUpdateParams.Tipping.Cad#fixedAmounts} for the field documentation. */ public Builder addAllFixedAmount(List elements) { if (this.fixedAmounts == null) { @@ -1447,7 +1507,7 @@ public Builder addAllFixedAmount(List elements) { /** * Add an element to `percentages` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationUpdateParams.Tipping.Czk#percentages} for the field documentation. + * ConfigurationUpdateParams.Tipping.Cad#percentages} for the field documentation. */ public Builder addPercentage(Long element) { if (this.percentages == null) { @@ -1460,7 +1520,7 @@ public Builder addPercentage(Long element) { /** * Add all elements to `percentages` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationUpdateParams.Tipping.Czk#percentages} for the field documentation. + * ConfigurationUpdateParams.Tipping.Cad#percentages} for the field documentation. */ public Builder addAllPercentage(List elements) { if (this.percentages == null) { @@ -1483,7 +1543,7 @@ public Builder setSmartTipThreshold(Long smartTipThreshold) { @Getter @EqualsAndHashCode(callSuper = false) - public static class Dkk { + public static class Chf { /** * Map of extra parameters for custom features not available in this client library. The * content in this map is not serialized under this field's {@code @SerializedName} value. @@ -1508,7 +1568,7 @@ public static class Dkk { @SerializedName("smart_tip_threshold") Long smartTipThreshold; - private Dkk( + private Chf( Map extraParams, List fixedAmounts, List percentages, @@ -1533,15 +1593,15 @@ public static class Builder { private Long smartTipThreshold; /** Finalize and obtain parameter instance from this builder. */ - public ConfigurationUpdateParams.Tipping.Dkk build() { - return new ConfigurationUpdateParams.Tipping.Dkk( + public ConfigurationUpdateParams.Tipping.Chf build() { + return new ConfigurationUpdateParams.Tipping.Chf( this.extraParams, this.fixedAmounts, this.percentages, this.smartTipThreshold); } /** * Add a key/value pair to `extraParams` map. A map is initialized for the first * `put/putAll` call, and subsequent calls add additional key/value pairs to the original - * map. See {@link ConfigurationUpdateParams.Tipping.Dkk#extraParams} for the field + * map. See {@link ConfigurationUpdateParams.Tipping.Chf#extraParams} for the field * documentation. */ public Builder putExtraParam(String key, Object value) { @@ -1555,7 +1615,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 ConfigurationUpdateParams.Tipping.Dkk#extraParams} for the field + * map. See {@link ConfigurationUpdateParams.Tipping.Chf#extraParams} for the field * documentation. */ public Builder putAllExtraParam(Map map) { @@ -1569,7 +1629,7 @@ public Builder putAllExtraParam(Map map) { /** * Add an element to `fixedAmounts` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationUpdateParams.Tipping.Dkk#fixedAmounts} for the field documentation. + * ConfigurationUpdateParams.Tipping.Chf#fixedAmounts} for the field documentation. */ public Builder addFixedAmount(Long element) { if (this.fixedAmounts == null) { @@ -1582,7 +1642,7 @@ public Builder addFixedAmount(Long element) { /** * Add all elements to `fixedAmounts` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationUpdateParams.Tipping.Dkk#fixedAmounts} for the field documentation. + * ConfigurationUpdateParams.Tipping.Chf#fixedAmounts} for the field documentation. */ public Builder addAllFixedAmount(List elements) { if (this.fixedAmounts == null) { @@ -1595,7 +1655,7 @@ public Builder addAllFixedAmount(List elements) { /** * Add an element to `percentages` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationUpdateParams.Tipping.Dkk#percentages} for the field documentation. + * ConfigurationUpdateParams.Tipping.Chf#percentages} for the field documentation. */ public Builder addPercentage(Long element) { if (this.percentages == null) { @@ -1608,7 +1668,7 @@ public Builder addPercentage(Long element) { /** * Add all elements to `percentages` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationUpdateParams.Tipping.Dkk#percentages} for the field documentation. + * ConfigurationUpdateParams.Tipping.Chf#percentages} for the field documentation. */ public Builder addAllPercentage(List elements) { if (this.percentages == null) { @@ -1631,7 +1691,7 @@ public Builder setSmartTipThreshold(Long smartTipThreshold) { @Getter @EqualsAndHashCode(callSuper = false) - public static class Eur { + public static class Czk { /** * Map of extra parameters for custom features not available in this client library. The * content in this map is not serialized under this field's {@code @SerializedName} value. @@ -1656,7 +1716,7 @@ public static class Eur { @SerializedName("smart_tip_threshold") Long smartTipThreshold; - private Eur( + private Czk( Map extraParams, List fixedAmounts, List percentages, @@ -1681,15 +1741,15 @@ public static class Builder { private Long smartTipThreshold; /** Finalize and obtain parameter instance from this builder. */ - public ConfigurationUpdateParams.Tipping.Eur build() { - return new ConfigurationUpdateParams.Tipping.Eur( + public ConfigurationUpdateParams.Tipping.Czk build() { + return new ConfigurationUpdateParams.Tipping.Czk( this.extraParams, this.fixedAmounts, this.percentages, this.smartTipThreshold); } /** * Add a key/value pair to `extraParams` map. A map is initialized for the first * `put/putAll` call, and subsequent calls add additional key/value pairs to the original - * map. See {@link ConfigurationUpdateParams.Tipping.Eur#extraParams} for the field + * map. See {@link ConfigurationUpdateParams.Tipping.Czk#extraParams} for the field * documentation. */ public Builder putExtraParam(String key, Object value) { @@ -1703,7 +1763,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 ConfigurationUpdateParams.Tipping.Eur#extraParams} for the field + * map. See {@link ConfigurationUpdateParams.Tipping.Czk#extraParams} for the field * documentation. */ public Builder putAllExtraParam(Map map) { @@ -1717,7 +1777,7 @@ public Builder putAllExtraParam(Map map) { /** * Add an element to `fixedAmounts` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationUpdateParams.Tipping.Eur#fixedAmounts} for the field documentation. + * ConfigurationUpdateParams.Tipping.Czk#fixedAmounts} for the field documentation. */ public Builder addFixedAmount(Long element) { if (this.fixedAmounts == null) { @@ -1730,7 +1790,7 @@ public Builder addFixedAmount(Long element) { /** * Add all elements to `fixedAmounts` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationUpdateParams.Tipping.Eur#fixedAmounts} for the field documentation. + * ConfigurationUpdateParams.Tipping.Czk#fixedAmounts} for the field documentation. */ public Builder addAllFixedAmount(List elements) { if (this.fixedAmounts == null) { @@ -1743,7 +1803,7 @@ public Builder addAllFixedAmount(List elements) { /** * Add an element to `percentages` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationUpdateParams.Tipping.Eur#percentages} for the field documentation. + * ConfigurationUpdateParams.Tipping.Czk#percentages} for the field documentation. */ public Builder addPercentage(Long element) { if (this.percentages == null) { @@ -1756,7 +1816,7 @@ public Builder addPercentage(Long element) { /** * Add all elements to `percentages` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationUpdateParams.Tipping.Eur#percentages} for the field documentation. + * ConfigurationUpdateParams.Tipping.Czk#percentages} for the field documentation. */ public Builder addAllPercentage(List elements) { if (this.percentages == null) { @@ -1779,7 +1839,7 @@ public Builder setSmartTipThreshold(Long smartTipThreshold) { @Getter @EqualsAndHashCode(callSuper = false) - public static class Gbp { + public static class Dkk { /** * Map of extra parameters for custom features not available in this client library. The * content in this map is not serialized under this field's {@code @SerializedName} value. @@ -1804,7 +1864,7 @@ public static class Gbp { @SerializedName("smart_tip_threshold") Long smartTipThreshold; - private Gbp( + private Dkk( Map extraParams, List fixedAmounts, List percentages, @@ -1829,15 +1889,15 @@ public static class Builder { private Long smartTipThreshold; /** Finalize and obtain parameter instance from this builder. */ - public ConfigurationUpdateParams.Tipping.Gbp build() { - return new ConfigurationUpdateParams.Tipping.Gbp( + public ConfigurationUpdateParams.Tipping.Dkk build() { + return new ConfigurationUpdateParams.Tipping.Dkk( this.extraParams, this.fixedAmounts, this.percentages, this.smartTipThreshold); } /** * Add a key/value pair to `extraParams` map. A map is initialized for the first * `put/putAll` call, and subsequent calls add additional key/value pairs to the original - * map. See {@link ConfigurationUpdateParams.Tipping.Gbp#extraParams} for the field + * map. See {@link ConfigurationUpdateParams.Tipping.Dkk#extraParams} for the field * documentation. */ public Builder putExtraParam(String key, Object value) { @@ -1851,7 +1911,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 ConfigurationUpdateParams.Tipping.Gbp#extraParams} for the field + * map. See {@link ConfigurationUpdateParams.Tipping.Dkk#extraParams} for the field * documentation. */ public Builder putAllExtraParam(Map map) { @@ -1865,7 +1925,7 @@ public Builder putAllExtraParam(Map map) { /** * Add an element to `fixedAmounts` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationUpdateParams.Tipping.Gbp#fixedAmounts} for the field documentation. + * ConfigurationUpdateParams.Tipping.Dkk#fixedAmounts} for the field documentation. */ public Builder addFixedAmount(Long element) { if (this.fixedAmounts == null) { @@ -1878,7 +1938,7 @@ public Builder addFixedAmount(Long element) { /** * Add all elements to `fixedAmounts` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationUpdateParams.Tipping.Gbp#fixedAmounts} for the field documentation. + * ConfigurationUpdateParams.Tipping.Dkk#fixedAmounts} for the field documentation. */ public Builder addAllFixedAmount(List elements) { if (this.fixedAmounts == null) { @@ -1891,7 +1951,7 @@ public Builder addAllFixedAmount(List elements) { /** * Add an element to `percentages` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationUpdateParams.Tipping.Gbp#percentages} for the field documentation. + * ConfigurationUpdateParams.Tipping.Dkk#percentages} for the field documentation. */ public Builder addPercentage(Long element) { if (this.percentages == null) { @@ -1904,7 +1964,7 @@ public Builder addPercentage(Long element) { /** * Add all elements to `percentages` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationUpdateParams.Tipping.Gbp#percentages} for the field documentation. + * ConfigurationUpdateParams.Tipping.Dkk#percentages} for the field documentation. */ public Builder addAllPercentage(List elements) { if (this.percentages == null) { @@ -1927,7 +1987,7 @@ public Builder setSmartTipThreshold(Long smartTipThreshold) { @Getter @EqualsAndHashCode(callSuper = false) - public static class Hkd { + 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} value. @@ -1952,7 +2012,7 @@ public static class Hkd { @SerializedName("smart_tip_threshold") Long smartTipThreshold; - private Hkd( + private Eur( Map extraParams, List fixedAmounts, List percentages, @@ -1977,15 +2037,15 @@ public static class Builder { private Long smartTipThreshold; /** Finalize and obtain parameter instance from this builder. */ - public ConfigurationUpdateParams.Tipping.Hkd build() { - return new ConfigurationUpdateParams.Tipping.Hkd( + public ConfigurationUpdateParams.Tipping.Eur build() { + return new ConfigurationUpdateParams.Tipping.Eur( this.extraParams, this.fixedAmounts, this.percentages, this.smartTipThreshold); } /** * Add a key/value pair to `extraParams` map. A map is initialized for the first * `put/putAll` call, and subsequent calls add additional key/value pairs to the original - * map. See {@link ConfigurationUpdateParams.Tipping.Hkd#extraParams} for the field + * map. See {@link ConfigurationUpdateParams.Tipping.Eur#extraParams} for the field * documentation. */ public Builder putExtraParam(String key, Object value) { @@ -1999,7 +2059,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 ConfigurationUpdateParams.Tipping.Hkd#extraParams} for the field + * map. See {@link ConfigurationUpdateParams.Tipping.Eur#extraParams} for the field * documentation. */ public Builder putAllExtraParam(Map map) { @@ -2013,7 +2073,7 @@ public Builder putAllExtraParam(Map map) { /** * Add an element to `fixedAmounts` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationUpdateParams.Tipping.Hkd#fixedAmounts} for the field documentation. + * ConfigurationUpdateParams.Tipping.Eur#fixedAmounts} for the field documentation. */ public Builder addFixedAmount(Long element) { if (this.fixedAmounts == null) { @@ -2026,7 +2086,7 @@ public Builder addFixedAmount(Long element) { /** * Add all elements to `fixedAmounts` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationUpdateParams.Tipping.Hkd#fixedAmounts} for the field documentation. + * ConfigurationUpdateParams.Tipping.Eur#fixedAmounts} for the field documentation. */ public Builder addAllFixedAmount(List elements) { if (this.fixedAmounts == null) { @@ -2039,7 +2099,7 @@ public Builder addAllFixedAmount(List elements) { /** * Add an element to `percentages` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationUpdateParams.Tipping.Hkd#percentages} for the field documentation. + * ConfigurationUpdateParams.Tipping.Eur#percentages} for the field documentation. */ public Builder addPercentage(Long element) { if (this.percentages == null) { @@ -2052,7 +2112,7 @@ public Builder addPercentage(Long element) { /** * Add all elements to `percentages` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationUpdateParams.Tipping.Hkd#percentages} for the field documentation. + * ConfigurationUpdateParams.Tipping.Eur#percentages} for the field documentation. */ public Builder addAllPercentage(List elements) { if (this.percentages == null) { @@ -2075,7 +2135,7 @@ public Builder setSmartTipThreshold(Long smartTipThreshold) { @Getter @EqualsAndHashCode(callSuper = false) - public static class Jpy { + 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. @@ -2100,7 +2160,7 @@ public static class Jpy { @SerializedName("smart_tip_threshold") Long smartTipThreshold; - private Jpy( + private Gbp( Map extraParams, List fixedAmounts, List percentages, @@ -2125,15 +2185,15 @@ public static class Builder { private Long smartTipThreshold; /** Finalize and obtain parameter instance from this builder. */ - public ConfigurationUpdateParams.Tipping.Jpy build() { - return new ConfigurationUpdateParams.Tipping.Jpy( + public ConfigurationUpdateParams.Tipping.Gbp build() { + return new ConfigurationUpdateParams.Tipping.Gbp( this.extraParams, this.fixedAmounts, this.percentages, this.smartTipThreshold); } /** * Add a key/value pair to `extraParams` map. A map is initialized for the first * `put/putAll` call, and subsequent calls add additional key/value pairs to the original - * map. See {@link ConfigurationUpdateParams.Tipping.Jpy#extraParams} for the field + * map. See {@link ConfigurationUpdateParams.Tipping.Gbp#extraParams} for the field * documentation. */ public Builder putExtraParam(String key, Object value) { @@ -2147,7 +2207,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 ConfigurationUpdateParams.Tipping.Jpy#extraParams} for the field + * map. See {@link ConfigurationUpdateParams.Tipping.Gbp#extraParams} for the field * documentation. */ public Builder putAllExtraParam(Map map) { @@ -2161,7 +2221,7 @@ public Builder putAllExtraParam(Map map) { /** * Add an element to `fixedAmounts` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationUpdateParams.Tipping.Jpy#fixedAmounts} for the field documentation. + * ConfigurationUpdateParams.Tipping.Gbp#fixedAmounts} for the field documentation. */ public Builder addFixedAmount(Long element) { if (this.fixedAmounts == null) { @@ -2174,7 +2234,7 @@ public Builder addFixedAmount(Long element) { /** * Add all elements to `fixedAmounts` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationUpdateParams.Tipping.Jpy#fixedAmounts} for the field documentation. + * ConfigurationUpdateParams.Tipping.Gbp#fixedAmounts} for the field documentation. */ public Builder addAllFixedAmount(List elements) { if (this.fixedAmounts == null) { @@ -2187,7 +2247,7 @@ public Builder addAllFixedAmount(List elements) { /** * Add an element to `percentages` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationUpdateParams.Tipping.Jpy#percentages} for the field documentation. + * ConfigurationUpdateParams.Tipping.Gbp#percentages} for the field documentation. */ public Builder addPercentage(Long element) { if (this.percentages == null) { @@ -2200,7 +2260,7 @@ public Builder addPercentage(Long element) { /** * Add all elements to `percentages` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationUpdateParams.Tipping.Jpy#percentages} for the field documentation. + * ConfigurationUpdateParams.Tipping.Gbp#percentages} for the field documentation. */ public Builder addAllPercentage(List elements) { if (this.percentages == null) { @@ -2223,7 +2283,7 @@ public Builder setSmartTipThreshold(Long smartTipThreshold) { @Getter @EqualsAndHashCode(callSuper = false) - public static class Myr { + public static class Hkd { /** * Map of extra parameters for custom features not available in this client library. The * content in this map is not serialized under this field's {@code @SerializedName} value. @@ -2248,7 +2308,7 @@ public static class Myr { @SerializedName("smart_tip_threshold") Long smartTipThreshold; - private Myr( + private Hkd( Map extraParams, List fixedAmounts, List percentages, @@ -2273,15 +2333,15 @@ public static class Builder { private Long smartTipThreshold; /** Finalize and obtain parameter instance from this builder. */ - public ConfigurationUpdateParams.Tipping.Myr build() { - return new ConfigurationUpdateParams.Tipping.Myr( + public ConfigurationUpdateParams.Tipping.Hkd build() { + return new ConfigurationUpdateParams.Tipping.Hkd( this.extraParams, this.fixedAmounts, this.percentages, this.smartTipThreshold); } /** * Add a key/value pair to `extraParams` map. A map is initialized for the first * `put/putAll` call, and subsequent calls add additional key/value pairs to the original - * map. See {@link ConfigurationUpdateParams.Tipping.Myr#extraParams} for the field + * map. See {@link ConfigurationUpdateParams.Tipping.Hkd#extraParams} for the field * documentation. */ public Builder putExtraParam(String key, Object value) { @@ -2295,7 +2355,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 ConfigurationUpdateParams.Tipping.Myr#extraParams} for the field + * map. See {@link ConfigurationUpdateParams.Tipping.Hkd#extraParams} for the field * documentation. */ public Builder putAllExtraParam(Map map) { @@ -2309,7 +2369,7 @@ public Builder putAllExtraParam(Map map) { /** * Add an element to `fixedAmounts` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationUpdateParams.Tipping.Myr#fixedAmounts} for the field documentation. + * ConfigurationUpdateParams.Tipping.Hkd#fixedAmounts} for the field documentation. */ public Builder addFixedAmount(Long element) { if (this.fixedAmounts == null) { @@ -2322,7 +2382,7 @@ public Builder addFixedAmount(Long element) { /** * Add all elements to `fixedAmounts` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationUpdateParams.Tipping.Myr#fixedAmounts} for the field documentation. + * ConfigurationUpdateParams.Tipping.Hkd#fixedAmounts} for the field documentation. */ public Builder addAllFixedAmount(List elements) { if (this.fixedAmounts == null) { @@ -2335,7 +2395,7 @@ public Builder addAllFixedAmount(List elements) { /** * Add an element to `percentages` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationUpdateParams.Tipping.Myr#percentages} for the field documentation. + * ConfigurationUpdateParams.Tipping.Hkd#percentages} for the field documentation. */ public Builder addPercentage(Long element) { if (this.percentages == null) { @@ -2348,7 +2408,7 @@ public Builder addPercentage(Long element) { /** * Add all elements to `percentages` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationUpdateParams.Tipping.Myr#percentages} for the field documentation. + * ConfigurationUpdateParams.Tipping.Hkd#percentages} for the field documentation. */ public Builder addAllPercentage(List elements) { if (this.percentages == null) { @@ -2371,7 +2431,7 @@ public Builder setSmartTipThreshold(Long smartTipThreshold) { @Getter @EqualsAndHashCode(callSuper = false) - public static class Nok { + public static class Huf { /** * Map of extra parameters for custom features not available in this client library. The * content in this map is not serialized under this field's {@code @SerializedName} value. @@ -2396,7 +2456,7 @@ public static class Nok { @SerializedName("smart_tip_threshold") Long smartTipThreshold; - private Nok( + private Huf( Map extraParams, List fixedAmounts, List percentages, @@ -2421,15 +2481,15 @@ public static class Builder { private Long smartTipThreshold; /** Finalize and obtain parameter instance from this builder. */ - public ConfigurationUpdateParams.Tipping.Nok build() { - return new ConfigurationUpdateParams.Tipping.Nok( + public ConfigurationUpdateParams.Tipping.Huf build() { + return new ConfigurationUpdateParams.Tipping.Huf( this.extraParams, this.fixedAmounts, this.percentages, this.smartTipThreshold); } /** * Add a key/value pair to `extraParams` map. A map is initialized for the first * `put/putAll` call, and subsequent calls add additional key/value pairs to the original - * map. See {@link ConfigurationUpdateParams.Tipping.Nok#extraParams} for the field + * map. See {@link ConfigurationUpdateParams.Tipping.Huf#extraParams} for the field * documentation. */ public Builder putExtraParam(String key, Object value) { @@ -2443,7 +2503,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 ConfigurationUpdateParams.Tipping.Nok#extraParams} for the field + * map. See {@link ConfigurationUpdateParams.Tipping.Huf#extraParams} for the field * documentation. */ public Builder putAllExtraParam(Map map) { @@ -2457,7 +2517,7 @@ public Builder putAllExtraParam(Map map) { /** * Add an element to `fixedAmounts` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationUpdateParams.Tipping.Nok#fixedAmounts} for the field documentation. + * ConfigurationUpdateParams.Tipping.Huf#fixedAmounts} for the field documentation. */ public Builder addFixedAmount(Long element) { if (this.fixedAmounts == null) { @@ -2470,7 +2530,7 @@ public Builder addFixedAmount(Long element) { /** * Add all elements to `fixedAmounts` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationUpdateParams.Tipping.Nok#fixedAmounts} for the field documentation. + * ConfigurationUpdateParams.Tipping.Huf#fixedAmounts} for the field documentation. */ public Builder addAllFixedAmount(List elements) { if (this.fixedAmounts == null) { @@ -2483,7 +2543,7 @@ public Builder addAllFixedAmount(List elements) { /** * Add an element to `percentages` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationUpdateParams.Tipping.Nok#percentages} for the field documentation. + * ConfigurationUpdateParams.Tipping.Huf#percentages} for the field documentation. */ public Builder addPercentage(Long element) { if (this.percentages == null) { @@ -2496,7 +2556,7 @@ public Builder addPercentage(Long element) { /** * Add all elements to `percentages` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationUpdateParams.Tipping.Nok#percentages} for the field documentation. + * ConfigurationUpdateParams.Tipping.Huf#percentages} for the field documentation. */ public Builder addAllPercentage(List elements) { if (this.percentages == null) { @@ -2519,7 +2579,7 @@ public Builder setSmartTipThreshold(Long smartTipThreshold) { @Getter @EqualsAndHashCode(callSuper = false) - public static class Nzd { + public static class Jpy { /** * Map of extra parameters for custom features not available in this client library. The * content in this map is not serialized under this field's {@code @SerializedName} value. @@ -2544,7 +2604,7 @@ public static class Nzd { @SerializedName("smart_tip_threshold") Long smartTipThreshold; - private Nzd( + private Jpy( Map extraParams, List fixedAmounts, List percentages, @@ -2569,15 +2629,15 @@ public static class Builder { private Long smartTipThreshold; /** Finalize and obtain parameter instance from this builder. */ - public ConfigurationUpdateParams.Tipping.Nzd build() { - return new ConfigurationUpdateParams.Tipping.Nzd( + public ConfigurationUpdateParams.Tipping.Jpy build() { + return new ConfigurationUpdateParams.Tipping.Jpy( this.extraParams, this.fixedAmounts, this.percentages, this.smartTipThreshold); } /** * Add a key/value pair to `extraParams` map. A map is initialized for the first * `put/putAll` call, and subsequent calls add additional key/value pairs to the original - * map. See {@link ConfigurationUpdateParams.Tipping.Nzd#extraParams} for the field + * map. See {@link ConfigurationUpdateParams.Tipping.Jpy#extraParams} for the field * documentation. */ public Builder putExtraParam(String key, Object value) { @@ -2591,7 +2651,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 ConfigurationUpdateParams.Tipping.Nzd#extraParams} for the field + * map. See {@link ConfigurationUpdateParams.Tipping.Jpy#extraParams} for the field * documentation. */ public Builder putAllExtraParam(Map map) { @@ -2605,7 +2665,7 @@ public Builder putAllExtraParam(Map map) { /** * Add an element to `fixedAmounts` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationUpdateParams.Tipping.Nzd#fixedAmounts} for the field documentation. + * ConfigurationUpdateParams.Tipping.Jpy#fixedAmounts} for the field documentation. */ public Builder addFixedAmount(Long element) { if (this.fixedAmounts == null) { @@ -2618,7 +2678,7 @@ public Builder addFixedAmount(Long element) { /** * Add all elements to `fixedAmounts` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationUpdateParams.Tipping.Nzd#fixedAmounts} for the field documentation. + * ConfigurationUpdateParams.Tipping.Jpy#fixedAmounts} for the field documentation. */ public Builder addAllFixedAmount(List elements) { if (this.fixedAmounts == null) { @@ -2631,7 +2691,7 @@ public Builder addAllFixedAmount(List elements) { /** * Add an element to `percentages` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationUpdateParams.Tipping.Nzd#percentages} for the field documentation. + * ConfigurationUpdateParams.Tipping.Jpy#percentages} for the field documentation. */ public Builder addPercentage(Long element) { if (this.percentages == null) { @@ -2644,7 +2704,7 @@ public Builder addPercentage(Long element) { /** * Add all elements to `percentages` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationUpdateParams.Tipping.Nzd#percentages} for the field documentation. + * ConfigurationUpdateParams.Tipping.Jpy#percentages} for the field documentation. */ public Builder addAllPercentage(List elements) { if (this.percentages == null) { @@ -2667,7 +2727,7 @@ public Builder setSmartTipThreshold(Long smartTipThreshold) { @Getter @EqualsAndHashCode(callSuper = false) - public static class Pln { + public static class Myr { /** * Map of extra parameters for custom features not available in this client library. The * content in this map is not serialized under this field's {@code @SerializedName} value. @@ -2692,7 +2752,7 @@ public static class Pln { @SerializedName("smart_tip_threshold") Long smartTipThreshold; - private Pln( + private Myr( Map extraParams, List fixedAmounts, List percentages, @@ -2717,15 +2777,15 @@ public static class Builder { private Long smartTipThreshold; /** Finalize and obtain parameter instance from this builder. */ - public ConfigurationUpdateParams.Tipping.Pln build() { - return new ConfigurationUpdateParams.Tipping.Pln( + public ConfigurationUpdateParams.Tipping.Myr build() { + return new ConfigurationUpdateParams.Tipping.Myr( this.extraParams, this.fixedAmounts, this.percentages, this.smartTipThreshold); } /** * Add a key/value pair to `extraParams` map. A map is initialized for the first * `put/putAll` call, and subsequent calls add additional key/value pairs to the original - * map. See {@link ConfigurationUpdateParams.Tipping.Pln#extraParams} for the field + * map. See {@link ConfigurationUpdateParams.Tipping.Myr#extraParams} for the field * documentation. */ public Builder putExtraParam(String key, Object value) { @@ -2739,7 +2799,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 ConfigurationUpdateParams.Tipping.Pln#extraParams} for the field + * map. See {@link ConfigurationUpdateParams.Tipping.Myr#extraParams} for the field * documentation. */ public Builder putAllExtraParam(Map map) { @@ -2753,7 +2813,7 @@ public Builder putAllExtraParam(Map map) { /** * Add an element to `fixedAmounts` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationUpdateParams.Tipping.Pln#fixedAmounts} for the field documentation. + * ConfigurationUpdateParams.Tipping.Myr#fixedAmounts} for the field documentation. */ public Builder addFixedAmount(Long element) { if (this.fixedAmounts == null) { @@ -2766,7 +2826,7 @@ public Builder addFixedAmount(Long element) { /** * Add all elements to `fixedAmounts` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationUpdateParams.Tipping.Pln#fixedAmounts} for the field documentation. + * ConfigurationUpdateParams.Tipping.Myr#fixedAmounts} for the field documentation. */ public Builder addAllFixedAmount(List elements) { if (this.fixedAmounts == null) { @@ -2779,7 +2839,7 @@ public Builder addAllFixedAmount(List elements) { /** * Add an element to `percentages` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationUpdateParams.Tipping.Pln#percentages} for the field documentation. + * ConfigurationUpdateParams.Tipping.Myr#percentages} for the field documentation. */ public Builder addPercentage(Long element) { if (this.percentages == null) { @@ -2792,7 +2852,599 @@ public Builder addPercentage(Long element) { /** * Add all elements to `percentages` list. A list is initialized for the first `add/addAll` * call, and subsequent calls adds additional elements to the original list. See {@link - * ConfigurationUpdateParams.Tipping.Pln#percentages} for the field documentation. + * ConfigurationUpdateParams.Tipping.Myr#percentages} for the field documentation. + */ + public Builder addAllPercentage(List elements) { + if (this.percentages == null) { + this.percentages = new ArrayList<>(); + } + this.percentages.addAll(elements); + return this; + } + + /** + * Below this amount, fixed amounts will be displayed; above it, percentages will be + * displayed. + */ + public Builder setSmartTipThreshold(Long smartTipThreshold) { + this.smartTipThreshold = smartTipThreshold; + return this; + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Nok { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-level field (serialized) + * name in this param object. Effectively, this map is flattened to its parent instance. + */ + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** Fixed amounts displayed when collecting a tip. */ + @SerializedName("fixed_amounts") + List fixedAmounts; + + /** Percentages displayed when collecting a tip. */ + @SerializedName("percentages") + List percentages; + + /** + * Below this amount, fixed amounts will be displayed; above it, percentages will be + * displayed. + */ + @SerializedName("smart_tip_threshold") + Long smartTipThreshold; + + private Nok( + Map extraParams, + List fixedAmounts, + List percentages, + Long smartTipThreshold) { + this.extraParams = extraParams; + this.fixedAmounts = fixedAmounts; + this.percentages = percentages; + this.smartTipThreshold = smartTipThreshold; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private List fixedAmounts; + + private List percentages; + + private Long smartTipThreshold; + + /** Finalize and obtain parameter instance from this builder. */ + public ConfigurationUpdateParams.Tipping.Nok build() { + return new ConfigurationUpdateParams.Tipping.Nok( + this.extraParams, this.fixedAmounts, this.percentages, this.smartTipThreshold); + } + + /** + * Add a key/value pair to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link ConfigurationUpdateParams.Tipping.Nok#extraParams} for the field + * documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link ConfigurationUpdateParams.Tipping.Nok#extraParams} for the field + * documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** + * Add an element to `fixedAmounts` list. A list is initialized for the first `add/addAll` + * call, and subsequent calls adds additional elements to the original list. See {@link + * ConfigurationUpdateParams.Tipping.Nok#fixedAmounts} for the field documentation. + */ + public Builder addFixedAmount(Long element) { + if (this.fixedAmounts == null) { + this.fixedAmounts = new ArrayList<>(); + } + this.fixedAmounts.add(element); + return this; + } + + /** + * Add all elements to `fixedAmounts` list. A list is initialized for the first `add/addAll` + * call, and subsequent calls adds additional elements to the original list. See {@link + * ConfigurationUpdateParams.Tipping.Nok#fixedAmounts} for the field documentation. + */ + public Builder addAllFixedAmount(List elements) { + if (this.fixedAmounts == null) { + this.fixedAmounts = new ArrayList<>(); + } + this.fixedAmounts.addAll(elements); + return this; + } + + /** + * Add an element to `percentages` list. A list is initialized for the first `add/addAll` + * call, and subsequent calls adds additional elements to the original list. See {@link + * ConfigurationUpdateParams.Tipping.Nok#percentages} for the field documentation. + */ + public Builder addPercentage(Long element) { + if (this.percentages == null) { + this.percentages = new ArrayList<>(); + } + this.percentages.add(element); + return this; + } + + /** + * Add all elements to `percentages` list. A list is initialized for the first `add/addAll` + * call, and subsequent calls adds additional elements to the original list. See {@link + * ConfigurationUpdateParams.Tipping.Nok#percentages} for the field documentation. + */ + public Builder addAllPercentage(List elements) { + if (this.percentages == null) { + this.percentages = new ArrayList<>(); + } + this.percentages.addAll(elements); + return this; + } + + /** + * Below this amount, fixed amounts will be displayed; above it, percentages will be + * displayed. + */ + public Builder setSmartTipThreshold(Long smartTipThreshold) { + this.smartTipThreshold = smartTipThreshold; + return this; + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Nzd { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-level field (serialized) + * name in this param object. Effectively, this map is flattened to its parent instance. + */ + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** Fixed amounts displayed when collecting a tip. */ + @SerializedName("fixed_amounts") + List fixedAmounts; + + /** Percentages displayed when collecting a tip. */ + @SerializedName("percentages") + List percentages; + + /** + * Below this amount, fixed amounts will be displayed; above it, percentages will be + * displayed. + */ + @SerializedName("smart_tip_threshold") + Long smartTipThreshold; + + private Nzd( + Map extraParams, + List fixedAmounts, + List percentages, + Long smartTipThreshold) { + this.extraParams = extraParams; + this.fixedAmounts = fixedAmounts; + this.percentages = percentages; + this.smartTipThreshold = smartTipThreshold; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private List fixedAmounts; + + private List percentages; + + private Long smartTipThreshold; + + /** Finalize and obtain parameter instance from this builder. */ + public ConfigurationUpdateParams.Tipping.Nzd build() { + return new ConfigurationUpdateParams.Tipping.Nzd( + this.extraParams, this.fixedAmounts, this.percentages, this.smartTipThreshold); + } + + /** + * Add a key/value pair to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link ConfigurationUpdateParams.Tipping.Nzd#extraParams} for the field + * documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link ConfigurationUpdateParams.Tipping.Nzd#extraParams} for the field + * documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** + * Add an element to `fixedAmounts` list. A list is initialized for the first `add/addAll` + * call, and subsequent calls adds additional elements to the original list. See {@link + * ConfigurationUpdateParams.Tipping.Nzd#fixedAmounts} for the field documentation. + */ + public Builder addFixedAmount(Long element) { + if (this.fixedAmounts == null) { + this.fixedAmounts = new ArrayList<>(); + } + this.fixedAmounts.add(element); + return this; + } + + /** + * Add all elements to `fixedAmounts` list. A list is initialized for the first `add/addAll` + * call, and subsequent calls adds additional elements to the original list. See {@link + * ConfigurationUpdateParams.Tipping.Nzd#fixedAmounts} for the field documentation. + */ + public Builder addAllFixedAmount(List elements) { + if (this.fixedAmounts == null) { + this.fixedAmounts = new ArrayList<>(); + } + this.fixedAmounts.addAll(elements); + return this; + } + + /** + * Add an element to `percentages` list. A list is initialized for the first `add/addAll` + * call, and subsequent calls adds additional elements to the original list. See {@link + * ConfigurationUpdateParams.Tipping.Nzd#percentages} for the field documentation. + */ + public Builder addPercentage(Long element) { + if (this.percentages == null) { + this.percentages = new ArrayList<>(); + } + this.percentages.add(element); + return this; + } + + /** + * Add all elements to `percentages` list. A list is initialized for the first `add/addAll` + * call, and subsequent calls adds additional elements to the original list. See {@link + * ConfigurationUpdateParams.Tipping.Nzd#percentages} for the field documentation. + */ + public Builder addAllPercentage(List elements) { + if (this.percentages == null) { + this.percentages = new ArrayList<>(); + } + this.percentages.addAll(elements); + return this; + } + + /** + * Below this amount, fixed amounts will be displayed; above it, percentages will be + * displayed. + */ + public Builder setSmartTipThreshold(Long smartTipThreshold) { + this.smartTipThreshold = smartTipThreshold; + return this; + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Pln { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-level field (serialized) + * name in this param object. Effectively, this map is flattened to its parent instance. + */ + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** Fixed amounts displayed when collecting a tip. */ + @SerializedName("fixed_amounts") + List fixedAmounts; + + /** Percentages displayed when collecting a tip. */ + @SerializedName("percentages") + List percentages; + + /** + * Below this amount, fixed amounts will be displayed; above it, percentages will be + * displayed. + */ + @SerializedName("smart_tip_threshold") + Long smartTipThreshold; + + private Pln( + Map extraParams, + List fixedAmounts, + List percentages, + Long smartTipThreshold) { + this.extraParams = extraParams; + this.fixedAmounts = fixedAmounts; + this.percentages = percentages; + this.smartTipThreshold = smartTipThreshold; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private List fixedAmounts; + + private List percentages; + + private Long smartTipThreshold; + + /** Finalize and obtain parameter instance from this builder. */ + public ConfigurationUpdateParams.Tipping.Pln build() { + return new ConfigurationUpdateParams.Tipping.Pln( + this.extraParams, this.fixedAmounts, this.percentages, this.smartTipThreshold); + } + + /** + * Add a key/value pair to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link ConfigurationUpdateParams.Tipping.Pln#extraParams} for the field + * documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link ConfigurationUpdateParams.Tipping.Pln#extraParams} for the field + * documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** + * Add an element to `fixedAmounts` list. A list is initialized for the first `add/addAll` + * call, and subsequent calls adds additional elements to the original list. See {@link + * ConfigurationUpdateParams.Tipping.Pln#fixedAmounts} for the field documentation. + */ + public Builder addFixedAmount(Long element) { + if (this.fixedAmounts == null) { + this.fixedAmounts = new ArrayList<>(); + } + this.fixedAmounts.add(element); + return this; + } + + /** + * Add all elements to `fixedAmounts` list. A list is initialized for the first `add/addAll` + * call, and subsequent calls adds additional elements to the original list. See {@link + * ConfigurationUpdateParams.Tipping.Pln#fixedAmounts} for the field documentation. + */ + public Builder addAllFixedAmount(List elements) { + if (this.fixedAmounts == null) { + this.fixedAmounts = new ArrayList<>(); + } + this.fixedAmounts.addAll(elements); + return this; + } + + /** + * Add an element to `percentages` list. A list is initialized for the first `add/addAll` + * call, and subsequent calls adds additional elements to the original list. See {@link + * ConfigurationUpdateParams.Tipping.Pln#percentages} for the field documentation. + */ + public Builder addPercentage(Long element) { + if (this.percentages == null) { + this.percentages = new ArrayList<>(); + } + this.percentages.add(element); + return this; + } + + /** + * Add all elements to `percentages` list. A list is initialized for the first `add/addAll` + * call, and subsequent calls adds additional elements to the original list. See {@link + * ConfigurationUpdateParams.Tipping.Pln#percentages} for the field documentation. + */ + public Builder addAllPercentage(List elements) { + if (this.percentages == null) { + this.percentages = new ArrayList<>(); + } + this.percentages.addAll(elements); + return this; + } + + /** + * Below this amount, fixed amounts will be displayed; above it, percentages will be + * displayed. + */ + public Builder setSmartTipThreshold(Long smartTipThreshold) { + this.smartTipThreshold = smartTipThreshold; + return this; + } + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Ron { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-level field (serialized) + * name in this param object. Effectively, this map is flattened to its parent instance. + */ + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** Fixed amounts displayed when collecting a tip. */ + @SerializedName("fixed_amounts") + List fixedAmounts; + + /** Percentages displayed when collecting a tip. */ + @SerializedName("percentages") + List percentages; + + /** + * Below this amount, fixed amounts will be displayed; above it, percentages will be + * displayed. + */ + @SerializedName("smart_tip_threshold") + Long smartTipThreshold; + + private Ron( + Map extraParams, + List fixedAmounts, + List percentages, + Long smartTipThreshold) { + this.extraParams = extraParams; + this.fixedAmounts = fixedAmounts; + this.percentages = percentages; + this.smartTipThreshold = smartTipThreshold; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private List fixedAmounts; + + private List percentages; + + private Long smartTipThreshold; + + /** Finalize and obtain parameter instance from this builder. */ + public ConfigurationUpdateParams.Tipping.Ron build() { + return new ConfigurationUpdateParams.Tipping.Ron( + this.extraParams, this.fixedAmounts, this.percentages, this.smartTipThreshold); + } + + /** + * Add a key/value pair to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link ConfigurationUpdateParams.Tipping.Ron#extraParams} for the field + * documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link ConfigurationUpdateParams.Tipping.Ron#extraParams} for the field + * documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** + * Add an element to `fixedAmounts` list. A list is initialized for the first `add/addAll` + * call, and subsequent calls adds additional elements to the original list. See {@link + * ConfigurationUpdateParams.Tipping.Ron#fixedAmounts} for the field documentation. + */ + public Builder addFixedAmount(Long element) { + if (this.fixedAmounts == null) { + this.fixedAmounts = new ArrayList<>(); + } + this.fixedAmounts.add(element); + return this; + } + + /** + * Add all elements to `fixedAmounts` list. A list is initialized for the first `add/addAll` + * call, and subsequent calls adds additional elements to the original list. See {@link + * ConfigurationUpdateParams.Tipping.Ron#fixedAmounts} for the field documentation. + */ + public Builder addAllFixedAmount(List elements) { + if (this.fixedAmounts == null) { + this.fixedAmounts = new ArrayList<>(); + } + this.fixedAmounts.addAll(elements); + return this; + } + + /** + * Add an element to `percentages` list. A list is initialized for the first `add/addAll` + * call, and subsequent calls adds additional elements to the original list. See {@link + * ConfigurationUpdateParams.Tipping.Ron#percentages} for the field documentation. + */ + public Builder addPercentage(Long element) { + if (this.percentages == null) { + this.percentages = new ArrayList<>(); + } + this.percentages.add(element); + return this; + } + + /** + * Add all elements to `percentages` list. A list is initialized for the first `add/addAll` + * call, and subsequent calls adds additional elements to the original list. See {@link + * ConfigurationUpdateParams.Tipping.Ron#percentages} for the field documentation. */ public Builder addAllPercentage(List elements) { if (this.percentages == null) { diff --git a/src/main/java/com/stripe/param/terminal/OnboardingLinkCreateParams.java b/src/main/java/com/stripe/param/terminal/OnboardingLinkCreateParams.java new file mode 100644 index 00000000000..e0d2b2b5479 --- /dev/null +++ b/src/main/java/com/stripe/param/terminal/OnboardingLinkCreateParams.java @@ -0,0 +1,323 @@ +// File generated from our OpenAPI spec +package com.stripe.param.terminal; + +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 OnboardingLinkCreateParams 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; + + /** Required. Specific fields needed to generate the desired link type. */ + @SerializedName("link_options") + LinkOptions linkOptions; + + /** Required. The type of link being generated. */ + @SerializedName("link_type") + LinkType linkType; + + /** Stripe account ID to generate the link for. */ + @SerializedName("on_behalf_of") + String onBehalfOf; + + private OnboardingLinkCreateParams( + List expand, + Map extraParams, + LinkOptions linkOptions, + LinkType linkType, + String onBehalfOf) { + this.expand = expand; + this.extraParams = extraParams; + this.linkOptions = linkOptions; + this.linkType = linkType; + this.onBehalfOf = onBehalfOf; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private List expand; + + private Map extraParams; + + private LinkOptions linkOptions; + + private LinkType linkType; + + private String onBehalfOf; + + /** Finalize and obtain parameter instance from this builder. */ + public OnboardingLinkCreateParams build() { + return new OnboardingLinkCreateParams( + this.expand, this.extraParams, this.linkOptions, this.linkType, this.onBehalfOf); + } + + /** + * 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 + * OnboardingLinkCreateParams#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 + * OnboardingLinkCreateParams#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 + * OnboardingLinkCreateParams#extraParams} for the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original map. + * See {@link OnboardingLinkCreateParams#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. Specific fields needed to generate the desired link type. */ + public Builder setLinkOptions(OnboardingLinkCreateParams.LinkOptions linkOptions) { + this.linkOptions = linkOptions; + return this; + } + + /** Required. The type of link being generated. */ + public Builder setLinkType(OnboardingLinkCreateParams.LinkType linkType) { + this.linkType = linkType; + return this; + } + + /** Stripe account ID to generate the link for. */ + public Builder setOnBehalfOf(String onBehalfOf) { + this.onBehalfOf = onBehalfOf; + return this; + } + } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class LinkOptions { + /** The options associated with the Apple Terms and Conditions link type. */ + @SerializedName("apple_terms_and_conditions") + AppleTermsAndConditions appleTermsAndConditions; + + /** + * Map of extra parameters for custom features not available in this client library. The content + * in this map is not serialized under this field's {@code @SerializedName} value. Instead, each + * key/value pair is serialized as if the key is a root-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 LinkOptions( + AppleTermsAndConditions appleTermsAndConditions, Map extraParams) { + this.appleTermsAndConditions = appleTermsAndConditions; + this.extraParams = extraParams; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private AppleTermsAndConditions appleTermsAndConditions; + + private Map extraParams; + + /** Finalize and obtain parameter instance from this builder. */ + public OnboardingLinkCreateParams.LinkOptions build() { + return new OnboardingLinkCreateParams.LinkOptions( + this.appleTermsAndConditions, this.extraParams); + } + + /** The options associated with the Apple Terms and Conditions link type. */ + public Builder setAppleTermsAndConditions( + OnboardingLinkCreateParams.LinkOptions.AppleTermsAndConditions appleTermsAndConditions) { + this.appleTermsAndConditions = appleTermsAndConditions; + 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 + * OnboardingLinkCreateParams.LinkOptions#extraParams} for the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original map. + * See {@link OnboardingLinkCreateParams.LinkOptions#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 AppleTermsAndConditions { + /** Whether the link should also support users relinking their Apple account. */ + @SerializedName("allow_relinking") + Boolean allowRelinking; + + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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 business name of the merchant accepting Apple's Terms and + * Conditions. + */ + @SerializedName("merchant_display_name") + String merchantDisplayName; + + private AppleTermsAndConditions( + Boolean allowRelinking, Map extraParams, String merchantDisplayName) { + this.allowRelinking = allowRelinking; + this.extraParams = extraParams; + this.merchantDisplayName = merchantDisplayName; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Boolean allowRelinking; + + private Map extraParams; + + private String merchantDisplayName; + + /** Finalize and obtain parameter instance from this builder. */ + public OnboardingLinkCreateParams.LinkOptions.AppleTermsAndConditions build() { + return new OnboardingLinkCreateParams.LinkOptions.AppleTermsAndConditions( + this.allowRelinking, this.extraParams, this.merchantDisplayName); + } + + /** Whether the link should also support users relinking their Apple account. */ + public Builder setAllowRelinking(Boolean allowRelinking) { + this.allowRelinking = allowRelinking; + 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 + * OnboardingLinkCreateParams.LinkOptions.AppleTermsAndConditions#extraParams} for the field + * documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link + * OnboardingLinkCreateParams.LinkOptions.AppleTermsAndConditions#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 business name of the merchant accepting Apple's Terms and + * Conditions. + */ + public Builder setMerchantDisplayName(String merchantDisplayName) { + this.merchantDisplayName = merchantDisplayName; + return this; + } + } + } + } + + public enum LinkType implements ApiRequestParams.EnumParam { + @SerializedName("apple_terms_and_conditions") + APPLE_TERMS_AND_CONDITIONS("apple_terms_and_conditions"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + LinkType(String value) { + this.value = value; + } + } +} 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 2358dd9491c..97b60bc1b50 100644 --- a/src/main/java/com/stripe/param/v2/core/AccountCreateParams.java +++ b/src/main/java/com/stripe/param/v2/core/AccountCreateParams.java @@ -12275,9 +12275,14 @@ public static class TermsOfService { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - private TermsOfService(Account account, Map extraParams) { + /** Details on the Account's acceptance of Treasury-specific terms of service. */ + @SerializedName("storer") + Storer storer; + + private TermsOfService(Account account, Map extraParams, Storer storer) { this.account = account; this.extraParams = extraParams; + this.storer = storer; } public static Builder builder() { @@ -12289,10 +12294,12 @@ public static class Builder { private Map extraParams; + private Storer storer; + /** Finalize and obtain parameter instance from this builder. */ public AccountCreateParams.Identity.Attestations.TermsOfService build() { return new AccountCreateParams.Identity.Attestations.TermsOfService( - this.account, this.extraParams); + this.account, this.extraParams, this.storer); } /** @@ -12333,6 +12340,13 @@ public Builder putAllExtraParam(Map map) { this.extraParams.putAll(map); return this; } + + /** Details on the Account's acceptance of Treasury-specific terms of service. */ + public Builder setStorer( + AccountCreateParams.Identity.Attestations.TermsOfService.Storer storer) { + this.storer = storer; + return this; + } } @Getter @@ -12456,6 +12470,128 @@ public Builder setUserAgent(String userAgent) { } } } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Storer { + /** + * Required. The time when the Account's representative accepted the + * terms of service. Represented as a RFC 3339 date & time UTC value in millisecond + * precision, for example: 2022-09-18T13:22:18.123Z. + */ + @SerializedName("date") + Instant date; + + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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 IP address from which the Account's representative + * accepted the terms of service. + */ + @SerializedName("ip") + String ip; + + /** + * The user agent of the browser from which the Account's representative accepted the + * terms of service. + */ + @SerializedName("user_agent") + String userAgent; + + private Storer( + Instant date, Map extraParams, String ip, String userAgent) { + this.date = date; + this.extraParams = extraParams; + this.ip = ip; + this.userAgent = userAgent; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Instant date; + + private Map extraParams; + + private String ip; + + private String userAgent; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountCreateParams.Identity.Attestations.TermsOfService.Storer build() { + return new AccountCreateParams.Identity.Attestations.TermsOfService.Storer( + this.date, this.extraParams, this.ip, this.userAgent); + } + + /** + * Required. The time when the Account's representative accepted the + * terms of service. Represented as a RFC 3339 date & time UTC value in millisecond + * precision, for example: 2022-09-18T13:22:18.123Z. + */ + public Builder setDate(Instant date) { + this.date = date; + 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.Identity.Attestations.TermsOfService.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; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the + * original map. See {@link + * AccountCreateParams.Identity.Attestations.TermsOfService.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; + } + + /** + * Required. The IP address from which the Account's representative + * accepted the terms of service. + */ + public Builder setIp(String ip) { + this.ip = ip; + return this; + } + + /** + * The user agent of the browser from which the Account's representative accepted the + * terms of service. + */ + public Builder setUserAgent(String userAgent) { + this.userAgent = userAgent; + return this; + } + } + } } } diff --git a/src/main/java/com/stripe/param/v2/core/AccountLinkCreateParams.java b/src/main/java/com/stripe/param/v2/core/AccountLinkCreateParams.java index 5c6048722db..e7408b5612a 100644 --- a/src/main/java/com/stripe/param/v2/core/AccountLinkCreateParams.java +++ b/src/main/java/com/stripe/param/v2/core/AccountLinkCreateParams.java @@ -196,9 +196,16 @@ public Builder setType(AccountLinkCreateParams.UseCase.Type type) { @EqualsAndHashCode(callSuper = false) public static class AccountOnboarding { /** - * Required. Open Enum. A v2/account can be configured to enable certain - * functionality. The configuration param targets the v2/account_link to collect information - * for the specified v2/account configuration/s. + * Specifies the requirements that Stripe collects from v2/core/accounts in the Onboarding + * flow. + */ + @SerializedName("collection_options") + CollectionOptions collectionOptions; + + /** + * Required. Open Enum. A v2/core/account can be configured to enable certain + * functionality. The configuration param targets the v2/core/account_link to collect + * information for the specified v2/core/account configuration/s. */ @SerializedName("configurations") List configurations; @@ -229,10 +236,12 @@ public static class AccountOnboarding { String returnUrl; private AccountOnboarding( + CollectionOptions collectionOptions, List configurations, Map extraParams, String refreshUrl, String returnUrl) { + this.collectionOptions = collectionOptions; this.configurations = configurations; this.extraParams = extraParams; this.refreshUrl = refreshUrl; @@ -244,6 +253,8 @@ public static Builder builder() { } public static class Builder { + private CollectionOptions collectionOptions; + private List configurations; @@ -256,7 +267,21 @@ public static class Builder { /** Finalize and obtain parameter instance from this builder. */ public AccountLinkCreateParams.UseCase.AccountOnboarding build() { return new AccountLinkCreateParams.UseCase.AccountOnboarding( - this.configurations, this.extraParams, this.refreshUrl, this.returnUrl); + this.collectionOptions, + this.configurations, + this.extraParams, + this.refreshUrl, + this.returnUrl); + } + + /** + * Specifies the requirements that Stripe collects from v2/core/accounts in the Onboarding + * flow. + */ + public Builder setCollectionOptions( + AccountLinkCreateParams.UseCase.AccountOnboarding.CollectionOptions collectionOptions) { + this.collectionOptions = collectionOptions; + return this; } /** @@ -338,9 +363,156 @@ public Builder setReturnUrl(String returnUrl) { } } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class CollectionOptions { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-level field + * (serialized) name in this param object. Effectively, this map is flattened to its parent + * instance. + */ + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** + * Specifies whether the platform collects only currently_due requirements ({@code + * currently_due}) or both currently_due and eventually_due requirements ({@code + * eventually_due}). If you don’t specify collection_options, the default value is + * currently_due. + */ + @SerializedName("fields") + Fields fields; + + /** + * Specifies whether the platform collects future_requirements in addition to requirements + * in Connect Onboarding. The default value is {@code omit}. + */ + @SerializedName("future_requirements") + FutureRequirements futureRequirements; + + private CollectionOptions( + Map extraParams, Fields fields, FutureRequirements futureRequirements) { + this.extraParams = extraParams; + this.fields = fields; + this.futureRequirements = futureRequirements; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Fields fields; + + private FutureRequirements futureRequirements; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountLinkCreateParams.UseCase.AccountOnboarding.CollectionOptions build() { + return new AccountLinkCreateParams.UseCase.AccountOnboarding.CollectionOptions( + this.extraParams, this.fields, this.futureRequirements); + } + + /** + * Add a key/value pair to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link + * AccountLinkCreateParams.UseCase.AccountOnboarding.CollectionOptions#extraParams} for + * the field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link + * AccountLinkCreateParams.UseCase.AccountOnboarding.CollectionOptions#extraParams} for + * the field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** + * Specifies whether the platform collects only currently_due requirements ({@code + * currently_due}) or both currently_due and eventually_due requirements ({@code + * eventually_due}). If you don’t specify collection_options, the default value is + * currently_due. + */ + public Builder setFields( + AccountLinkCreateParams.UseCase.AccountOnboarding.CollectionOptions.Fields fields) { + this.fields = fields; + return this; + } + + /** + * Specifies whether the platform collects future_requirements in addition to requirements + * in Connect Onboarding. The default value is {@code omit}. + */ + public Builder setFutureRequirements( + AccountLinkCreateParams.UseCase.AccountOnboarding.CollectionOptions.FutureRequirements + futureRequirements) { + this.futureRequirements = futureRequirements; + return this; + } + } + + public enum Fields implements ApiRequestParams.EnumParam { + @SerializedName("currently_due") + CURRENTLY_DUE("currently_due"), + + @SerializedName("eventually_due") + EVENTUALLY_DUE("eventually_due"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + Fields(String value) { + this.value = value; + } + } + + public enum FutureRequirements implements ApiRequestParams.EnumParam { + @SerializedName("include") + INCLUDE("include"), + + @SerializedName("omit") + OMIT("omit"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + FutureRequirements(String value) { + this.value = value; + } + } + } + public enum Configuration implements ApiRequestParams.EnumParam { + @SerializedName("customer") + CUSTOMER("customer"), + + @SerializedName("merchant") + MERCHANT("merchant"), + @SerializedName("recipient") - RECIPIENT("recipient"); + RECIPIENT("recipient"), + + @SerializedName("storer") + STORER("storer"); @Getter(onMethod_ = {@Override}) private final String value; @@ -354,6 +526,13 @@ public enum Configuration implements ApiRequestParams.EnumParam { @Getter @EqualsAndHashCode(callSuper = false) public static class AccountUpdate { + /** + * Specifies the requirements that Stripe collects from v2/core/accounts in the Onboarding + * flow. + */ + @SerializedName("collection_options") + CollectionOptions collectionOptions; + /** * Required. Open Enum. A v2/account can be configured to enable certain * functionality. The configuration param targets the v2/account_link to collect information @@ -388,10 +567,12 @@ public static class AccountUpdate { String returnUrl; private AccountUpdate( + CollectionOptions collectionOptions, List configurations, Map extraParams, String refreshUrl, String returnUrl) { + this.collectionOptions = collectionOptions; this.configurations = configurations; this.extraParams = extraParams; this.refreshUrl = refreshUrl; @@ -403,6 +584,8 @@ public static Builder builder() { } public static class Builder { + private CollectionOptions collectionOptions; + private List configurations; private Map extraParams; @@ -414,7 +597,21 @@ public static class Builder { /** Finalize and obtain parameter instance from this builder. */ public AccountLinkCreateParams.UseCase.AccountUpdate build() { return new AccountLinkCreateParams.UseCase.AccountUpdate( - this.configurations, this.extraParams, this.refreshUrl, this.returnUrl); + this.collectionOptions, + this.configurations, + this.extraParams, + this.refreshUrl, + this.returnUrl); + } + + /** + * Specifies the requirements that Stripe collects from v2/core/accounts in the Onboarding + * flow. + */ + public Builder setCollectionOptions( + AccountLinkCreateParams.UseCase.AccountUpdate.CollectionOptions collectionOptions) { + this.collectionOptions = collectionOptions; + return this; } /** @@ -496,9 +693,156 @@ public Builder setReturnUrl(String returnUrl) { } } + @Getter + @EqualsAndHashCode(callSuper = false) + public static class CollectionOptions { + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-level field + * (serialized) name in this param object. Effectively, this map is flattened to its parent + * instance. + */ + @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) + Map extraParams; + + /** + * Specifies whether the platform collects only currently_due requirements ({@code + * currently_due}) or both currently_due and eventually_due requirements ({@code + * eventually_due}). If you don’t specify collection_options, the default value is + * currently_due. + */ + @SerializedName("fields") + Fields fields; + + /** + * Specifies whether the platform collects future_requirements in addition to requirements + * in Connect Onboarding. The default value is {@code omit}. + */ + @SerializedName("future_requirements") + FutureRequirements futureRequirements; + + private CollectionOptions( + Map extraParams, Fields fields, FutureRequirements futureRequirements) { + this.extraParams = extraParams; + this.fields = fields; + this.futureRequirements = futureRequirements; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Map extraParams; + + private Fields fields; + + private FutureRequirements futureRequirements; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountLinkCreateParams.UseCase.AccountUpdate.CollectionOptions build() { + return new AccountLinkCreateParams.UseCase.AccountUpdate.CollectionOptions( + this.extraParams, this.fields, this.futureRequirements); + } + + /** + * Add a key/value pair to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link + * AccountLinkCreateParams.UseCase.AccountUpdate.CollectionOptions#extraParams} for the + * field documentation. + */ + public Builder putExtraParam(String key, Object value) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.put(key, value); + return this; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the original + * map. See {@link + * AccountLinkCreateParams.UseCase.AccountUpdate.CollectionOptions#extraParams} for the + * field documentation. + */ + public Builder putAllExtraParam(Map map) { + if (this.extraParams == null) { + this.extraParams = new HashMap<>(); + } + this.extraParams.putAll(map); + return this; + } + + /** + * Specifies whether the platform collects only currently_due requirements ({@code + * currently_due}) or both currently_due and eventually_due requirements ({@code + * eventually_due}). If you don’t specify collection_options, the default value is + * currently_due. + */ + public Builder setFields( + AccountLinkCreateParams.UseCase.AccountUpdate.CollectionOptions.Fields fields) { + this.fields = fields; + return this; + } + + /** + * Specifies whether the platform collects future_requirements in addition to requirements + * in Connect Onboarding. The default value is {@code omit}. + */ + public Builder setFutureRequirements( + AccountLinkCreateParams.UseCase.AccountUpdate.CollectionOptions.FutureRequirements + futureRequirements) { + this.futureRequirements = futureRequirements; + return this; + } + } + + public enum Fields implements ApiRequestParams.EnumParam { + @SerializedName("currently_due") + CURRENTLY_DUE("currently_due"), + + @SerializedName("eventually_due") + EVENTUALLY_DUE("eventually_due"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + Fields(String value) { + this.value = value; + } + } + + public enum FutureRequirements implements ApiRequestParams.EnumParam { + @SerializedName("include") + INCLUDE("include"), + + @SerializedName("omit") + OMIT("omit"); + + @Getter(onMethod_ = {@Override}) + private final String value; + + FutureRequirements(String value) { + this.value = value; + } + } + } + public enum Configuration implements ApiRequestParams.EnumParam { + @SerializedName("customer") + CUSTOMER("customer"), + + @SerializedName("merchant") + MERCHANT("merchant"), + @SerializedName("recipient") - RECIPIENT("recipient"); + RECIPIENT("recipient"), + + @SerializedName("storer") + STORER("storer"); @Getter(onMethod_ = {@Override}) private final String value; 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 a1980164815..1a3574adc7b 100644 --- a/src/main/java/com/stripe/param/v2/core/AccountUpdateParams.java +++ b/src/main/java/com/stripe/param/v2/core/AccountUpdateParams.java @@ -12687,9 +12687,14 @@ public static class TermsOfService { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - private TermsOfService(Account account, Map extraParams) { + /** Details on the Account's acceptance of Treasury-specific terms of service. */ + @SerializedName("storer") + Storer storer; + + private TermsOfService(Account account, Map extraParams, Storer storer) { this.account = account; this.extraParams = extraParams; + this.storer = storer; } public static Builder builder() { @@ -12701,10 +12706,12 @@ public static class Builder { private Map extraParams; + private Storer storer; + /** Finalize and obtain parameter instance from this builder. */ public AccountUpdateParams.Identity.Attestations.TermsOfService build() { return new AccountUpdateParams.Identity.Attestations.TermsOfService( - this.account, this.extraParams); + this.account, this.extraParams, this.storer); } /** @@ -12745,6 +12752,13 @@ public Builder putAllExtraParam(Map map) { this.extraParams.putAll(map); return this; } + + /** Details on the Account's acceptance of Treasury-specific terms of service. */ + public Builder setStorer( + AccountUpdateParams.Identity.Attestations.TermsOfService.Storer storer) { + this.storer = storer; + return this; + } } @Getter @@ -12883,6 +12897,143 @@ public Builder setUserAgent(EmptyParam userAgent) { } } } + + @Getter + @EqualsAndHashCode(callSuper = false) + public static class Storer { + /** + * The time when the Account's representative accepted the terms of service. Represented + * as a RFC 3339 date & time UTC value in millisecond precision, for example: + * 2022-09-18T13:22:18.123Z. + */ + @SerializedName("date") + Instant date; + + /** + * Map of extra parameters for custom features not available in this client library. The + * content in this map is not serialized under this field's {@code @SerializedName} value. + * Instead, each key/value pair is serialized as if the key is a root-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 IP address from which the Account's representative accepted the terms of service. + */ + @SerializedName("ip") + Object ip; + + /** + * The user agent of the browser from which the Account's representative accepted the + * terms of service. + */ + @SerializedName("user_agent") + Object userAgent; + + private Storer( + Instant date, Map extraParams, Object ip, Object userAgent) { + this.date = date; + this.extraParams = extraParams; + this.ip = ip; + this.userAgent = userAgent; + } + + public static Builder builder() { + return new Builder(); + } + + public static class Builder { + private Instant date; + + private Map extraParams; + + private Object ip; + + private Object userAgent; + + /** Finalize and obtain parameter instance from this builder. */ + public AccountUpdateParams.Identity.Attestations.TermsOfService.Storer build() { + return new AccountUpdateParams.Identity.Attestations.TermsOfService.Storer( + this.date, this.extraParams, this.ip, this.userAgent); + } + + /** + * The time when the Account's representative accepted the terms of service. Represented + * as a RFC 3339 date & time UTC value in millisecond precision, for example: + * 2022-09-18T13:22:18.123Z. + */ + public Builder setDate(Instant date) { + this.date = date; + 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.Identity.Attestations.TermsOfService.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; + } + + /** + * Add all map key/value pairs to `extraParams` map. A map is initialized for the first + * `put/putAll` call, and subsequent calls add additional key/value pairs to the + * original map. See {@link + * AccountUpdateParams.Identity.Attestations.TermsOfService.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; + } + + /** + * The IP address from which the Account's representative accepted the terms of service. + */ + public Builder setIp(String ip) { + this.ip = ip; + return this; + } + + /** + * The IP address from which the Account's representative accepted the terms of service. + */ + public Builder setIp(EmptyParam ip) { + this.ip = ip; + return this; + } + + /** + * The user agent of the browser from which the Account's representative accepted the + * terms of service. + */ + public Builder setUserAgent(String userAgent) { + this.userAgent = userAgent; + return this; + } + + /** + * The user agent of the browser from which the Account's representative accepted the + * terms of service. + */ + public Builder setUserAgent(EmptyParam userAgent) { + this.userAgent = userAgent; + return this; + } + } + } } } diff --git a/src/main/java/com/stripe/param/v2/payments/OffSessionPaymentCreateParams.java b/src/main/java/com/stripe/param/v2/payments/OffSessionPaymentCreateParams.java index f93bc7c6988..740bedd974a 100644 --- a/src/main/java/com/stripe/param/v2/payments/OffSessionPaymentCreateParams.java +++ b/src/main/java/com/stripe/param/v2/payments/OffSessionPaymentCreateParams.java @@ -12,15 +12,15 @@ @Getter @EqualsAndHashCode(callSuper = false) public class OffSessionPaymentCreateParams extends ApiRequestParams { - /** Required. Amount you want to collect. */ + /** Required. The “presentment amount” to be collected from the customer. */ @SerializedName("amount") Amount amount; - /** Required. The frequency of the OSP. */ + /** Required. The frequency of the underlying payment. */ @SerializedName("cadence") Cadence cadence; - /** Required. Customer that owns the provided payment method. */ + /** Required. ID of the Customer to which this OffSessionPayment belongs. */ @SerializedName("customer") String customer; @@ -33,38 +33,56 @@ public class OffSessionPaymentCreateParams extends ApiRequestParams { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** Required. Any of your internal data you want to track here. */ + /** + * Required. Set of key-value + * pairs that you can attach to an object. This can be useful for storing additional + * information about the object in a structured format. Learn more about storing + * information in metadata. + */ @SerializedName("metadata") Map metadata; - /** The OBO merchant you want to use. */ + /** The account (if any) for which the funds of the OffSessionPayment are intended. */ @SerializedName("on_behalf_of") String onBehalfOf; - /** - * Required. Payment method you want to debit. Must be attached to a customer and - * set up for off-session usage. - */ + /** Required. ID of the payment method used in this OffSessionPayment. */ @SerializedName("payment_method") String paymentMethod; - /** How you want stripe to retry the OSP. */ + /** Details about the OffSessionPayment retries. */ @SerializedName("retry_details") RetryDetails retryDetails; - /** String you want to appear on your customer's statement. */ + /** + * Text that appears on the customer’s statement as the statement descriptor for a non-card + * charge. This value overrides the account’s default statement descriptor. For information about + * requirements, including the 22-character limit, see the Statement Descriptor + * docs. + */ @SerializedName("statement_descriptor") String statementDescriptor; - /** Suffix appended to your account level descriptor. */ + /** + * Provides information about a card charge. Concatenated to the account’s statement + * descriptor prefix to form the complete statement descriptor that appears on the customer’s + * statement. + */ @SerializedName("statement_descriptor_suffix") String statementDescriptorSuffix; - /** Test clock to be used for testing your retry handling. Only usable in a sandbox. */ + /** Test clock that can be used to advance the retry attempts in a sandbox. */ @SerializedName("test_clock") String testClock; - /** How you want to transfer the funds to your connected accounts. */ + /** + * The data that automatically creates a Transfer after the payment finalizes. Learn more about + * the use case for connected + * accounts. + */ @SerializedName("transfer_data") TransferData transferData; @@ -141,19 +159,19 @@ public OffSessionPaymentCreateParams build() { this.transferData); } - /** Required. Amount you want to collect. */ + /** Required. The “presentment amount” to be collected from the customer. */ public Builder setAmount(Amount amount) { this.amount = amount; return this; } - /** Required. The frequency of the OSP. */ + /** Required. The frequency of the underlying payment. */ public Builder setCadence(OffSessionPaymentCreateParams.Cadence cadence) { this.cadence = cadence; return this; } - /** Required. Customer that owns the provided payment method. */ + /** Required. ID of the Customer to which this OffSessionPayment belongs. */ public Builder setCustomer(String customer) { this.customer = customer; return this; @@ -211,46 +229,58 @@ public Builder putAllMetadata(Map map) { return this; } - /** The OBO merchant you want to use. */ + /** The account (if any) for which the funds of the OffSessionPayment are intended. */ public Builder setOnBehalfOf(String onBehalfOf) { this.onBehalfOf = onBehalfOf; return this; } - /** - * Required. Payment method you want to debit. Must be attached to a customer - * and set up for off-session usage. - */ + /** Required. ID of the payment method used in this OffSessionPayment. */ public Builder setPaymentMethod(String paymentMethod) { this.paymentMethod = paymentMethod; return this; } - /** How you want stripe to retry the OSP. */ + /** Details about the OffSessionPayment retries. */ public Builder setRetryDetails(OffSessionPaymentCreateParams.RetryDetails retryDetails) { this.retryDetails = retryDetails; return this; } - /** String you want to appear on your customer's statement. */ + /** + * Text that appears on the customer’s statement as the statement descriptor for a non-card + * charge. This value overrides the account’s default statement descriptor. For information + * about requirements, including the 22-character limit, see the Statement Descriptor + * docs. + */ public Builder setStatementDescriptor(String statementDescriptor) { this.statementDescriptor = statementDescriptor; return this; } - /** Suffix appended to your account level descriptor. */ + /** + * Provides information about a card charge. Concatenated to the account’s statement + * descriptor prefix to form the complete statement descriptor that appears on the + * customer’s statement. + */ public Builder setStatementDescriptorSuffix(String statementDescriptorSuffix) { this.statementDescriptorSuffix = statementDescriptorSuffix; return this; } - /** Test clock to be used for testing your retry handling. Only usable in a sandbox. */ + /** Test clock that can be used to advance the retry attempts in a sandbox. */ public Builder setTestClock(String testClock) { this.testClock = testClock; return this; } - /** How you want to transfer the funds to your connected accounts. */ + /** + * The data that automatically creates a Transfer after the payment finalizes. Learn more about + * the use case for connected + * accounts. + */ public Builder setTransferData(OffSessionPaymentCreateParams.TransferData transferData) { this.transferData = transferData; return this; @@ -269,7 +299,10 @@ public static class RetryDetails { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** Required. How you want Stripe to retry the payment. */ + /** + * Required. Indicates the strategy for how you want Stripe to retry the + * payment. + */ @SerializedName("retry_strategy") RetryStrategy retryStrategy; @@ -319,7 +352,10 @@ public Builder putAllExtraParam(Map map) { return this; } - /** Required. How you want Stripe to retry the payment. */ + /** + * Required. Indicates the strategy for how you want Stripe to retry the + * payment. + */ public Builder setRetryStrategy( OffSessionPaymentCreateParams.RetryDetails.RetryStrategy retryStrategy) { this.retryStrategy = retryStrategy; @@ -346,11 +382,21 @@ public enum RetryStrategy implements ApiRequestParams.EnumParam { @Getter @EqualsAndHashCode(callSuper = false) public static class TransferData { - /** Amount in minor units that you want to transfer. */ + /** + * The amount transferred to the destination account. This transfer will occur automatically + * after the payment succeeds. If no amount is specified, by default the entire payment amount + * is transferred to the destination account. The amount must be less than or equal to the amount_requested, + * and must be a positive integer representing how much to transfer in the smallest currency + * unit (e.g., 100 cents to charge $1.00). + */ @SerializedName("amount") Integer amount; - /** Required. ID of the connected account where you want money to go. */ + /** + * Required. The account (if any) that the payment is attributed to for tax + * reporting, and where funds from the payment are transferred to after payment success. + */ @SerializedName("destination") String destination; @@ -386,13 +432,23 @@ public OffSessionPaymentCreateParams.TransferData build() { this.amount, this.destination, this.extraParams); } - /** Amount in minor units that you want to transfer. */ + /** + * The amount transferred to the destination account. This transfer will occur automatically + * after the payment succeeds. If no amount is specified, by default the entire payment amount + * is transferred to the destination account. The amount must be less than or equal to the amount_requested, + * and must be a positive integer representing how much to transfer in the smallest currency + * unit (e.g., 100 cents to charge $1.00). + */ public Builder setAmount(Integer amount) { this.amount = amount; return this; } - /** Required. ID of the connected account where you want money to go. */ + /** + * Required. The account (if any) that the payment is attributed to for tax + * reporting, and where funds from the payment are transferred to after payment success. + */ public Builder setDestination(String destination) { this.destination = destination; return this; diff --git a/src/main/java/com/stripe/param/v2/payments/OffSessionPaymentListParams.java b/src/main/java/com/stripe/param/v2/payments/OffSessionPaymentListParams.java index ab009f69eb4..6131ef337aa 100644 --- a/src/main/java/com/stripe/param/v2/payments/OffSessionPaymentListParams.java +++ b/src/main/java/com/stripe/param/v2/payments/OffSessionPaymentListParams.java @@ -20,7 +20,7 @@ public class OffSessionPaymentListParams extends ApiRequestParams { @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY) Map extraParams; - /** The page size limit, if not provided the default is 20. */ + /** The page size limit. If not provided, the default is 20. */ @SerializedName("limit") Integer limit; @@ -69,7 +69,7 @@ public Builder putAllExtraParam(Map map) { return this; } - /** The page size limit, if not provided the default is 20. */ + /** The page size limit. If not provided, the default is 20. */ public Builder setLimit(Integer limit) { this.limit = limit; return this; diff --git a/src/main/java/com/stripe/service/AccountService.java b/src/main/java/com/stripe/service/AccountService.java index 6f8a5cff199..fb2843acbde 100644 --- a/src/main/java/com/stripe/service/AccountService.java +++ b/src/main/java/com/stripe/service/AccountService.java @@ -29,10 +29,10 @@ public AccountService(StripeResponseGetter responseGetter) { * *

Test-mode accounts can be deleted at any time. * - *

Live-mode accounts where Stripe is responsible for negative account balances cannot be - * deleted, which includes Standard accounts. Live-mode accounts where your platform is liable for - * negative account balances, which includes Custom and Express accounts, can be deleted when all - * balances are zero. + *

Live-mode accounts that have access to the standard dashboard and Stripe is responsible for + * negative account balances cannot be deleted, which includes Standard accounts. All other + * Live-mode accounts, can be deleted when all balances are zero. * *

If you want to delete your own account, use the account information tab in your account @@ -46,10 +46,10 @@ public Account delete(String account) throws StripeException { * *

Test-mode accounts can be deleted at any time. * - *

Live-mode accounts where Stripe is responsible for negative account balances cannot be - * deleted, which includes Standard accounts. Live-mode accounts where your platform is liable for - * negative account balances, which includes Custom and Express accounts, can be deleted when all - * balances are zero. + *

Live-mode accounts that have access to the standard dashboard and Stripe is responsible for + * negative account balances cannot be deleted, which includes Standard accounts. All other + * Live-mode accounts, can be deleted when all balances are zero. * *

If you want to delete your own account, use the account information tab in your account diff --git a/src/main/java/com/stripe/service/BillingService.java b/src/main/java/com/stripe/service/BillingService.java index e92df43aaac..94dff2a2fee 100644 --- a/src/main/java/com/stripe/service/BillingService.java +++ b/src/main/java/com/stripe/service/BillingService.java @@ -33,6 +33,10 @@ public com.stripe.service.billing.MeterEventService meterEvents() { return new com.stripe.service.billing.MeterEventService(this.getResponseGetter()); } + public com.stripe.service.billing.MeterUsageService meterUsage() { + return new com.stripe.service.billing.MeterUsageService(this.getResponseGetter()); + } + public com.stripe.service.billing.MeterService meters() { return new com.stripe.service.billing.MeterService(this.getResponseGetter()); } diff --git a/src/main/java/com/stripe/service/PaymentIntentService.java b/src/main/java/com/stripe/service/PaymentIntentService.java index a46be5a57ab..5351ce25e3f 100644 --- a/src/main/java/com/stripe/service/PaymentIntentService.java +++ b/src/main/java/com/stripe/service/PaymentIntentService.java @@ -428,25 +428,32 @@ public PaymentIntent capture( } /** * Confirm that your customer intends to pay with current or provided payment method. Upon - * confirmation, the PaymentIntent will attempt to initiate a payment. If the selected payment - * method requires additional authentication steps, the PaymentIntent will transition to the - * {@code requires_action} status and suggest additional actions via {@code next_action}. If - * payment fails, the PaymentIntent transitions to the {@code requires_payment_method} status or - * the {@code canceled} status if the confirmation limit is reached. If payment succeeds, the - * PaymentIntent will transition to the {@code succeeded} status (or {@code requires_capture}, if - * {@code capture_method} is set to {@code manual}). If the {@code confirmation_method} is {@code - * automatic}, payment may be attempted using our client SDKs - * and the PaymentIntent’s If the selected payment method requires additional authentication steps, the PaymentIntent + * will transition to the {@code requires_action} status and suggest additional actions via {@code + * next_action}. If payment fails, the PaymentIntent transitions to the {@code + * requires_payment_method} status or the {@code canceled} status if the confirmation limit is + * reached. If payment succeeds, the PaymentIntent will transition to the {@code succeeded} status + * (or {@code requires_capture}, if {@code capture_method} is set to {@code manual}). + * + *

If the {@code confirmation_method} is {@code automatic}, payment may be attempted using our + * client + * SDKs and the PaymentIntent’s client_secret. After * {@code next_action}s are handled by the client, no additional confirmation is required to - * complete the payment. If the {@code confirmation_method} is {@code manual}, all payment - * attempts must be initiated using a secret key. If any actions are required for the payment, the - * PaymentIntent will return to the {@code requires_confirmation} state after those actions are - * completed. Your server needs to then explicitly re-confirm the PaymentIntent to initiate the - * next payment attempt. There is a variable upper limit on how many times a PaymentIntent can be - * confirmed. After this limit is reached, any further calls to this endpoint will transition the - * PaymentIntent to the {@code canceled} state. + * complete the payment. + * + *

If the {@code confirmation_method} is {@code manual}, all payment attempts must be initiated + * using a secret key. + * + *

If any actions are required for the payment, the PaymentIntent will return to the {@code + * requires_confirmation} state after those actions are completed. Your server needs to then + * explicitly re-confirm the PaymentIntent to initiate the next payment attempt. + * + *

There is a variable upper limit on how many times a PaymentIntent can be confirmed. After + * this limit is reached, any further calls to this endpoint will transition the PaymentIntent to + * the {@code canceled} state. */ public PaymentIntent confirm(String intent, PaymentIntentConfirmParams params) throws StripeException { @@ -454,75 +461,96 @@ public PaymentIntent confirm(String intent, PaymentIntentConfirmParams params) } /** * Confirm that your customer intends to pay with current or provided payment method. Upon - * confirmation, the PaymentIntent will attempt to initiate a payment. If the selected payment - * method requires additional authentication steps, the PaymentIntent will transition to the - * {@code requires_action} status and suggest additional actions via {@code next_action}. If - * payment fails, the PaymentIntent transitions to the {@code requires_payment_method} status or - * the {@code canceled} status if the confirmation limit is reached. If payment succeeds, the - * PaymentIntent will transition to the {@code succeeded} status (or {@code requires_capture}, if - * {@code capture_method} is set to {@code manual}). If the {@code confirmation_method} is {@code - * automatic}, payment may be attempted using our client SDKs - * and the PaymentIntent’s If the selected payment method requires additional authentication steps, the PaymentIntent + * will transition to the {@code requires_action} status and suggest additional actions via {@code + * next_action}. If payment fails, the PaymentIntent transitions to the {@code + * requires_payment_method} status or the {@code canceled} status if the confirmation limit is + * reached. If payment succeeds, the PaymentIntent will transition to the {@code succeeded} status + * (or {@code requires_capture}, if {@code capture_method} is set to {@code manual}). + * + *

If the {@code confirmation_method} is {@code automatic}, payment may be attempted using our + * client + * SDKs and the PaymentIntent’s client_secret. After * {@code next_action}s are handled by the client, no additional confirmation is required to - * complete the payment. If the {@code confirmation_method} is {@code manual}, all payment - * attempts must be initiated using a secret key. If any actions are required for the payment, the - * PaymentIntent will return to the {@code requires_confirmation} state after those actions are - * completed. Your server needs to then explicitly re-confirm the PaymentIntent to initiate the - * next payment attempt. There is a variable upper limit on how many times a PaymentIntent can be - * confirmed. After this limit is reached, any further calls to this endpoint will transition the - * PaymentIntent to the {@code canceled} state. + * complete the payment. + * + *

If the {@code confirmation_method} is {@code manual}, all payment attempts must be initiated + * using a secret key. + * + *

If any actions are required for the payment, the PaymentIntent will return to the {@code + * requires_confirmation} state after those actions are completed. Your server needs to then + * explicitly re-confirm the PaymentIntent to initiate the next payment attempt. + * + *

There is a variable upper limit on how many times a PaymentIntent can be confirmed. After + * this limit is reached, any further calls to this endpoint will transition the PaymentIntent to + * the {@code canceled} state. */ public PaymentIntent confirm(String intent, RequestOptions options) throws StripeException { return confirm(intent, (PaymentIntentConfirmParams) null, options); } /** * Confirm that your customer intends to pay with current or provided payment method. Upon - * confirmation, the PaymentIntent will attempt to initiate a payment. If the selected payment - * method requires additional authentication steps, the PaymentIntent will transition to the - * {@code requires_action} status and suggest additional actions via {@code next_action}. If - * payment fails, the PaymentIntent transitions to the {@code requires_payment_method} status or - * the {@code canceled} status if the confirmation limit is reached. If payment succeeds, the - * PaymentIntent will transition to the {@code succeeded} status (or {@code requires_capture}, if - * {@code capture_method} is set to {@code manual}). If the {@code confirmation_method} is {@code - * automatic}, payment may be attempted using our client SDKs - * and the PaymentIntent’s If the selected payment method requires additional authentication steps, the PaymentIntent + * will transition to the {@code requires_action} status and suggest additional actions via {@code + * next_action}. If payment fails, the PaymentIntent transitions to the {@code + * requires_payment_method} status or the {@code canceled} status if the confirmation limit is + * reached. If payment succeeds, the PaymentIntent will transition to the {@code succeeded} status + * (or {@code requires_capture}, if {@code capture_method} is set to {@code manual}). + * + *

If the {@code confirmation_method} is {@code automatic}, payment may be attempted using our + * client + * SDKs and the PaymentIntent’s client_secret. After * {@code next_action}s are handled by the client, no additional confirmation is required to - * complete the payment. If the {@code confirmation_method} is {@code manual}, all payment - * attempts must be initiated using a secret key. If any actions are required for the payment, the - * PaymentIntent will return to the {@code requires_confirmation} state after those actions are - * completed. Your server needs to then explicitly re-confirm the PaymentIntent to initiate the - * next payment attempt. There is a variable upper limit on how many times a PaymentIntent can be - * confirmed. After this limit is reached, any further calls to this endpoint will transition the - * PaymentIntent to the {@code canceled} state. + * complete the payment. + * + *

If the {@code confirmation_method} is {@code manual}, all payment attempts must be initiated + * using a secret key. + * + *

If any actions are required for the payment, the PaymentIntent will return to the {@code + * requires_confirmation} state after those actions are completed. Your server needs to then + * explicitly re-confirm the PaymentIntent to initiate the next payment attempt. + * + *

There is a variable upper limit on how many times a PaymentIntent can be confirmed. After + * this limit is reached, any further calls to this endpoint will transition the PaymentIntent to + * the {@code canceled} state. */ public PaymentIntent confirm(String intent) throws StripeException { return confirm(intent, (PaymentIntentConfirmParams) null, (RequestOptions) null); } /** * Confirm that your customer intends to pay with current or provided payment method. Upon - * confirmation, the PaymentIntent will attempt to initiate a payment. If the selected payment - * method requires additional authentication steps, the PaymentIntent will transition to the - * {@code requires_action} status and suggest additional actions via {@code next_action}. If - * payment fails, the PaymentIntent transitions to the {@code requires_payment_method} status or - * the {@code canceled} status if the confirmation limit is reached. If payment succeeds, the - * PaymentIntent will transition to the {@code succeeded} status (or {@code requires_capture}, if - * {@code capture_method} is set to {@code manual}). If the {@code confirmation_method} is {@code - * automatic}, payment may be attempted using our client SDKs - * and the PaymentIntent’s If the selected payment method requires additional authentication steps, the PaymentIntent + * will transition to the {@code requires_action} status and suggest additional actions via {@code + * next_action}. If payment fails, the PaymentIntent transitions to the {@code + * requires_payment_method} status or the {@code canceled} status if the confirmation limit is + * reached. If payment succeeds, the PaymentIntent will transition to the {@code succeeded} status + * (or {@code requires_capture}, if {@code capture_method} is set to {@code manual}). + * + *

If the {@code confirmation_method} is {@code automatic}, payment may be attempted using our + * client + * SDKs and the PaymentIntent’s client_secret. After * {@code next_action}s are handled by the client, no additional confirmation is required to - * complete the payment. If the {@code confirmation_method} is {@code manual}, all payment - * attempts must be initiated using a secret key. If any actions are required for the payment, the - * PaymentIntent will return to the {@code requires_confirmation} state after those actions are - * completed. Your server needs to then explicitly re-confirm the PaymentIntent to initiate the - * next payment attempt. There is a variable upper limit on how many times a PaymentIntent can be - * confirmed. After this limit is reached, any further calls to this endpoint will transition the - * PaymentIntent to the {@code canceled} state. + * complete the payment. + * + *

If the {@code confirmation_method} is {@code manual}, all payment attempts must be initiated + * using a secret key. + * + *

If any actions are required for the payment, the PaymentIntent will return to the {@code + * requires_confirmation} state after those actions are completed. Your server needs to then + * explicitly re-confirm the PaymentIntent to initiate the next payment attempt. + * + *

There is a variable upper limit on how many times a PaymentIntent can be confirmed. After + * this limit is reached, any further calls to this endpoint will transition the PaymentIntent to + * the {@code canceled} state. */ public PaymentIntent confirm( String intent, PaymentIntentConfirmParams params, RequestOptions options) diff --git a/src/main/java/com/stripe/service/PaymentMethodService.java b/src/main/java/com/stripe/service/PaymentMethodService.java index 991916b3c03..4e55dd08b4d 100644 --- a/src/main/java/com/stripe/service/PaymentMethodService.java +++ b/src/main/java/com/stripe/service/PaymentMethodService.java @@ -183,20 +183,28 @@ public PaymentMethod retrieve( options); return this.request(request, PaymentMethod.class); } - /** Updates a PaymentMethod object. A PaymentMethod must be attached a customer to be updated. */ + /** + * Updates a PaymentMethod object. A PaymentMethod must be attached to a customer to be updated. + */ public PaymentMethod update(String paymentMethod, PaymentMethodUpdateParams params) throws StripeException { return update(paymentMethod, params, (RequestOptions) null); } - /** Updates a PaymentMethod object. A PaymentMethod must be attached a customer to be updated. */ + /** + * Updates a PaymentMethod object. A PaymentMethod must be attached to a customer to be updated. + */ public PaymentMethod update(String paymentMethod, RequestOptions options) throws StripeException { return update(paymentMethod, (PaymentMethodUpdateParams) null, options); } - /** Updates a PaymentMethod object. A PaymentMethod must be attached a customer to be updated. */ + /** + * Updates a PaymentMethod object. A PaymentMethod must be attached to a customer to be updated. + */ public PaymentMethod update(String paymentMethod) throws StripeException { return update(paymentMethod, (PaymentMethodUpdateParams) null, (RequestOptions) null); } - /** Updates a PaymentMethod object. A PaymentMethod must be attached a customer to be updated. */ + /** + * Updates a PaymentMethod object. A PaymentMethod must be attached to a customer to be updated. + */ public PaymentMethod update( String paymentMethod, PaymentMethodUpdateParams params, RequestOptions options) throws StripeException { diff --git a/src/main/java/com/stripe/service/TerminalService.java b/src/main/java/com/stripe/service/TerminalService.java index 316a4feff94..f3dc18f4212 100644 --- a/src/main/java/com/stripe/service/TerminalService.java +++ b/src/main/java/com/stripe/service/TerminalService.java @@ -21,6 +21,10 @@ public com.stripe.service.terminal.LocationService locations() { return new com.stripe.service.terminal.LocationService(this.getResponseGetter()); } + public com.stripe.service.terminal.OnboardingLinkService onboardingLinks() { + return new com.stripe.service.terminal.OnboardingLinkService(this.getResponseGetter()); + } + public com.stripe.service.terminal.ReaderCollectedDataService readerCollectedData() { return new com.stripe.service.terminal.ReaderCollectedDataService(this.getResponseGetter()); } diff --git a/src/main/java/com/stripe/service/billing/MeterUsageService.java b/src/main/java/com/stripe/service/billing/MeterUsageService.java new file mode 100644 index 00000000000..0beae5f7166 --- /dev/null +++ b/src/main/java/com/stripe/service/billing/MeterUsageService.java @@ -0,0 +1,43 @@ +// File generated from our OpenAPI spec +package com.stripe.service.billing; + +import com.stripe.exception.StripeException; +import com.stripe.model.billing.MeterUsage; +import com.stripe.net.ApiRequest; +import com.stripe.net.ApiRequestParams; +import com.stripe.net.ApiResource; +import com.stripe.net.ApiService; +import com.stripe.net.BaseAddress; +import com.stripe.net.RequestOptions; +import com.stripe.net.StripeResponseGetter; +import com.stripe.param.billing.MeterUsageRetrieveParams; + +public final class MeterUsageService extends ApiService { + public MeterUsageService(StripeResponseGetter responseGetter) { + super(responseGetter); + } + + /** + * Returns aggregated meter usage data for a customer within a specified time interval. The data + * can be grouped by various dimensions and can include multiple meters if specified. + */ + public MeterUsage retrieve(MeterUsageRetrieveParams params) throws StripeException { + return retrieve(params, (RequestOptions) null); + } + /** + * Returns aggregated meter usage data for a customer within a specified time interval. The data + * can be grouped by various dimensions and can include multiple meters if specified. + */ + public MeterUsage retrieve(MeterUsageRetrieveParams params, RequestOptions options) + throws StripeException { + String path = "/v1/billing/analytics/meter_usage"; + ApiRequest request = + new ApiRequest( + BaseAddress.API, + ApiResource.RequestMethod.GET, + path, + ApiRequestParams.paramsToMap(params), + options); + return this.request(request, MeterUsage.class); + } +} diff --git a/src/main/java/com/stripe/service/terminal/OnboardingLinkService.java b/src/main/java/com/stripe/service/terminal/OnboardingLinkService.java new file mode 100644 index 00000000000..72401a1f53b --- /dev/null +++ b/src/main/java/com/stripe/service/terminal/OnboardingLinkService.java @@ -0,0 +1,43 @@ +// File generated from our OpenAPI spec +package com.stripe.service.terminal; + +import com.stripe.exception.StripeException; +import com.stripe.model.terminal.OnboardingLink; +import com.stripe.net.ApiRequest; +import com.stripe.net.ApiRequestParams; +import com.stripe.net.ApiResource; +import com.stripe.net.ApiService; +import com.stripe.net.BaseAddress; +import com.stripe.net.RequestOptions; +import com.stripe.net.StripeResponseGetter; +import com.stripe.param.terminal.OnboardingLinkCreateParams; + +public final class OnboardingLinkService extends ApiService { + public OnboardingLinkService(StripeResponseGetter responseGetter) { + super(responseGetter); + } + + /** + * Creates a new {@code OnboardingLink} object that contains a redirect_url used for onboarding + * onto Tap to Pay on iPhone. + */ + public OnboardingLink create(OnboardingLinkCreateParams params) throws StripeException { + return create(params, (RequestOptions) null); + } + /** + * Creates a new {@code OnboardingLink} object that contains a redirect_url used for onboarding + * onto Tap to Pay on iPhone. + */ + public OnboardingLink create(OnboardingLinkCreateParams params, RequestOptions options) + throws StripeException { + String path = "/v1/terminal/onboarding_links"; + ApiRequest request = + new ApiRequest( + BaseAddress.API, + ApiResource.RequestMethod.POST, + path, + ApiRequestParams.paramsToMap(params), + options); + return this.request(request, OnboardingLink.class); + } +} diff --git a/src/main/java/com/stripe/service/v2/payments/OffSessionPaymentService.java b/src/main/java/com/stripe/service/v2/payments/OffSessionPaymentService.java index c0dfad6e8ce..0069742e4cc 100644 --- a/src/main/java/com/stripe/service/v2/payments/OffSessionPaymentService.java +++ b/src/main/java/com/stripe/service/v2/payments/OffSessionPaymentService.java @@ -20,20 +20,20 @@ public OffSessionPaymentService(StripeResponseGetter responseGetter) { super(responseGetter); } - /** List OSPs matching filter. */ + /** Returns a list of OffSessionPayments matching a filter. */ public StripeCollection list(OffSessionPaymentListParams params) throws StripeException { return list(params, (RequestOptions) null); } - /** List OSPs matching filter. */ + /** Returns a list of OffSessionPayments matching a filter. */ public StripeCollection list(RequestOptions options) throws StripeException { return list((OffSessionPaymentListParams) null, options); } - /** List OSPs matching filter. */ + /** Returns a list of OffSessionPayments matching a filter. */ public StripeCollection list() throws StripeException { return list((OffSessionPaymentListParams) null, (RequestOptions) null); } - /** List OSPs matching filter. */ + /** Returns a list of OffSessionPayments matching a filter. */ public StripeCollection list( OffSessionPaymentListParams params, RequestOptions options) throws StripeException { String path = "/v2/payments/off_session_payments"; @@ -46,11 +46,11 @@ public StripeCollection list( options); return this.request(request, new TypeToken>() {}.getType()); } - /** Create OSP. */ + /** Creates an OffSessionPayment object. */ public OffSessionPayment create(OffSessionPaymentCreateParams params) throws StripeException { return create(params, (RequestOptions) null); } - /** Create OSP. */ + /** Creates an OffSessionPayment object. */ public OffSessionPayment create(OffSessionPaymentCreateParams params, RequestOptions options) throws StripeException { String path = "/v2/payments/off_session_payments"; @@ -63,11 +63,11 @@ public OffSessionPayment create(OffSessionPaymentCreateParams params, RequestOpt options); return this.request(request, OffSessionPayment.class); } - /** Retrieve OSP by ID. */ + /** Retrieves the details of an OffSessionPayment that has previously been created. */ public OffSessionPayment retrieve(String id) throws StripeException { return retrieve(id, (RequestOptions) null); } - /** Retrieve OSP by ID. */ + /** Retrieves the details of an OffSessionPayment that has previously been created. */ public OffSessionPayment retrieve(String id, RequestOptions options) throws StripeException { String path = String.format("/v2/payments/off_session_payments/%s", ApiResource.urlEncodeId(id)); @@ -75,11 +75,11 @@ public OffSessionPayment retrieve(String id, RequestOptions options) throws Stri new ApiRequest(BaseAddress.API, ApiResource.RequestMethod.GET, path, null, options); return this.request(request, OffSessionPayment.class); } - /** Cancel OSP. */ + /** Cancel an OffSessionPayment that has previously been created. */ public OffSessionPayment cancel(String id) throws StripeException { return cancel(id, (RequestOptions) null); } - /** Cancel OSP. */ + /** Cancel an OffSessionPayment that has previously been created. */ public OffSessionPayment cancel(String id, RequestOptions options) throws StripeException { String path = String.format("/v2/payments/off_session_payments/%s/cancel", ApiResource.urlEncodeId(id)); diff --git a/src/main/java/com/stripe/service/v2/testhelpers/FinancialAddressService.java b/src/main/java/com/stripe/service/v2/testhelpers/FinancialAddressService.java index 22a17af2d9e..9d30112afc4 100644 --- a/src/main/java/com/stripe/service/v2/testhelpers/FinancialAddressService.java +++ b/src/main/java/com/stripe/service/v2/testhelpers/FinancialAddressService.java @@ -1,6 +1,7 @@ // File generated from our OpenAPI spec package com.stripe.service.v2.testhelpers; +import com.stripe.exception.FeatureNotEnabledException; import com.stripe.exception.StripeException; import com.stripe.model.v2.FinancialAddressCreditSimulation; import com.stripe.model.v2.FinancialAddressGeneratedMicrodeposits; @@ -23,7 +24,7 @@ public FinancialAddressService(StripeResponseGetter responseGetter) { * funds and increase your balance for testing. */ public FinancialAddressCreditSimulation credit(String id, FinancialAddressCreditParams params) - throws StripeException { + throws StripeException, FeatureNotEnabledException { return credit(id, params, (RequestOptions) null); } /** @@ -32,7 +33,7 @@ public FinancialAddressCreditSimulation credit(String id, FinancialAddressCredit */ public FinancialAddressCreditSimulation credit( String id, FinancialAddressCreditParams params, RequestOptions options) - throws StripeException { + throws StripeException, FeatureNotEnabledException { String path = String.format( "/v2/test_helpers/financial_addresses/%s/credit", ApiResource.urlEncodeId(id)); @@ -47,12 +48,12 @@ public FinancialAddressCreditSimulation credit( } /** Generates microdeposits for a FinancialAddress in a Sandbox environment. */ public FinancialAddressGeneratedMicrodeposits generateMicrodeposits(String id) - throws StripeException { + throws StripeException, FeatureNotEnabledException { return generateMicrodeposits(id, (RequestOptions) null); } /** Generates microdeposits for a FinancialAddress in a Sandbox environment. */ public FinancialAddressGeneratedMicrodeposits generateMicrodeposits( - String id, RequestOptions options) throws StripeException { + String id, RequestOptions options) throws StripeException, FeatureNotEnabledException { String path = String.format( "/v2/test_helpers/financial_addresses/%s/generate_microdeposits", diff --git a/src/test/java/com/stripe/functional/GeneratedExamples.java b/src/test/java/com/stripe/functional/GeneratedExamples.java index 4cd1d786eb5..4c49c400acd 100644 --- a/src/test/java/com/stripe/functional/GeneratedExamples.java +++ b/src/test/java/com/stripe/functional/GeneratedExamples.java @@ -15774,18 +15774,41 @@ public void testV2CoreAccountLinkPostServices() throws StripeException { .setAccountOnboarding( com.stripe.param.v2.core.AccountLinkCreateParams.UseCase.AccountOnboarding .builder() + .setCollectionOptions( + com.stripe.param.v2.core.AccountLinkCreateParams.UseCase + .AccountOnboarding.CollectionOptions.builder() + .setFields( + com.stripe.param.v2.core.AccountLinkCreateParams.UseCase + .AccountOnboarding.CollectionOptions.Fields + .EVENTUALLY_DUE) + .setFutureRequirements( + com.stripe.param.v2.core.AccountLinkCreateParams.UseCase + .AccountOnboarding.CollectionOptions.FutureRequirements + .INCLUDE) + .build()) .addConfiguration( com.stripe.param.v2.core.AccountLinkCreateParams.UseCase - .AccountOnboarding.Configuration.RECIPIENT) + .AccountOnboarding.Configuration.STORER) .setRefreshUrl("refresh_url") .setReturnUrl("return_url") .build()) .setAccountUpdate( com.stripe.param.v2.core.AccountLinkCreateParams.UseCase.AccountUpdate .builder() + .setCollectionOptions( + com.stripe.param.v2.core.AccountLinkCreateParams.UseCase + .AccountUpdate.CollectionOptions.builder() + .setFields( + com.stripe.param.v2.core.AccountLinkCreateParams.UseCase + .AccountUpdate.CollectionOptions.Fields.EVENTUALLY_DUE) + .setFutureRequirements( + com.stripe.param.v2.core.AccountLinkCreateParams.UseCase + .AccountUpdate.CollectionOptions.FutureRequirements + .INCLUDE) + .build()) .addConfiguration( com.stripe.param.v2.core.AccountLinkCreateParams.UseCase - .AccountUpdate.Configuration.RECIPIENT) + .AccountUpdate.Configuration.STORER) .setRefreshUrl("refresh_url") .setReturnUrl("return_url") .build())