All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.stripe.model.checkout.Session Maven / Gradle / Ivy

There is a newer version: 28.2.0
Show newest version
// Generated by delombok at Wed Jun 30 19:13:17 EDT 2021
// File generated from our OpenAPI spec
package com.stripe.model.checkout;

import com.google.gson.annotations.SerializedName;
import com.stripe.Stripe;
import com.stripe.exception.StripeException;
import com.stripe.model.Customer;
import com.stripe.model.ExpandableField;
import com.stripe.model.HasId;
import com.stripe.model.LineItem;
import com.stripe.model.LineItemCollection;
import com.stripe.model.PaymentIntent;
import com.stripe.model.SetupIntent;
import com.stripe.model.ShippingDetails;
import com.stripe.model.StripeObject;
import com.stripe.model.Subscription;
import com.stripe.net.ApiResource;
import com.stripe.net.RequestOptions;
import com.stripe.param.checkout.SessionCreateParams;
import com.stripe.param.checkout.SessionListLineItemsParams;
import com.stripe.param.checkout.SessionListParams;
import com.stripe.param.checkout.SessionRetrieveParams;
import java.util.List;
import java.util.Map;

public class Session extends ApiResource implements HasId {
  /**
   * Enables user redeemable promotion codes.
   */
  @SerializedName("allow_promotion_codes")
  Boolean allowPromotionCodes;
  /**
   * Total of all items before discounts or taxes are applied.
   */
  @SerializedName("amount_subtotal")
  Long amountSubtotal;
  /**
   * Total of all items after discounts and taxes are applied.
   */
  @SerializedName("amount_total")
  Long amountTotal;
  @SerializedName("automatic_tax")
  AutomaticTax automaticTax;
  /**
   * Describes whether Checkout should collect the customer's billing address.
   *
   * 

One of {@code auto}, or {@code required}. */ @SerializedName("billing_address_collection") String billingAddressCollection; /** * The URL the customer will be directed to if they decide to cancel payment and return to your * website. */ @SerializedName("cancel_url") String cancelUrl; /** * A unique string to reference the Checkout Session. This can be a customer ID, a cart ID, or * similar, and can be used to reconcile the Session with your internal systems. */ @SerializedName("client_reference_id") String clientReferenceId; /** * Three-letter ISO currency code, * in lowercase. Must be a supported currency. */ @SerializedName("currency") String currency; /** * The ID of the customer for this Session. For Checkout Sessions in {@code payment} or {@code * subscription} mode, Checkout will create a new customer object based on information provided * during the payment flow unless an existing customer was provided when the Session was created. */ @SerializedName("customer") ExpandableField customer; /** * The customer details including the customer's tax exempt status and the customer's tax IDs. * Only present on Sessions in {@code payment} or {@code subscription} mode. */ @SerializedName("customer_details") CustomerDetails customerDetails; /** * If provided, this value will be used when the Customer object is created. If not provided, * customers will be asked to enter their email address. Use this parameter to prefill customer * data if you already have an email on file. To access information about the customer once the * payment flow is complete, use the {@code customer} attribute. */ @SerializedName("customer_email") String customerEmail; /** * Unique identifier for the object. Used to pass to {@code redirectToCheckout} in Stripe.js. */ @SerializedName("id") String id; /** * The line items purchased by the customer. */ @SerializedName("line_items") LineItemCollection lineItems; /** * 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; /** * The IETF language tag of the locale Checkout is displayed in. If blank or {@code auto}, the * browser's locale is used. * *

One of {@code auto}, {@code bg}, {@code cs}, {@code da}, {@code de}, {@code el}, {@code en}, * {@code en-GB}, {@code es}, {@code es-419}, {@code et}, {@code fi}, {@code fr}, {@code fr-CA}, * {@code hu}, {@code id}, {@code it}, {@code ja}, {@code lt}, {@code lv}, {@code ms}, {@code mt}, * {@code nb}, {@code nl}, {@code pl}, {@code pt}, {@code pt-BR}, {@code ro}, {@code ru}, {@code * sk}, {@code sl}, {@code sv}, {@code th}, {@code tr}, {@code zh}, {@code zh-HK}, or {@code * zh-TW}. */ @SerializedName("locale") String locale; /** * 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. */ @SerializedName("metadata") Map metadata; /** * The mode of the Checkout Session. * *

One of {@code payment}, {@code setup}, or {@code subscription}. */ @SerializedName("mode") String mode; /** * String representing the object's type. Objects of the same type share the same value. * *

Equal to {@code checkout.session}. */ @SerializedName("object") String object; /** * The ID of the PaymentIntent for Checkout Sessions in {@code payment} mode. */ @SerializedName("payment_intent") ExpandableField paymentIntent; /** * Payment-method-specific configuration for the PaymentIntent or SetupIntent of this * CheckoutSession. */ @SerializedName("payment_method_options") PaymentMethodOptions paymentMethodOptions; /** * A list of the types of payment methods (e.g. card) this Checkout Session is allowed to accept. */ @SerializedName("payment_method_types") List paymentMethodTypes; /** * The payment status of the Checkout Session, one of {@code paid}, {@code unpaid}, or {@code * no_payment_required}. You can use this value to decide when to fulfill your customer's order. */ @SerializedName("payment_status") String paymentStatus; /** * The ID of the SetupIntent for Checkout Sessions in {@code setup} mode. */ @SerializedName("setup_intent") ExpandableField setupIntent; /** * Shipping information for this Checkout Session. */ @SerializedName("shipping") ShippingDetails shipping; /** * When set, provides configuration for Checkout to collect a shipping address from a customer. */ @SerializedName("shipping_address_collection") ShippingAddressCollection shippingAddressCollection; /** * Describes the type of transaction being performed by Checkout in order to customize relevant * text on the page, such as the submit button. {@code submit_type} can only be specified on * Checkout Sessions in {@code payment} mode, but not Checkout Sessions in {@code subscription} or * {@code setup} mode. * *

One of {@code auto}, {@code book}, {@code donate}, or {@code pay}. */ @SerializedName("submit_type") String submitType; /** * The ID of the subscription for Checkout Sessions in {@code subscription} mode. */ @SerializedName("subscription") ExpandableField subscription; /** * The URL the customer will be directed to after the payment or subscription creation is * successful. */ @SerializedName("success_url") String successUrl; @SerializedName("tax_id_collection") TaxIDCollection taxIdCollection; /** * Tax and discount details for the computed total amount. */ @SerializedName("total_details") TotalDetails totalDetails; /** * The URL to the Checkout Session. */ @SerializedName("url") String url; /** * Get ID of expandable {@code customer} object. */ public String getCustomer() { return (this.customer != null) ? this.customer.getId() : null; } public void setCustomer(String id) { this.customer = ApiResource.setExpandableFieldId(id, this.customer); } /** * Get expanded {@code customer}. */ public Customer getCustomerObject() { return (this.customer != null) ? this.customer.getExpanded() : null; } public void setCustomerObject(Customer expandableObject) { this.customer = new ExpandableField(expandableObject.getId(), expandableObject); } /** * Get ID of expandable {@code paymentIntent} object. */ public String getPaymentIntent() { return (this.paymentIntent != null) ? this.paymentIntent.getId() : null; } public void setPaymentIntent(String id) { this.paymentIntent = ApiResource.setExpandableFieldId(id, this.paymentIntent); } /** * Get expanded {@code paymentIntent}. */ public PaymentIntent getPaymentIntentObject() { return (this.paymentIntent != null) ? this.paymentIntent.getExpanded() : null; } public void setPaymentIntentObject(PaymentIntent expandableObject) { this.paymentIntent = new ExpandableField(expandableObject.getId(), expandableObject); } /** * Get ID of expandable {@code setupIntent} object. */ public String getSetupIntent() { return (this.setupIntent != null) ? this.setupIntent.getId() : null; } public void setSetupIntent(String id) { this.setupIntent = ApiResource.setExpandableFieldId(id, this.setupIntent); } /** * Get expanded {@code setupIntent}. */ public SetupIntent getSetupIntentObject() { return (this.setupIntent != null) ? this.setupIntent.getExpanded() : null; } public void setSetupIntentObject(SetupIntent expandableObject) { this.setupIntent = new ExpandableField(expandableObject.getId(), expandableObject); } /** * Get ID of expandable {@code subscription} object. */ public String getSubscription() { return (this.subscription != null) ? this.subscription.getId() : null; } public void setSubscription(String id) { this.subscription = ApiResource.setExpandableFieldId(id, this.subscription); } /** * Get expanded {@code subscription}. */ public Subscription getSubscriptionObject() { return (this.subscription != null) ? this.subscription.getExpanded() : null; } public void setSubscriptionObject(Subscription expandableObject) { this.subscription = new ExpandableField(expandableObject.getId(), expandableObject); } /** * Returns a list of Checkout Sessions. */ public static SessionCollection list(Map params) throws StripeException { return list(params, (RequestOptions) null); } /** * Returns a list of Checkout Sessions. */ public static SessionCollection list(Map params, RequestOptions options) throws StripeException { String url = String.format("%s%s", Stripe.getApiBase(), "/v1/checkout/sessions"); return ApiResource.requestCollection(url, params, SessionCollection.class, options); } /** * Returns a list of Checkout Sessions. */ public static SessionCollection list(SessionListParams params) throws StripeException { return list(params, (RequestOptions) null); } /** * Returns a list of Checkout Sessions. */ public static SessionCollection list(SessionListParams params, RequestOptions options) throws StripeException { String url = String.format("%s%s", Stripe.getApiBase(), "/v1/checkout/sessions"); return ApiResource.requestCollection(url, params, SessionCollection.class, options); } /** * Retrieves a Session object. */ public static Session retrieve(String session) throws StripeException { return retrieve(session, (Map) null, (RequestOptions) null); } /** * Retrieves a Session object. */ public static Session retrieve(String session, RequestOptions options) throws StripeException { return retrieve(session, (Map) null, options); } /** * Retrieves a Session object. */ public static Session retrieve(String session, Map params, RequestOptions options) throws StripeException { String url = String.format("%s%s", Stripe.getApiBase(), String.format("/v1/checkout/sessions/%s", ApiResource.urlEncodeId(session))); return ApiResource.request(ApiResource.RequestMethod.GET, url, params, Session.class, options); } /** * Retrieves a Session object. */ public static Session retrieve(String session, SessionRetrieveParams params, RequestOptions options) throws StripeException { String url = String.format("%s%s", Stripe.getApiBase(), String.format("/v1/checkout/sessions/%s", ApiResource.urlEncodeId(session))); return ApiResource.request(ApiResource.RequestMethod.GET, url, params, Session.class, options); } /** * Creates a Session object. */ public static Session create(Map params) throws StripeException { return create(params, (RequestOptions) null); } /** * Creates a Session object. */ public static Session create(Map params, RequestOptions options) throws StripeException { String url = String.format("%s%s", Stripe.getApiBase(), "/v1/checkout/sessions"); return ApiResource.request(ApiResource.RequestMethod.POST, url, params, Session.class, options); } /** * Creates a Session object. */ public static Session create(SessionCreateParams params) throws StripeException { return create(params, (RequestOptions) null); } /** * Creates a Session object. */ public static Session create(SessionCreateParams params, RequestOptions options) throws StripeException { String url = String.format("%s%s", Stripe.getApiBase(), "/v1/checkout/sessions"); return ApiResource.request(ApiResource.RequestMethod.POST, url, params, Session.class, options); } /** * Returns a list of Line Items */ public LineItemCollection listLineItems(Map params) throws StripeException { return listLineItems(params, (RequestOptions) null); } /** * Returns a list of Line Items */ public LineItemCollection listLineItems(Map params, RequestOptions options) throws StripeException { String url = String.format("%s%s", Stripe.getApiBase(), String.format("/v1/checkout/sessions/%s/line_items", ApiResource.urlEncodeId(this.getId()))); return ApiResource.requestCollection(url, params, LineItemCollection.class, options); } /** * Returns a list of Line Items */ public LineItemCollection listLineItems(SessionListLineItemsParams params) throws StripeException { return listLineItems(params, (RequestOptions) null); } /** * Returns a list of Line Items */ public LineItemCollection listLineItems(SessionListLineItemsParams params, RequestOptions options) throws StripeException { String url = String.format("%s%s", Stripe.getApiBase(), String.format("/v1/checkout/sessions/%s/line_items", ApiResource.urlEncodeId(this.getId()))); return ApiResource.requestCollection(url, params, LineItemCollection.class, options); } public static class AutomaticTax extends StripeObject { /** * Indicates whether automatic tax is enabled for the session. */ @SerializedName("enabled") Boolean enabled; /** * The status of the most recent automated tax calculation for this session. * *

One of {@code complete}, {@code failed}, or {@code requires_location_inputs}. */ @SerializedName("status") String status; /** * Indicates whether automatic tax is enabled for the session. */ @java.lang.SuppressWarnings("all") @lombok.Generated public Boolean getEnabled() { return this.enabled; } /** * The status of the most recent automated tax calculation for this session. * *

One of {@code complete}, {@code failed}, or {@code requires_location_inputs}. */ @java.lang.SuppressWarnings("all") @lombok.Generated public String getStatus() { return this.status; } /** * Indicates whether automatic tax is enabled for the session. */ @java.lang.SuppressWarnings("all") @lombok.Generated public void setEnabled(final Boolean enabled) { this.enabled = enabled; } /** * The status of the most recent automated tax calculation for this session. * *

One of {@code complete}, {@code failed}, or {@code requires_location_inputs}. */ @java.lang.SuppressWarnings("all") @lombok.Generated public void setStatus(final String status) { this.status = status; } @java.lang.Override @java.lang.SuppressWarnings("all") @lombok.Generated public boolean equals(final java.lang.Object o) { if (o == this) return true; if (!(o instanceof Session.AutomaticTax)) return false; final Session.AutomaticTax other = (Session.AutomaticTax) o; if (!other.canEqual((java.lang.Object) this)) return false; final java.lang.Object this$enabled = this.getEnabled(); final java.lang.Object other$enabled = other.getEnabled(); if (this$enabled == null ? other$enabled != null : !this$enabled.equals(other$enabled)) return false; final java.lang.Object this$status = this.getStatus(); final java.lang.Object other$status = other.getStatus(); if (this$status == null ? other$status != null : !this$status.equals(other$status)) return false; return true; } @java.lang.SuppressWarnings("all") @lombok.Generated protected boolean canEqual(final java.lang.Object other) { return other instanceof Session.AutomaticTax; } @java.lang.Override @java.lang.SuppressWarnings("all") @lombok.Generated public int hashCode() { final int PRIME = 59; int result = 1; final java.lang.Object $enabled = this.getEnabled(); result = result * PRIME + ($enabled == null ? 43 : $enabled.hashCode()); final java.lang.Object $status = this.getStatus(); result = result * PRIME + ($status == null ? 43 : $status.hashCode()); return result; } } public static class CustomerDetails extends StripeObject { /** * The customer’s email at time of checkout. */ @SerializedName("email") String email; /** * The customer’s tax exempt status at time of checkout. * *

One of {@code exempt}, {@code none}, or {@code reverse}. */ @SerializedName("tax_exempt") String taxExempt; /** * The customer’s tax IDs at time of checkout. */ @SerializedName("tax_ids") List taxIds; public static class TaxID extends StripeObject { /** * The type of the tax ID, one of {@code eu_vat}, {@code br_cnpj}, {@code br_cpf}, {@code * gb_vat}, {@code nz_gst}, {@code au_abn}, {@code in_gst}, {@code no_vat}, {@code za_vat}, * {@code ch_vat}, {@code mx_rfc}, {@code sg_uen}, {@code ru_inn}, {@code ru_kpp}, {@code * ca_bn}, {@code hk_br}, {@code es_cif}, {@code tw_vat}, {@code th_vat}, {@code jp_cn}, * {@code jp_rn}, {@code li_uid}, {@code my_itn}, {@code us_ein}, {@code kr_brn}, {@code * ca_qst}, {@code ca_gst_hst}, {@code ca_pst_bc}, {@code ca_pst_mb}, {@code ca_pst_sk}, * {@code my_sst}, {@code sg_gst}, {@code ae_trn}, {@code cl_tin}, {@code sa_vat}, {@code * id_npwp}, {@code my_frp}, {@code il_vat}, or {@code unknown}. */ @SerializedName("type") String type; @SerializedName("value") String value; @java.lang.SuppressWarnings("all") @lombok.Generated public String getType() { return this.type; } @java.lang.SuppressWarnings("all") @lombok.Generated public String getValue() { return this.value; } @java.lang.SuppressWarnings("all") @lombok.Generated public void setType(final String type) { this.type = type; } @java.lang.SuppressWarnings("all") @lombok.Generated public void setValue(final String value) { this.value = value; } @java.lang.Override @java.lang.SuppressWarnings("all") @lombok.Generated public boolean equals(final java.lang.Object o) { if (o == this) return true; if (!(o instanceof Session.CustomerDetails.TaxID)) return false; final Session.CustomerDetails.TaxID other = (Session.CustomerDetails.TaxID) o; if (!other.canEqual((java.lang.Object) this)) return false; final java.lang.Object this$type = this.getType(); final java.lang.Object other$type = other.getType(); if (this$type == null ? other$type != null : !this$type.equals(other$type)) return false; final java.lang.Object this$value = this.getValue(); final java.lang.Object other$value = other.getValue(); if (this$value == null ? other$value != null : !this$value.equals(other$value)) return false; return true; } @java.lang.SuppressWarnings("all") @lombok.Generated protected boolean canEqual(final java.lang.Object other) { return other instanceof Session.CustomerDetails.TaxID; } @java.lang.Override @java.lang.SuppressWarnings("all") @lombok.Generated public int hashCode() { final int PRIME = 59; int result = 1; final java.lang.Object $type = this.getType(); result = result * PRIME + ($type == null ? 43 : $type.hashCode()); final java.lang.Object $value = this.getValue(); result = result * PRIME + ($value == null ? 43 : $value.hashCode()); return result; } } /** * The customer’s email at time of checkout. */ @java.lang.SuppressWarnings("all") @lombok.Generated public String getEmail() { return this.email; } /** * The customer’s tax exempt status at time of checkout. * *

One of {@code exempt}, {@code none}, or {@code reverse}. */ @java.lang.SuppressWarnings("all") @lombok.Generated public String getTaxExempt() { return this.taxExempt; } /** * The customer’s tax IDs at time of checkout. */ @java.lang.SuppressWarnings("all") @lombok.Generated public List getTaxIds() { return this.taxIds; } /** * The customer’s email at time of checkout. */ @java.lang.SuppressWarnings("all") @lombok.Generated public void setEmail(final String email) { this.email = email; } /** * The customer’s tax exempt status at time of checkout. * *

One of {@code exempt}, {@code none}, or {@code reverse}. */ @java.lang.SuppressWarnings("all") @lombok.Generated public void setTaxExempt(final String taxExempt) { this.taxExempt = taxExempt; } /** * The customer’s tax IDs at time of checkout. */ @java.lang.SuppressWarnings("all") @lombok.Generated public void setTaxIds(final List taxIds) { this.taxIds = taxIds; } @java.lang.Override @java.lang.SuppressWarnings("all") @lombok.Generated public boolean equals(final java.lang.Object o) { if (o == this) return true; if (!(o instanceof Session.CustomerDetails)) return false; final Session.CustomerDetails other = (Session.CustomerDetails) o; if (!other.canEqual((java.lang.Object) this)) return false; final java.lang.Object this$email = this.getEmail(); final java.lang.Object other$email = other.getEmail(); if (this$email == null ? other$email != null : !this$email.equals(other$email)) return false; final java.lang.Object this$taxExempt = this.getTaxExempt(); final java.lang.Object other$taxExempt = other.getTaxExempt(); if (this$taxExempt == null ? other$taxExempt != null : !this$taxExempt.equals(other$taxExempt)) return false; final java.lang.Object this$taxIds = this.getTaxIds(); final java.lang.Object other$taxIds = other.getTaxIds(); if (this$taxIds == null ? other$taxIds != null : !this$taxIds.equals(other$taxIds)) return false; return true; } @java.lang.SuppressWarnings("all") @lombok.Generated protected boolean canEqual(final java.lang.Object other) { return other instanceof Session.CustomerDetails; } @java.lang.Override @java.lang.SuppressWarnings("all") @lombok.Generated public int hashCode() { final int PRIME = 59; int result = 1; final java.lang.Object $email = this.getEmail(); result = result * PRIME + ($email == null ? 43 : $email.hashCode()); final java.lang.Object $taxExempt = this.getTaxExempt(); result = result * PRIME + ($taxExempt == null ? 43 : $taxExempt.hashCode()); final java.lang.Object $taxIds = this.getTaxIds(); result = result * PRIME + ($taxIds == null ? 43 : $taxIds.hashCode()); return result; } } /** * The value of the tax ID. */ public static class PaymentMethodOptions extends StripeObject { @SerializedName("acss_debit") AcssDebit acssDebit; @SerializedName("boleto") Boleto boleto; @SerializedName("oxxo") Oxxo oxxo; public static class AcssDebit extends StripeObject { /** * Currency supported by the bank account. Returned when the Session is in {@code setup} mode. * *

One of {@code cad}, or {@code usd}. */ @SerializedName("currency") String currency; @SerializedName("mandate_options") MandateOptions mandateOptions; /** * Bank account verification method. * *

One of {@code automatic}, {@code instant}, or {@code microdeposits}. */ @SerializedName("verification_method") String verificationMethod; public static class MandateOptions extends StripeObject { /** A URL for custom mandate text. */ @SerializedName("custom_mandate_url") String customMandateUrl; /** * Description of the interval. Only required if 'payment_schedule' parmeter is 'interval' * or 'combined'. */ @SerializedName("interval_description") String intervalDescription; /** * Payment schedule for the mandate. * *

One of {@code combined}, {@code interval}, or {@code sporadic}. */ @SerializedName("payment_schedule") String paymentSchedule; @SerializedName("transaction_type") String transactionType; @java.lang.SuppressWarnings("all") @lombok.Generated public String getCustomMandateUrl() { return this.customMandateUrl; } @java.lang.SuppressWarnings("all") @lombok.Generated public String getIntervalDescription() { return this.intervalDescription; } @java.lang.SuppressWarnings("all") @lombok.Generated public String getPaymentSchedule() { return this.paymentSchedule; } @java.lang.SuppressWarnings("all") @lombok.Generated public String getTransactionType() { return this.transactionType; } @java.lang.SuppressWarnings("all") @lombok.Generated public void setCustomMandateUrl(final String customMandateUrl) { this.customMandateUrl = customMandateUrl; } @java.lang.SuppressWarnings("all") @lombok.Generated public void setIntervalDescription(final String intervalDescription) { this.intervalDescription = intervalDescription; } @java.lang.SuppressWarnings("all") @lombok.Generated public void setPaymentSchedule(final String paymentSchedule) { this.paymentSchedule = paymentSchedule; } @java.lang.SuppressWarnings("all") @lombok.Generated public void setTransactionType(final String transactionType) { this.transactionType = transactionType; } @java.lang.Override @java.lang.SuppressWarnings("all") @lombok.Generated public boolean equals(final java.lang.Object o) { if (o == this) return true; if (!(o instanceof Session.PaymentMethodOptions.AcssDebit.MandateOptions)) return false; final Session.PaymentMethodOptions.AcssDebit.MandateOptions other = (Session.PaymentMethodOptions.AcssDebit.MandateOptions) o; if (!other.canEqual((java.lang.Object) this)) return false; final java.lang.Object this$customMandateUrl = this.getCustomMandateUrl(); final java.lang.Object other$customMandateUrl = other.getCustomMandateUrl(); if (this$customMandateUrl == null ? other$customMandateUrl != null : !this$customMandateUrl.equals(other$customMandateUrl)) return false; final java.lang.Object this$intervalDescription = this.getIntervalDescription(); final java.lang.Object other$intervalDescription = other.getIntervalDescription(); if (this$intervalDescription == null ? other$intervalDescription != null : !this$intervalDescription.equals(other$intervalDescription)) return false; final java.lang.Object this$paymentSchedule = this.getPaymentSchedule(); final java.lang.Object other$paymentSchedule = other.getPaymentSchedule(); if (this$paymentSchedule == null ? other$paymentSchedule != null : !this$paymentSchedule.equals(other$paymentSchedule)) return false; final java.lang.Object this$transactionType = this.getTransactionType(); final java.lang.Object other$transactionType = other.getTransactionType(); if (this$transactionType == null ? other$transactionType != null : !this$transactionType.equals(other$transactionType)) return false; return true; } @java.lang.SuppressWarnings("all") @lombok.Generated protected boolean canEqual(final java.lang.Object other) { return other instanceof Session.PaymentMethodOptions.AcssDebit.MandateOptions; } @java.lang.Override @java.lang.SuppressWarnings("all") @lombok.Generated public int hashCode() { final int PRIME = 59; int result = 1; final java.lang.Object $customMandateUrl = this.getCustomMandateUrl(); result = result * PRIME + ($customMandateUrl == null ? 43 : $customMandateUrl.hashCode()); final java.lang.Object $intervalDescription = this.getIntervalDescription(); result = result * PRIME + ($intervalDescription == null ? 43 : $intervalDescription.hashCode()); final java.lang.Object $paymentSchedule = this.getPaymentSchedule(); result = result * PRIME + ($paymentSchedule == null ? 43 : $paymentSchedule.hashCode()); final java.lang.Object $transactionType = this.getTransactionType(); result = result * PRIME + ($transactionType == null ? 43 : $transactionType.hashCode()); return result; } } /** * Currency supported by the bank account. Returned when the Session is in {@code setup} mode. * *

One of {@code cad}, or {@code usd}. */ @java.lang.SuppressWarnings("all") @lombok.Generated public String getCurrency() { return this.currency; } @java.lang.SuppressWarnings("all") @lombok.Generated public MandateOptions getMandateOptions() { return this.mandateOptions; } /** * Bank account verification method. * *

One of {@code automatic}, {@code instant}, or {@code microdeposits}. */ @java.lang.SuppressWarnings("all") @lombok.Generated public String getVerificationMethod() { return this.verificationMethod; } /** * Currency supported by the bank account. Returned when the Session is in {@code setup} mode. * *

One of {@code cad}, or {@code usd}. */ @java.lang.SuppressWarnings("all") @lombok.Generated public void setCurrency(final String currency) { this.currency = currency; } @java.lang.SuppressWarnings("all") @lombok.Generated public void setMandateOptions(final MandateOptions mandateOptions) { this.mandateOptions = mandateOptions; } /** * Bank account verification method. * *

One of {@code automatic}, {@code instant}, or {@code microdeposits}. */ @java.lang.SuppressWarnings("all") @lombok.Generated public void setVerificationMethod(final String verificationMethod) { this.verificationMethod = verificationMethod; } @java.lang.Override @java.lang.SuppressWarnings("all") @lombok.Generated public boolean equals(final java.lang.Object o) { if (o == this) return true; if (!(o instanceof Session.PaymentMethodOptions.AcssDebit)) return false; final Session.PaymentMethodOptions.AcssDebit other = (Session.PaymentMethodOptions.AcssDebit) o; if (!other.canEqual((java.lang.Object) this)) return false; final java.lang.Object this$currency = this.getCurrency(); final java.lang.Object other$currency = other.getCurrency(); if (this$currency == null ? other$currency != null : !this$currency.equals(other$currency)) return false; final java.lang.Object this$mandateOptions = this.getMandateOptions(); final java.lang.Object other$mandateOptions = other.getMandateOptions(); if (this$mandateOptions == null ? other$mandateOptions != null : !this$mandateOptions.equals(other$mandateOptions)) return false; final java.lang.Object this$verificationMethod = this.getVerificationMethod(); final java.lang.Object other$verificationMethod = other.getVerificationMethod(); if (this$verificationMethod == null ? other$verificationMethod != null : !this$verificationMethod.equals(other$verificationMethod)) return false; return true; } @java.lang.SuppressWarnings("all") @lombok.Generated protected boolean canEqual(final java.lang.Object other) { return other instanceof Session.PaymentMethodOptions.AcssDebit; } @java.lang.Override @java.lang.SuppressWarnings("all") @lombok.Generated public int hashCode() { final int PRIME = 59; int result = 1; final java.lang.Object $currency = this.getCurrency(); result = result * PRIME + ($currency == null ? 43 : $currency.hashCode()); final java.lang.Object $mandateOptions = this.getMandateOptions(); result = result * PRIME + ($mandateOptions == null ? 43 : $mandateOptions.hashCode()); final java.lang.Object $verificationMethod = this.getVerificationMethod(); result = result * PRIME + ($verificationMethod == null ? 43 : $verificationMethod.hashCode()); return result; } } /** * Transaction type of the mandate. * *

One of {@code business}, or {@code personal}. */ public static class Boleto extends StripeObject { /** * The number of calendar days before a Boleto voucher expires. For example, if you create a * Boleto voucher on Monday and you set expires_after_days to 2, the Boleto voucher will * expire on Wednesday at 23:59 America/Sao_Paulo time. */ @SerializedName("expires_after_days") Long expiresAfterDays; /** * The number of calendar days before a Boleto voucher expires. For example, if you create a * Boleto voucher on Monday and you set expires_after_days to 2, the Boleto voucher will * expire on Wednesday at 23:59 America/Sao_Paulo time. */ @java.lang.SuppressWarnings("all") @lombok.Generated public Long getExpiresAfterDays() { return this.expiresAfterDays; } /** * The number of calendar days before a Boleto voucher expires. For example, if you create a * Boleto voucher on Monday and you set expires_after_days to 2, the Boleto voucher will * expire on Wednesday at 23:59 America/Sao_Paulo time. */ @java.lang.SuppressWarnings("all") @lombok.Generated public void setExpiresAfterDays(final Long expiresAfterDays) { this.expiresAfterDays = expiresAfterDays; } @java.lang.Override @java.lang.SuppressWarnings("all") @lombok.Generated public boolean equals(final java.lang.Object o) { if (o == this) return true; if (!(o instanceof Session.PaymentMethodOptions.Boleto)) return false; final Session.PaymentMethodOptions.Boleto other = (Session.PaymentMethodOptions.Boleto) o; if (!other.canEqual((java.lang.Object) this)) return false; final java.lang.Object this$expiresAfterDays = this.getExpiresAfterDays(); final java.lang.Object other$expiresAfterDays = other.getExpiresAfterDays(); if (this$expiresAfterDays == null ? other$expiresAfterDays != null : !this$expiresAfterDays.equals(other$expiresAfterDays)) return false; return true; } @java.lang.SuppressWarnings("all") @lombok.Generated protected boolean canEqual(final java.lang.Object other) { return other instanceof Session.PaymentMethodOptions.Boleto; } @java.lang.Override @java.lang.SuppressWarnings("all") @lombok.Generated public int hashCode() { final int PRIME = 59; int result = 1; final java.lang.Object $expiresAfterDays = this.getExpiresAfterDays(); result = result * PRIME + ($expiresAfterDays == null ? 43 : $expiresAfterDays.hashCode()); return result; } } public static class Oxxo extends StripeObject { @SerializedName("expires_after_days") Long expiresAfterDays; @java.lang.SuppressWarnings("all") @lombok.Generated public Long getExpiresAfterDays() { return this.expiresAfterDays; } @java.lang.SuppressWarnings("all") @lombok.Generated public void setExpiresAfterDays(final Long expiresAfterDays) { this.expiresAfterDays = expiresAfterDays; } @java.lang.Override @java.lang.SuppressWarnings("all") @lombok.Generated public boolean equals(final java.lang.Object o) { if (o == this) return true; if (!(o instanceof Session.PaymentMethodOptions.Oxxo)) return false; final Session.PaymentMethodOptions.Oxxo other = (Session.PaymentMethodOptions.Oxxo) o; if (!other.canEqual((java.lang.Object) this)) return false; final java.lang.Object this$expiresAfterDays = this.getExpiresAfterDays(); final java.lang.Object other$expiresAfterDays = other.getExpiresAfterDays(); if (this$expiresAfterDays == null ? other$expiresAfterDays != null : !this$expiresAfterDays.equals(other$expiresAfterDays)) return false; return true; } @java.lang.SuppressWarnings("all") @lombok.Generated protected boolean canEqual(final java.lang.Object other) { return other instanceof Session.PaymentMethodOptions.Oxxo; } @java.lang.Override @java.lang.SuppressWarnings("all") @lombok.Generated public int hashCode() { final int PRIME = 59; int result = 1; final java.lang.Object $expiresAfterDays = this.getExpiresAfterDays(); result = result * PRIME + ($expiresAfterDays == null ? 43 : $expiresAfterDays.hashCode()); return result; } } @java.lang.SuppressWarnings("all") @lombok.Generated public AcssDebit getAcssDebit() { return this.acssDebit; } @java.lang.SuppressWarnings("all") @lombok.Generated public Boleto getBoleto() { return this.boleto; } @java.lang.SuppressWarnings("all") @lombok.Generated public Oxxo getOxxo() { return this.oxxo; } @java.lang.SuppressWarnings("all") @lombok.Generated public void setAcssDebit(final AcssDebit acssDebit) { this.acssDebit = acssDebit; } @java.lang.SuppressWarnings("all") @lombok.Generated public void setBoleto(final Boleto boleto) { this.boleto = boleto; } @java.lang.SuppressWarnings("all") @lombok.Generated public void setOxxo(final Oxxo oxxo) { this.oxxo = oxxo; } @java.lang.Override @java.lang.SuppressWarnings("all") @lombok.Generated public boolean equals(final java.lang.Object o) { if (o == this) return true; if (!(o instanceof Session.PaymentMethodOptions)) return false; final Session.PaymentMethodOptions other = (Session.PaymentMethodOptions) o; if (!other.canEqual((java.lang.Object) this)) return false; final java.lang.Object this$acssDebit = this.getAcssDebit(); final java.lang.Object other$acssDebit = other.getAcssDebit(); if (this$acssDebit == null ? other$acssDebit != null : !this$acssDebit.equals(other$acssDebit)) return false; final java.lang.Object this$boleto = this.getBoleto(); final java.lang.Object other$boleto = other.getBoleto(); if (this$boleto == null ? other$boleto != null : !this$boleto.equals(other$boleto)) return false; final java.lang.Object this$oxxo = this.getOxxo(); final java.lang.Object other$oxxo = other.getOxxo(); if (this$oxxo == null ? other$oxxo != null : !this$oxxo.equals(other$oxxo)) return false; return true; } @java.lang.SuppressWarnings("all") @lombok.Generated protected boolean canEqual(final java.lang.Object other) { return other instanceof Session.PaymentMethodOptions; } @java.lang.Override @java.lang.SuppressWarnings("all") @lombok.Generated public int hashCode() { final int PRIME = 59; int result = 1; final java.lang.Object $acssDebit = this.getAcssDebit(); result = result * PRIME + ($acssDebit == null ? 43 : $acssDebit.hashCode()); final java.lang.Object $boleto = this.getBoleto(); result = result * PRIME + ($boleto == null ? 43 : $boleto.hashCode()); final java.lang.Object $oxxo = this.getOxxo(); result = result * PRIME + ($oxxo == null ? 43 : $oxxo.hashCode()); return result; } } /** * The number of calendar days before an OXXO invoice expires. For example, if you create an * OXXO invoice on Monday and you set expires_after_days to 2, the OXXO invoice will expire on * Wednesday at 23:59 America/Mexico_City time. */ public static class ShippingAddressCollection extends StripeObject { /** * An array of two-letter ISO country codes representing which countries Checkout should provide * as options for shipping locations. Unsupported country codes: {@code AS, CX, CC, CU, HM, IR, * KP, MH, FM, NF, MP, PW, SD, SY, UM, VI}. */ @SerializedName("allowed_countries") List allowedCountries; /** * An array of two-letter ISO country codes representing which countries Checkout should provide * as options for shipping locations. Unsupported country codes: {@code AS, CX, CC, CU, HM, IR, * KP, MH, FM, NF, MP, PW, SD, SY, UM, VI}. */ @java.lang.SuppressWarnings("all") @lombok.Generated public List getAllowedCountries() { return this.allowedCountries; } /** * An array of two-letter ISO country codes representing which countries Checkout should provide * as options for shipping locations. Unsupported country codes: {@code AS, CX, CC, CU, HM, IR, * KP, MH, FM, NF, MP, PW, SD, SY, UM, VI}. */ @java.lang.SuppressWarnings("all") @lombok.Generated public void setAllowedCountries(final List allowedCountries) { this.allowedCountries = allowedCountries; } @java.lang.Override @java.lang.SuppressWarnings("all") @lombok.Generated public boolean equals(final java.lang.Object o) { if (o == this) return true; if (!(o instanceof Session.ShippingAddressCollection)) return false; final Session.ShippingAddressCollection other = (Session.ShippingAddressCollection) o; if (!other.canEqual((java.lang.Object) this)) return false; final java.lang.Object this$allowedCountries = this.getAllowedCountries(); final java.lang.Object other$allowedCountries = other.getAllowedCountries(); if (this$allowedCountries == null ? other$allowedCountries != null : !this$allowedCountries.equals(other$allowedCountries)) return false; return true; } @java.lang.SuppressWarnings("all") @lombok.Generated protected boolean canEqual(final java.lang.Object other) { return other instanceof Session.ShippingAddressCollection; } @java.lang.Override @java.lang.SuppressWarnings("all") @lombok.Generated public int hashCode() { final int PRIME = 59; int result = 1; final java.lang.Object $allowedCountries = this.getAllowedCountries(); result = result * PRIME + ($allowedCountries == null ? 43 : $allowedCountries.hashCode()); return result; } } public static class TaxIDCollection extends StripeObject { /** * Indicates whether tax ID collection is enabled for the session. */ @SerializedName("enabled") Boolean enabled; /** * Indicates whether tax ID collection is enabled for the session. */ @java.lang.SuppressWarnings("all") @lombok.Generated public Boolean getEnabled() { return this.enabled; } /** * Indicates whether tax ID collection is enabled for the session. */ @java.lang.SuppressWarnings("all") @lombok.Generated public void setEnabled(final Boolean enabled) { this.enabled = enabled; } @java.lang.Override @java.lang.SuppressWarnings("all") @lombok.Generated public boolean equals(final java.lang.Object o) { if (o == this) return true; if (!(o instanceof Session.TaxIDCollection)) return false; final Session.TaxIDCollection other = (Session.TaxIDCollection) o; if (!other.canEqual((java.lang.Object) this)) return false; final java.lang.Object this$enabled = this.getEnabled(); final java.lang.Object other$enabled = other.getEnabled(); if (this$enabled == null ? other$enabled != null : !this$enabled.equals(other$enabled)) return false; return true; } @java.lang.SuppressWarnings("all") @lombok.Generated protected boolean canEqual(final java.lang.Object other) { return other instanceof Session.TaxIDCollection; } @java.lang.Override @java.lang.SuppressWarnings("all") @lombok.Generated public int hashCode() { final int PRIME = 59; int result = 1; final java.lang.Object $enabled = this.getEnabled(); result = result * PRIME + ($enabled == null ? 43 : $enabled.hashCode()); return result; } } public static class TotalDetails extends StripeObject { /** This is the sum of all the line item discounts. */ @SerializedName("amount_discount") Long amountDiscount; /** This is the sum of all the line item shipping amounts. */ @SerializedName("amount_shipping") Long amountShipping; /** This is the sum of all the line item tax amounts. */ @SerializedName("amount_tax") Long amountTax; @SerializedName("breakdown") Breakdown breakdown; public static class Breakdown extends StripeObject { /** The aggregated line item discounts. */ @SerializedName("discounts") List discounts; /** The aggregated line item tax amounts by rate. */ @SerializedName("taxes") List taxes; @java.lang.SuppressWarnings("all") @lombok.Generated public List getDiscounts() { return this.discounts; } @java.lang.SuppressWarnings("all") @lombok.Generated public List getTaxes() { return this.taxes; } @java.lang.SuppressWarnings("all") @lombok.Generated public void setDiscounts(final List discounts) { this.discounts = discounts; } @java.lang.SuppressWarnings("all") @lombok.Generated public void setTaxes(final List taxes) { this.taxes = taxes; } @java.lang.Override @java.lang.SuppressWarnings("all") @lombok.Generated public boolean equals(final java.lang.Object o) { if (o == this) return true; if (!(o instanceof Session.TotalDetails.Breakdown)) return false; final Session.TotalDetails.Breakdown other = (Session.TotalDetails.Breakdown) o; if (!other.canEqual((java.lang.Object) this)) return false; final java.lang.Object this$discounts = this.getDiscounts(); final java.lang.Object other$discounts = other.getDiscounts(); if (this$discounts == null ? other$discounts != null : !this$discounts.equals(other$discounts)) return false; final java.lang.Object this$taxes = this.getTaxes(); final java.lang.Object other$taxes = other.getTaxes(); if (this$taxes == null ? other$taxes != null : !this$taxes.equals(other$taxes)) return false; return true; } @java.lang.SuppressWarnings("all") @lombok.Generated protected boolean canEqual(final java.lang.Object other) { return other instanceof Session.TotalDetails.Breakdown; } @java.lang.Override @java.lang.SuppressWarnings("all") @lombok.Generated public int hashCode() { final int PRIME = 59; int result = 1; final java.lang.Object $discounts = this.getDiscounts(); result = result * PRIME + ($discounts == null ? 43 : $discounts.hashCode()); final java.lang.Object $taxes = this.getTaxes(); result = result * PRIME + ($taxes == null ? 43 : $taxes.hashCode()); return result; } } @java.lang.SuppressWarnings("all") @lombok.Generated public Long getAmountDiscount() { return this.amountDiscount; } @java.lang.SuppressWarnings("all") @lombok.Generated public Long getAmountShipping() { return this.amountShipping; } @java.lang.SuppressWarnings("all") @lombok.Generated public Long getAmountTax() { return this.amountTax; } @java.lang.SuppressWarnings("all") @lombok.Generated public Breakdown getBreakdown() { return this.breakdown; } @java.lang.SuppressWarnings("all") @lombok.Generated public void setAmountDiscount(final Long amountDiscount) { this.amountDiscount = amountDiscount; } @java.lang.SuppressWarnings("all") @lombok.Generated public void setAmountShipping(final Long amountShipping) { this.amountShipping = amountShipping; } @java.lang.SuppressWarnings("all") @lombok.Generated public void setAmountTax(final Long amountTax) { this.amountTax = amountTax; } @java.lang.SuppressWarnings("all") @lombok.Generated public void setBreakdown(final Breakdown breakdown) { this.breakdown = breakdown; } @java.lang.Override @java.lang.SuppressWarnings("all") @lombok.Generated public boolean equals(final java.lang.Object o) { if (o == this) return true; if (!(o instanceof Session.TotalDetails)) return false; final Session.TotalDetails other = (Session.TotalDetails) o; if (!other.canEqual((java.lang.Object) this)) return false; final java.lang.Object this$amountDiscount = this.getAmountDiscount(); final java.lang.Object other$amountDiscount = other.getAmountDiscount(); if (this$amountDiscount == null ? other$amountDiscount != null : !this$amountDiscount.equals(other$amountDiscount)) return false; final java.lang.Object this$amountShipping = this.getAmountShipping(); final java.lang.Object other$amountShipping = other.getAmountShipping(); if (this$amountShipping == null ? other$amountShipping != null : !this$amountShipping.equals(other$amountShipping)) return false; final java.lang.Object this$amountTax = this.getAmountTax(); final java.lang.Object other$amountTax = other.getAmountTax(); if (this$amountTax == null ? other$amountTax != null : !this$amountTax.equals(other$amountTax)) return false; final java.lang.Object this$breakdown = this.getBreakdown(); final java.lang.Object other$breakdown = other.getBreakdown(); if (this$breakdown == null ? other$breakdown != null : !this$breakdown.equals(other$breakdown)) return false; return true; } @java.lang.SuppressWarnings("all") @lombok.Generated protected boolean canEqual(final java.lang.Object other) { return other instanceof Session.TotalDetails; } @java.lang.Override @java.lang.SuppressWarnings("all") @lombok.Generated public int hashCode() { final int PRIME = 59; int result = 1; final java.lang.Object $amountDiscount = this.getAmountDiscount(); result = result * PRIME + ($amountDiscount == null ? 43 : $amountDiscount.hashCode()); final java.lang.Object $amountShipping = this.getAmountShipping(); result = result * PRIME + ($amountShipping == null ? 43 : $amountShipping.hashCode()); final java.lang.Object $amountTax = this.getAmountTax(); result = result * PRIME + ($amountTax == null ? 43 : $amountTax.hashCode()); final java.lang.Object $breakdown = this.getBreakdown(); result = result * PRIME + ($breakdown == null ? 43 : $breakdown.hashCode()); return result; } } /** * Enables user redeemable promotion codes. */ @java.lang.SuppressWarnings("all") @lombok.Generated public Boolean getAllowPromotionCodes() { return this.allowPromotionCodes; } /** * Total of all items before discounts or taxes are applied. */ @java.lang.SuppressWarnings("all") @lombok.Generated public Long getAmountSubtotal() { return this.amountSubtotal; } /** * Total of all items after discounts and taxes are applied. */ @java.lang.SuppressWarnings("all") @lombok.Generated public Long getAmountTotal() { return this.amountTotal; } @java.lang.SuppressWarnings("all") @lombok.Generated public AutomaticTax getAutomaticTax() { return this.automaticTax; } /** * Describes whether Checkout should collect the customer's billing address. * *

One of {@code auto}, or {@code required}. */ @java.lang.SuppressWarnings("all") @lombok.Generated public String getBillingAddressCollection() { return this.billingAddressCollection; } /** * The URL the customer will be directed to if they decide to cancel payment and return to your * website. */ @java.lang.SuppressWarnings("all") @lombok.Generated public String getCancelUrl() { return this.cancelUrl; } /** * A unique string to reference the Checkout Session. This can be a customer ID, a cart ID, or * similar, and can be used to reconcile the Session with your internal systems. */ @java.lang.SuppressWarnings("all") @lombok.Generated public String getClientReferenceId() { return this.clientReferenceId; } /** * Three-letter ISO currency code, * in lowercase. Must be a supported currency. */ @java.lang.SuppressWarnings("all") @lombok.Generated public String getCurrency() { return this.currency; } /** * The customer details including the customer's tax exempt status and the customer's tax IDs. * Only present on Sessions in {@code payment} or {@code subscription} mode. */ @java.lang.SuppressWarnings("all") @lombok.Generated public CustomerDetails getCustomerDetails() { return this.customerDetails; } /** * If provided, this value will be used when the Customer object is created. If not provided, * customers will be asked to enter their email address. Use this parameter to prefill customer * data if you already have an email on file. To access information about the customer once the * payment flow is complete, use the {@code customer} attribute. */ @java.lang.SuppressWarnings("all") @lombok.Generated public String getCustomerEmail() { return this.customerEmail; } /** * The line items purchased by the customer. */ @java.lang.SuppressWarnings("all") @lombok.Generated public LineItemCollection getLineItems() { return this.lineItems; } /** * Has the value {@code true} if the object exists in live mode or the value {@code false} if the * object exists in test mode. */ @java.lang.SuppressWarnings("all") @lombok.Generated public Boolean getLivemode() { return this.livemode; } /** * The IETF language tag of the locale Checkout is displayed in. If blank or {@code auto}, the * browser's locale is used. * *

One of {@code auto}, {@code bg}, {@code cs}, {@code da}, {@code de}, {@code el}, {@code en}, * {@code en-GB}, {@code es}, {@code es-419}, {@code et}, {@code fi}, {@code fr}, {@code fr-CA}, * {@code hu}, {@code id}, {@code it}, {@code ja}, {@code lt}, {@code lv}, {@code ms}, {@code mt}, * {@code nb}, {@code nl}, {@code pl}, {@code pt}, {@code pt-BR}, {@code ro}, {@code ru}, {@code * sk}, {@code sl}, {@code sv}, {@code th}, {@code tr}, {@code zh}, {@code zh-HK}, or {@code * zh-TW}. */ @java.lang.SuppressWarnings("all") @lombok.Generated public String getLocale() { return this.locale; } /** * 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. */ @java.lang.SuppressWarnings("all") @lombok.Generated public Map getMetadata() { return this.metadata; } /** * The mode of the Checkout Session. * *

One of {@code payment}, {@code setup}, or {@code subscription}. */ @java.lang.SuppressWarnings("all") @lombok.Generated public String getMode() { return this.mode; } /** * String representing the object's type. Objects of the same type share the same value. * *

Equal to {@code checkout.session}. */ @java.lang.SuppressWarnings("all") @lombok.Generated public String getObject() { return this.object; } /** * Payment-method-specific configuration for the PaymentIntent or SetupIntent of this * CheckoutSession. */ @java.lang.SuppressWarnings("all") @lombok.Generated public PaymentMethodOptions getPaymentMethodOptions() { return this.paymentMethodOptions; } /** * A list of the types of payment methods (e.g. card) this Checkout Session is allowed to accept. */ @java.lang.SuppressWarnings("all") @lombok.Generated public List getPaymentMethodTypes() { return this.paymentMethodTypes; } /** * The payment status of the Checkout Session, one of {@code paid}, {@code unpaid}, or {@code * no_payment_required}. You can use this value to decide when to fulfill your customer's order. */ @java.lang.SuppressWarnings("all") @lombok.Generated public String getPaymentStatus() { return this.paymentStatus; } /** * Shipping information for this Checkout Session. */ @java.lang.SuppressWarnings("all") @lombok.Generated public ShippingDetails getShipping() { return this.shipping; } /** * When set, provides configuration for Checkout to collect a shipping address from a customer. */ @java.lang.SuppressWarnings("all") @lombok.Generated public ShippingAddressCollection getShippingAddressCollection() { return this.shippingAddressCollection; } /** * Describes the type of transaction being performed by Checkout in order to customize relevant * text on the page, such as the submit button. {@code submit_type} can only be specified on * Checkout Sessions in {@code payment} mode, but not Checkout Sessions in {@code subscription} or * {@code setup} mode. * *

One of {@code auto}, {@code book}, {@code donate}, or {@code pay}. */ @java.lang.SuppressWarnings("all") @lombok.Generated public String getSubmitType() { return this.submitType; } /** * The URL the customer will be directed to after the payment or subscription creation is * successful. */ @java.lang.SuppressWarnings("all") @lombok.Generated public String getSuccessUrl() { return this.successUrl; } @java.lang.SuppressWarnings("all") @lombok.Generated public TaxIDCollection getTaxIdCollection() { return this.taxIdCollection; } /** * Tax and discount details for the computed total amount. */ @java.lang.SuppressWarnings("all") @lombok.Generated public TotalDetails getTotalDetails() { return this.totalDetails; } /** * The URL to the Checkout Session. */ @java.lang.SuppressWarnings("all") @lombok.Generated public String getUrl() { return this.url; } /** * Enables user redeemable promotion codes. */ @java.lang.SuppressWarnings("all") @lombok.Generated public void setAllowPromotionCodes(final Boolean allowPromotionCodes) { this.allowPromotionCodes = allowPromotionCodes; } /** * Total of all items before discounts or taxes are applied. */ @java.lang.SuppressWarnings("all") @lombok.Generated public void setAmountSubtotal(final Long amountSubtotal) { this.amountSubtotal = amountSubtotal; } /** * Total of all items after discounts and taxes are applied. */ @java.lang.SuppressWarnings("all") @lombok.Generated public void setAmountTotal(final Long amountTotal) { this.amountTotal = amountTotal; } @java.lang.SuppressWarnings("all") @lombok.Generated public void setAutomaticTax(final AutomaticTax automaticTax) { this.automaticTax = automaticTax; } /** * Describes whether Checkout should collect the customer's billing address. * *

One of {@code auto}, or {@code required}. */ @java.lang.SuppressWarnings("all") @lombok.Generated public void setBillingAddressCollection(final String billingAddressCollection) { this.billingAddressCollection = billingAddressCollection; } /** * The URL the customer will be directed to if they decide to cancel payment and return to your * website. */ @java.lang.SuppressWarnings("all") @lombok.Generated public void setCancelUrl(final String cancelUrl) { this.cancelUrl = cancelUrl; } /** * A unique string to reference the Checkout Session. This can be a customer ID, a cart ID, or * similar, and can be used to reconcile the Session with your internal systems. */ @java.lang.SuppressWarnings("all") @lombok.Generated public void setClientReferenceId(final String clientReferenceId) { this.clientReferenceId = clientReferenceId; } /** * Three-letter ISO currency code, * in lowercase. Must be a supported currency. */ @java.lang.SuppressWarnings("all") @lombok.Generated public void setCurrency(final String currency) { this.currency = currency; } /** * The customer details including the customer's tax exempt status and the customer's tax IDs. * Only present on Sessions in {@code payment} or {@code subscription} mode. */ @java.lang.SuppressWarnings("all") @lombok.Generated public void setCustomerDetails(final CustomerDetails customerDetails) { this.customerDetails = customerDetails; } /** * If provided, this value will be used when the Customer object is created. If not provided, * customers will be asked to enter their email address. Use this parameter to prefill customer * data if you already have an email on file. To access information about the customer once the * payment flow is complete, use the {@code customer} attribute. */ @java.lang.SuppressWarnings("all") @lombok.Generated public void setCustomerEmail(final String customerEmail) { this.customerEmail = customerEmail; } /** * Unique identifier for the object. Used to pass to {@code redirectToCheckout} in Stripe.js. */ @java.lang.SuppressWarnings("all") @lombok.Generated public void setId(final String id) { this.id = id; } /** * The line items purchased by the customer. */ @java.lang.SuppressWarnings("all") @lombok.Generated public void setLineItems(final LineItemCollection lineItems) { this.lineItems = lineItems; } /** * Has the value {@code true} if the object exists in live mode or the value {@code false} if the * object exists in test mode. */ @java.lang.SuppressWarnings("all") @lombok.Generated public void setLivemode(final Boolean livemode) { this.livemode = livemode; } /** * The IETF language tag of the locale Checkout is displayed in. If blank or {@code auto}, the * browser's locale is used. * *

One of {@code auto}, {@code bg}, {@code cs}, {@code da}, {@code de}, {@code el}, {@code en}, * {@code en-GB}, {@code es}, {@code es-419}, {@code et}, {@code fi}, {@code fr}, {@code fr-CA}, * {@code hu}, {@code id}, {@code it}, {@code ja}, {@code lt}, {@code lv}, {@code ms}, {@code mt}, * {@code nb}, {@code nl}, {@code pl}, {@code pt}, {@code pt-BR}, {@code ro}, {@code ru}, {@code * sk}, {@code sl}, {@code sv}, {@code th}, {@code tr}, {@code zh}, {@code zh-HK}, or {@code * zh-TW}. */ @java.lang.SuppressWarnings("all") @lombok.Generated public void setLocale(final String locale) { this.locale = locale; } /** * 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. */ @java.lang.SuppressWarnings("all") @lombok.Generated public void setMetadata(final Map metadata) { this.metadata = metadata; } /** * The mode of the Checkout Session. * *

One of {@code payment}, {@code setup}, or {@code subscription}. */ @java.lang.SuppressWarnings("all") @lombok.Generated public void setMode(final String mode) { this.mode = mode; } /** * String representing the object's type. Objects of the same type share the same value. * *

Equal to {@code checkout.session}. */ @java.lang.SuppressWarnings("all") @lombok.Generated public void setObject(final String object) { this.object = object; } /** * Payment-method-specific configuration for the PaymentIntent or SetupIntent of this * CheckoutSession. */ @java.lang.SuppressWarnings("all") @lombok.Generated public void setPaymentMethodOptions(final PaymentMethodOptions paymentMethodOptions) { this.paymentMethodOptions = paymentMethodOptions; } /** * A list of the types of payment methods (e.g. card) this Checkout Session is allowed to accept. */ @java.lang.SuppressWarnings("all") @lombok.Generated public void setPaymentMethodTypes(final List paymentMethodTypes) { this.paymentMethodTypes = paymentMethodTypes; } /** * The payment status of the Checkout Session, one of {@code paid}, {@code unpaid}, or {@code * no_payment_required}. You can use this value to decide when to fulfill your customer's order. */ @java.lang.SuppressWarnings("all") @lombok.Generated public void setPaymentStatus(final String paymentStatus) { this.paymentStatus = paymentStatus; } /** * Shipping information for this Checkout Session. */ @java.lang.SuppressWarnings("all") @lombok.Generated public void setShipping(final ShippingDetails shipping) { this.shipping = shipping; } /** * When set, provides configuration for Checkout to collect a shipping address from a customer. */ @java.lang.SuppressWarnings("all") @lombok.Generated public void setShippingAddressCollection(final ShippingAddressCollection shippingAddressCollection) { this.shippingAddressCollection = shippingAddressCollection; } /** * Describes the type of transaction being performed by Checkout in order to customize relevant * text on the page, such as the submit button. {@code submit_type} can only be specified on * Checkout Sessions in {@code payment} mode, but not Checkout Sessions in {@code subscription} or * {@code setup} mode. * *

One of {@code auto}, {@code book}, {@code donate}, or {@code pay}. */ @java.lang.SuppressWarnings("all") @lombok.Generated public void setSubmitType(final String submitType) { this.submitType = submitType; } /** * The URL the customer will be directed to after the payment or subscription creation is * successful. */ @java.lang.SuppressWarnings("all") @lombok.Generated public void setSuccessUrl(final String successUrl) { this.successUrl = successUrl; } @java.lang.SuppressWarnings("all") @lombok.Generated public void setTaxIdCollection(final TaxIDCollection taxIdCollection) { this.taxIdCollection = taxIdCollection; } /** * Tax and discount details for the computed total amount. */ @java.lang.SuppressWarnings("all") @lombok.Generated public void setTotalDetails(final TotalDetails totalDetails) { this.totalDetails = totalDetails; } /** * The URL to the Checkout Session. */ @java.lang.SuppressWarnings("all") @lombok.Generated public void setUrl(final String url) { this.url = url; } @java.lang.Override @java.lang.SuppressWarnings("all") @lombok.Generated public boolean equals(final java.lang.Object o) { if (o == this) return true; if (!(o instanceof Session)) return false; final Session other = (Session) o; if (!other.canEqual((java.lang.Object) this)) return false; final java.lang.Object this$allowPromotionCodes = this.getAllowPromotionCodes(); final java.lang.Object other$allowPromotionCodes = other.getAllowPromotionCodes(); if (this$allowPromotionCodes == null ? other$allowPromotionCodes != null : !this$allowPromotionCodes.equals(other$allowPromotionCodes)) return false; final java.lang.Object this$amountSubtotal = this.getAmountSubtotal(); final java.lang.Object other$amountSubtotal = other.getAmountSubtotal(); if (this$amountSubtotal == null ? other$amountSubtotal != null : !this$amountSubtotal.equals(other$amountSubtotal)) return false; final java.lang.Object this$amountTotal = this.getAmountTotal(); final java.lang.Object other$amountTotal = other.getAmountTotal(); if (this$amountTotal == null ? other$amountTotal != null : !this$amountTotal.equals(other$amountTotal)) return false; final java.lang.Object this$livemode = this.getLivemode(); final java.lang.Object other$livemode = other.getLivemode(); if (this$livemode == null ? other$livemode != null : !this$livemode.equals(other$livemode)) return false; final java.lang.Object this$automaticTax = this.getAutomaticTax(); final java.lang.Object other$automaticTax = other.getAutomaticTax(); if (this$automaticTax == null ? other$automaticTax != null : !this$automaticTax.equals(other$automaticTax)) return false; final java.lang.Object this$billingAddressCollection = this.getBillingAddressCollection(); final java.lang.Object other$billingAddressCollection = other.getBillingAddressCollection(); if (this$billingAddressCollection == null ? other$billingAddressCollection != null : !this$billingAddressCollection.equals(other$billingAddressCollection)) return false; final java.lang.Object this$cancelUrl = this.getCancelUrl(); final java.lang.Object other$cancelUrl = other.getCancelUrl(); if (this$cancelUrl == null ? other$cancelUrl != null : !this$cancelUrl.equals(other$cancelUrl)) return false; final java.lang.Object this$clientReferenceId = this.getClientReferenceId(); final java.lang.Object other$clientReferenceId = other.getClientReferenceId(); if (this$clientReferenceId == null ? other$clientReferenceId != null : !this$clientReferenceId.equals(other$clientReferenceId)) return false; final java.lang.Object this$currency = this.getCurrency(); final java.lang.Object other$currency = other.getCurrency(); if (this$currency == null ? other$currency != null : !this$currency.equals(other$currency)) return false; final java.lang.Object this$customer = this.getCustomer(); final java.lang.Object other$customer = other.getCustomer(); if (this$customer == null ? other$customer != null : !this$customer.equals(other$customer)) return false; final java.lang.Object this$customerDetails = this.getCustomerDetails(); final java.lang.Object other$customerDetails = other.getCustomerDetails(); if (this$customerDetails == null ? other$customerDetails != null : !this$customerDetails.equals(other$customerDetails)) return false; final java.lang.Object this$customerEmail = this.getCustomerEmail(); final java.lang.Object other$customerEmail = other.getCustomerEmail(); if (this$customerEmail == null ? other$customerEmail != null : !this$customerEmail.equals(other$customerEmail)) return false; final java.lang.Object this$id = this.getId(); final java.lang.Object other$id = other.getId(); if (this$id == null ? other$id != null : !this$id.equals(other$id)) return false; final java.lang.Object this$lineItems = this.getLineItems(); final java.lang.Object other$lineItems = other.getLineItems(); if (this$lineItems == null ? other$lineItems != null : !this$lineItems.equals(other$lineItems)) return false; final java.lang.Object this$locale = this.getLocale(); final java.lang.Object other$locale = other.getLocale(); if (this$locale == null ? other$locale != null : !this$locale.equals(other$locale)) return false; final java.lang.Object this$metadata = this.getMetadata(); final java.lang.Object other$metadata = other.getMetadata(); if (this$metadata == null ? other$metadata != null : !this$metadata.equals(other$metadata)) return false; final java.lang.Object this$mode = this.getMode(); final java.lang.Object other$mode = other.getMode(); if (this$mode == null ? other$mode != null : !this$mode.equals(other$mode)) return false; final java.lang.Object this$object = this.getObject(); final java.lang.Object other$object = other.getObject(); if (this$object == null ? other$object != null : !this$object.equals(other$object)) return false; final java.lang.Object this$paymentIntent = this.getPaymentIntent(); final java.lang.Object other$paymentIntent = other.getPaymentIntent(); if (this$paymentIntent == null ? other$paymentIntent != null : !this$paymentIntent.equals(other$paymentIntent)) return false; final java.lang.Object this$paymentMethodOptions = this.getPaymentMethodOptions(); final java.lang.Object other$paymentMethodOptions = other.getPaymentMethodOptions(); if (this$paymentMethodOptions == null ? other$paymentMethodOptions != null : !this$paymentMethodOptions.equals(other$paymentMethodOptions)) return false; final java.lang.Object this$paymentMethodTypes = this.getPaymentMethodTypes(); final java.lang.Object other$paymentMethodTypes = other.getPaymentMethodTypes(); if (this$paymentMethodTypes == null ? other$paymentMethodTypes != null : !this$paymentMethodTypes.equals(other$paymentMethodTypes)) return false; final java.lang.Object this$paymentStatus = this.getPaymentStatus(); final java.lang.Object other$paymentStatus = other.getPaymentStatus(); if (this$paymentStatus == null ? other$paymentStatus != null : !this$paymentStatus.equals(other$paymentStatus)) return false; final java.lang.Object this$setupIntent = this.getSetupIntent(); final java.lang.Object other$setupIntent = other.getSetupIntent(); if (this$setupIntent == null ? other$setupIntent != null : !this$setupIntent.equals(other$setupIntent)) return false; final java.lang.Object this$shipping = this.getShipping(); final java.lang.Object other$shipping = other.getShipping(); if (this$shipping == null ? other$shipping != null : !this$shipping.equals(other$shipping)) return false; final java.lang.Object this$shippingAddressCollection = this.getShippingAddressCollection(); final java.lang.Object other$shippingAddressCollection = other.getShippingAddressCollection(); if (this$shippingAddressCollection == null ? other$shippingAddressCollection != null : !this$shippingAddressCollection.equals(other$shippingAddressCollection)) return false; final java.lang.Object this$submitType = this.getSubmitType(); final java.lang.Object other$submitType = other.getSubmitType(); if (this$submitType == null ? other$submitType != null : !this$submitType.equals(other$submitType)) return false; final java.lang.Object this$subscription = this.getSubscription(); final java.lang.Object other$subscription = other.getSubscription(); if (this$subscription == null ? other$subscription != null : !this$subscription.equals(other$subscription)) return false; final java.lang.Object this$successUrl = this.getSuccessUrl(); final java.lang.Object other$successUrl = other.getSuccessUrl(); if (this$successUrl == null ? other$successUrl != null : !this$successUrl.equals(other$successUrl)) return false; final java.lang.Object this$taxIdCollection = this.getTaxIdCollection(); final java.lang.Object other$taxIdCollection = other.getTaxIdCollection(); if (this$taxIdCollection == null ? other$taxIdCollection != null : !this$taxIdCollection.equals(other$taxIdCollection)) return false; final java.lang.Object this$totalDetails = this.getTotalDetails(); final java.lang.Object other$totalDetails = other.getTotalDetails(); if (this$totalDetails == null ? other$totalDetails != null : !this$totalDetails.equals(other$totalDetails)) return false; final java.lang.Object this$url = this.getUrl(); final java.lang.Object other$url = other.getUrl(); if (this$url == null ? other$url != null : !this$url.equals(other$url)) return false; return true; } @java.lang.SuppressWarnings("all") @lombok.Generated protected boolean canEqual(final java.lang.Object other) { return other instanceof Session; } @java.lang.Override @java.lang.SuppressWarnings("all") @lombok.Generated public int hashCode() { final int PRIME = 59; int result = 1; final java.lang.Object $allowPromotionCodes = this.getAllowPromotionCodes(); result = result * PRIME + ($allowPromotionCodes == null ? 43 : $allowPromotionCodes.hashCode()); final java.lang.Object $amountSubtotal = this.getAmountSubtotal(); result = result * PRIME + ($amountSubtotal == null ? 43 : $amountSubtotal.hashCode()); final java.lang.Object $amountTotal = this.getAmountTotal(); result = result * PRIME + ($amountTotal == null ? 43 : $amountTotal.hashCode()); final java.lang.Object $livemode = this.getLivemode(); result = result * PRIME + ($livemode == null ? 43 : $livemode.hashCode()); final java.lang.Object $automaticTax = this.getAutomaticTax(); result = result * PRIME + ($automaticTax == null ? 43 : $automaticTax.hashCode()); final java.lang.Object $billingAddressCollection = this.getBillingAddressCollection(); result = result * PRIME + ($billingAddressCollection == null ? 43 : $billingAddressCollection.hashCode()); final java.lang.Object $cancelUrl = this.getCancelUrl(); result = result * PRIME + ($cancelUrl == null ? 43 : $cancelUrl.hashCode()); final java.lang.Object $clientReferenceId = this.getClientReferenceId(); result = result * PRIME + ($clientReferenceId == null ? 43 : $clientReferenceId.hashCode()); final java.lang.Object $currency = this.getCurrency(); result = result * PRIME + ($currency == null ? 43 : $currency.hashCode()); final java.lang.Object $customer = this.getCustomer(); result = result * PRIME + ($customer == null ? 43 : $customer.hashCode()); final java.lang.Object $customerDetails = this.getCustomerDetails(); result = result * PRIME + ($customerDetails == null ? 43 : $customerDetails.hashCode()); final java.lang.Object $customerEmail = this.getCustomerEmail(); result = result * PRIME + ($customerEmail == null ? 43 : $customerEmail.hashCode()); final java.lang.Object $id = this.getId(); result = result * PRIME + ($id == null ? 43 : $id.hashCode()); final java.lang.Object $lineItems = this.getLineItems(); result = result * PRIME + ($lineItems == null ? 43 : $lineItems.hashCode()); final java.lang.Object $locale = this.getLocale(); result = result * PRIME + ($locale == null ? 43 : $locale.hashCode()); final java.lang.Object $metadata = this.getMetadata(); result = result * PRIME + ($metadata == null ? 43 : $metadata.hashCode()); final java.lang.Object $mode = this.getMode(); result = result * PRIME + ($mode == null ? 43 : $mode.hashCode()); final java.lang.Object $object = this.getObject(); result = result * PRIME + ($object == null ? 43 : $object.hashCode()); final java.lang.Object $paymentIntent = this.getPaymentIntent(); result = result * PRIME + ($paymentIntent == null ? 43 : $paymentIntent.hashCode()); final java.lang.Object $paymentMethodOptions = this.getPaymentMethodOptions(); result = result * PRIME + ($paymentMethodOptions == null ? 43 : $paymentMethodOptions.hashCode()); final java.lang.Object $paymentMethodTypes = this.getPaymentMethodTypes(); result = result * PRIME + ($paymentMethodTypes == null ? 43 : $paymentMethodTypes.hashCode()); final java.lang.Object $paymentStatus = this.getPaymentStatus(); result = result * PRIME + ($paymentStatus == null ? 43 : $paymentStatus.hashCode()); final java.lang.Object $setupIntent = this.getSetupIntent(); result = result * PRIME + ($setupIntent == null ? 43 : $setupIntent.hashCode()); final java.lang.Object $shipping = this.getShipping(); result = result * PRIME + ($shipping == null ? 43 : $shipping.hashCode()); final java.lang.Object $shippingAddressCollection = this.getShippingAddressCollection(); result = result * PRIME + ($shippingAddressCollection == null ? 43 : $shippingAddressCollection.hashCode()); final java.lang.Object $submitType = this.getSubmitType(); result = result * PRIME + ($submitType == null ? 43 : $submitType.hashCode()); final java.lang.Object $subscription = this.getSubscription(); result = result * PRIME + ($subscription == null ? 43 : $subscription.hashCode()); final java.lang.Object $successUrl = this.getSuccessUrl(); result = result * PRIME + ($successUrl == null ? 43 : $successUrl.hashCode()); final java.lang.Object $taxIdCollection = this.getTaxIdCollection(); result = result * PRIME + ($taxIdCollection == null ? 43 : $taxIdCollection.hashCode()); final java.lang.Object $totalDetails = this.getTotalDetails(); result = result * PRIME + ($totalDetails == null ? 43 : $totalDetails.hashCode()); final java.lang.Object $url = this.getUrl(); result = result * PRIME + ($url == null ? 43 : $url.hashCode()); return result; } /** * Unique identifier for the object. Used to pass to {@code redirectToCheckout} in Stripe.js. */ @Override @java.lang.SuppressWarnings("all") @lombok.Generated public String getId() { return this.id; } }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy