
com.adyen.model.checkout.DonationPaymentRequest Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of adyen-java-api-library Show documentation
Show all versions of adyen-java-api-library Show documentation
Adyen API Client Library for Java
/*
* Adyen Checkout API
*
* The version of the OpenAPI document: 71
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
package com.adyen.model.checkout;
import java.util.Objects;
import java.util.Map;
import java.util.HashMap;
import com.adyen.model.checkout.AccountInfo;
import com.adyen.model.checkout.Amount;
import com.adyen.model.checkout.ApplicationInfo;
import com.adyen.model.checkout.AuthenticationData;
import com.adyen.model.checkout.BillingAddress;
import com.adyen.model.checkout.BrowserInfo;
import com.adyen.model.checkout.DeliveryAddress;
import com.adyen.model.checkout.DonationPaymentMethod;
import com.adyen.model.checkout.LineItem;
import com.adyen.model.checkout.MerchantRiskIndicator;
import com.adyen.model.checkout.Name;
import com.adyen.model.checkout.ThreeDS2RequestFields;
import com.adyen.model.checkout.ThreeDSecureData;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonTypeName;
import com.fasterxml.jackson.annotation.JsonValue;
import java.time.OffsetDateTime;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
import com.fasterxml.jackson.core.JsonProcessingException;
/**
* DonationPaymentRequest
*/
@JsonPropertyOrder({
DonationPaymentRequest.JSON_PROPERTY_ACCOUNT_INFO,
DonationPaymentRequest.JSON_PROPERTY_ADDITIONAL_DATA,
DonationPaymentRequest.JSON_PROPERTY_AMOUNT,
DonationPaymentRequest.JSON_PROPERTY_APPLICATION_INFO,
DonationPaymentRequest.JSON_PROPERTY_AUTHENTICATION_DATA,
DonationPaymentRequest.JSON_PROPERTY_BILLING_ADDRESS,
DonationPaymentRequest.JSON_PROPERTY_BROWSER_INFO,
DonationPaymentRequest.JSON_PROPERTY_CHANNEL,
DonationPaymentRequest.JSON_PROPERTY_CHECKOUT_ATTEMPT_ID,
DonationPaymentRequest.JSON_PROPERTY_CONVERSION_ID,
DonationPaymentRequest.JSON_PROPERTY_COUNTRY_CODE,
DonationPaymentRequest.JSON_PROPERTY_DATE_OF_BIRTH,
DonationPaymentRequest.JSON_PROPERTY_DELIVER_AT,
DonationPaymentRequest.JSON_PROPERTY_DELIVERY_ADDRESS,
DonationPaymentRequest.JSON_PROPERTY_DEVICE_FINGERPRINT,
DonationPaymentRequest.JSON_PROPERTY_DONATION_ACCOUNT,
DonationPaymentRequest.JSON_PROPERTY_DONATION_CAMPAIGN_ID,
DonationPaymentRequest.JSON_PROPERTY_DONATION_ORIGINAL_PSP_REFERENCE,
DonationPaymentRequest.JSON_PROPERTY_DONATION_TOKEN,
DonationPaymentRequest.JSON_PROPERTY_LINE_ITEMS,
DonationPaymentRequest.JSON_PROPERTY_MERCHANT_ACCOUNT,
DonationPaymentRequest.JSON_PROPERTY_MERCHANT_RISK_INDICATOR,
DonationPaymentRequest.JSON_PROPERTY_METADATA,
DonationPaymentRequest.JSON_PROPERTY_MPI_DATA,
DonationPaymentRequest.JSON_PROPERTY_ORIGIN,
DonationPaymentRequest.JSON_PROPERTY_PAYMENT_METHOD,
DonationPaymentRequest.JSON_PROPERTY_RECURRING_PROCESSING_MODEL,
DonationPaymentRequest.JSON_PROPERTY_REDIRECT_FROM_ISSUER_METHOD,
DonationPaymentRequest.JSON_PROPERTY_REDIRECT_TO_ISSUER_METHOD,
DonationPaymentRequest.JSON_PROPERTY_REFERENCE,
DonationPaymentRequest.JSON_PROPERTY_RETURN_URL,
DonationPaymentRequest.JSON_PROPERTY_SESSION_VALIDITY,
DonationPaymentRequest.JSON_PROPERTY_SHOPPER_EMAIL,
DonationPaymentRequest.JSON_PROPERTY_SHOPPER_I_P,
DonationPaymentRequest.JSON_PROPERTY_SHOPPER_INTERACTION,
DonationPaymentRequest.JSON_PROPERTY_SHOPPER_LOCALE,
DonationPaymentRequest.JSON_PROPERTY_SHOPPER_NAME,
DonationPaymentRequest.JSON_PROPERTY_SHOPPER_REFERENCE,
DonationPaymentRequest.JSON_PROPERTY_SOCIAL_SECURITY_NUMBER,
DonationPaymentRequest.JSON_PROPERTY_TELEPHONE_NUMBER,
DonationPaymentRequest.JSON_PROPERTY_THREE_D_S2_REQUEST_DATA,
DonationPaymentRequest.JSON_PROPERTY_THREE_D_S_AUTHENTICATION_ONLY
})
public class DonationPaymentRequest {
public static final String JSON_PROPERTY_ACCOUNT_INFO = "accountInfo";
private AccountInfo accountInfo;
public static final String JSON_PROPERTY_ADDITIONAL_DATA = "additionalData";
private Map additionalData;
public static final String JSON_PROPERTY_AMOUNT = "amount";
private Amount amount;
public static final String JSON_PROPERTY_APPLICATION_INFO = "applicationInfo";
private ApplicationInfo applicationInfo;
public static final String JSON_PROPERTY_AUTHENTICATION_DATA = "authenticationData";
private AuthenticationData authenticationData;
public static final String JSON_PROPERTY_BILLING_ADDRESS = "billingAddress";
private BillingAddress billingAddress;
public static final String JSON_PROPERTY_BROWSER_INFO = "browserInfo";
private BrowserInfo browserInfo;
/**
* The platform where a payment transaction takes place. This field is optional for filtering out payment methods that are only available on specific platforms. If this value is not set, then we will try to infer it from the `sdkVersion` or `token`. Possible values: * iOS * Android * Web
*/
public enum ChannelEnum {
IOS(String.valueOf("iOS")),
ANDROID(String.valueOf("Android")),
WEB(String.valueOf("Web"));
private String value;
ChannelEnum(String value) {
this.value = value;
}
@JsonValue
public String getValue() {
return value;
}
@Override
public String toString() {
return String.valueOf(value);
}
@JsonCreator
public static ChannelEnum fromValue(String value) {
for (ChannelEnum b : ChannelEnum.values()) {
if (b.value.equals(value)) {
return b;
}
}
throw new IllegalArgumentException("Unexpected value '" + value + "'");
}
}
public static final String JSON_PROPERTY_CHANNEL = "channel";
private ChannelEnum channel;
public static final String JSON_PROPERTY_CHECKOUT_ATTEMPT_ID = "checkoutAttemptId";
private String checkoutAttemptId;
public static final String JSON_PROPERTY_CONVERSION_ID = "conversionId";
@Deprecated // deprecated since Adyen Checkout API v68: Use `checkoutAttemptId` instead
private String conversionId;
public static final String JSON_PROPERTY_COUNTRY_CODE = "countryCode";
private String countryCode;
public static final String JSON_PROPERTY_DATE_OF_BIRTH = "dateOfBirth";
private OffsetDateTime dateOfBirth;
public static final String JSON_PROPERTY_DELIVER_AT = "deliverAt";
private OffsetDateTime deliverAt;
public static final String JSON_PROPERTY_DELIVERY_ADDRESS = "deliveryAddress";
private DeliveryAddress deliveryAddress;
public static final String JSON_PROPERTY_DEVICE_FINGERPRINT = "deviceFingerprint";
private String deviceFingerprint;
public static final String JSON_PROPERTY_DONATION_ACCOUNT = "donationAccount";
private String donationAccount;
public static final String JSON_PROPERTY_DONATION_CAMPAIGN_ID = "donationCampaignId";
private String donationCampaignId;
public static final String JSON_PROPERTY_DONATION_ORIGINAL_PSP_REFERENCE = "donationOriginalPspReference";
private String donationOriginalPspReference;
public static final String JSON_PROPERTY_DONATION_TOKEN = "donationToken";
private String donationToken;
public static final String JSON_PROPERTY_LINE_ITEMS = "lineItems";
private List lineItems;
public static final String JSON_PROPERTY_MERCHANT_ACCOUNT = "merchantAccount";
private String merchantAccount;
public static final String JSON_PROPERTY_MERCHANT_RISK_INDICATOR = "merchantRiskIndicator";
private MerchantRiskIndicator merchantRiskIndicator;
public static final String JSON_PROPERTY_METADATA = "metadata";
private Map metadata;
public static final String JSON_PROPERTY_MPI_DATA = "mpiData";
private ThreeDSecureData mpiData;
public static final String JSON_PROPERTY_ORIGIN = "origin";
private String origin;
public static final String JSON_PROPERTY_PAYMENT_METHOD = "paymentMethod";
private DonationPaymentMethod paymentMethod;
/**
* Defines a recurring payment type. Required when creating a token to store payment details or using stored payment details. Allowed values: * `Subscription` – A transaction for a fixed or variable amount, which follows a fixed schedule. * `CardOnFile` – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction. * `UnscheduledCardOnFile` – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or have variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount.
*/
public enum RecurringProcessingModelEnum {
CARDONFILE(String.valueOf("CardOnFile")),
SUBSCRIPTION(String.valueOf("Subscription")),
UNSCHEDULEDCARDONFILE(String.valueOf("UnscheduledCardOnFile"));
private String value;
RecurringProcessingModelEnum(String value) {
this.value = value;
}
@JsonValue
public String getValue() {
return value;
}
@Override
public String toString() {
return String.valueOf(value);
}
@JsonCreator
public static RecurringProcessingModelEnum fromValue(String value) {
for (RecurringProcessingModelEnum b : RecurringProcessingModelEnum.values()) {
if (b.value.equals(value)) {
return b;
}
}
throw new IllegalArgumentException("Unexpected value '" + value + "'");
}
}
public static final String JSON_PROPERTY_RECURRING_PROCESSING_MODEL = "recurringProcessingModel";
private RecurringProcessingModelEnum recurringProcessingModel;
public static final String JSON_PROPERTY_REDIRECT_FROM_ISSUER_METHOD = "redirectFromIssuerMethod";
private String redirectFromIssuerMethod;
public static final String JSON_PROPERTY_REDIRECT_TO_ISSUER_METHOD = "redirectToIssuerMethod";
private String redirectToIssuerMethod;
public static final String JSON_PROPERTY_REFERENCE = "reference";
private String reference;
public static final String JSON_PROPERTY_RETURN_URL = "returnUrl";
private String returnUrl;
public static final String JSON_PROPERTY_SESSION_VALIDITY = "sessionValidity";
private String sessionValidity;
public static final String JSON_PROPERTY_SHOPPER_EMAIL = "shopperEmail";
private String shopperEmail;
public static final String JSON_PROPERTY_SHOPPER_I_P = "shopperIP";
private String shopperIP;
/**
* Specifies the sales channel, through which the shopper gives their card details, and whether the shopper is a returning customer. For the web service API, Adyen assumes Ecommerce shopper interaction by default. This field has the following possible values: * `Ecommerce` - Online transactions where the cardholder is present (online). For better authorisation rates, we recommend sending the card security code (CSC) along with the request. * `ContAuth` - Card on file and/or subscription transactions, where the cardholder is known to the merchant (returning customer). If the shopper is present (online), you can supply also the CSC to improve authorisation (one-click payment). * `Moto` - Mail-order and telephone-order transactions where the shopper is in contact with the merchant via email or telephone. * `POS` - Point-of-sale transactions where the shopper is physically present to make a payment using a secure payment terminal.
*/
public enum ShopperInteractionEnum {
ECOMMERCE(String.valueOf("Ecommerce")),
CONTAUTH(String.valueOf("ContAuth")),
MOTO(String.valueOf("Moto")),
POS(String.valueOf("POS"));
private String value;
ShopperInteractionEnum(String value) {
this.value = value;
}
@JsonValue
public String getValue() {
return value;
}
@Override
public String toString() {
return String.valueOf(value);
}
@JsonCreator
public static ShopperInteractionEnum fromValue(String value) {
for (ShopperInteractionEnum b : ShopperInteractionEnum.values()) {
if (b.value.equals(value)) {
return b;
}
}
throw new IllegalArgumentException("Unexpected value '" + value + "'");
}
}
public static final String JSON_PROPERTY_SHOPPER_INTERACTION = "shopperInteraction";
private ShopperInteractionEnum shopperInteraction;
public static final String JSON_PROPERTY_SHOPPER_LOCALE = "shopperLocale";
private String shopperLocale;
public static final String JSON_PROPERTY_SHOPPER_NAME = "shopperName";
private Name shopperName;
public static final String JSON_PROPERTY_SHOPPER_REFERENCE = "shopperReference";
private String shopperReference;
public static final String JSON_PROPERTY_SOCIAL_SECURITY_NUMBER = "socialSecurityNumber";
private String socialSecurityNumber;
public static final String JSON_PROPERTY_TELEPHONE_NUMBER = "telephoneNumber";
private String telephoneNumber;
public static final String JSON_PROPERTY_THREE_D_S2_REQUEST_DATA = "threeDS2RequestData";
private ThreeDS2RequestFields threeDS2RequestData;
public static final String JSON_PROPERTY_THREE_D_S_AUTHENTICATION_ONLY = "threeDSAuthenticationOnly";
@Deprecated // deprecated since Adyen Checkout API v69: Use `authenticationData.authenticationOnly` instead.
private Boolean threeDSAuthenticationOnly = false;
public DonationPaymentRequest() {
}
/**
* accountInfo
*
* @param accountInfo
* @return the current {@code DonationPaymentRequest} instance, allowing for method chaining
*/
public DonationPaymentRequest accountInfo(AccountInfo accountInfo) {
this.accountInfo = accountInfo;
return this;
}
/**
* Get accountInfo
* @return accountInfo
*/
@JsonProperty(JSON_PROPERTY_ACCOUNT_INFO)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public AccountInfo getAccountInfo() {
return accountInfo;
}
/**
* accountInfo
*
* @param accountInfo
*/
@JsonProperty(JSON_PROPERTY_ACCOUNT_INFO)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setAccountInfo(AccountInfo accountInfo) {
this.accountInfo = accountInfo;
}
/**
* This field contains additional data, which may be required for a particular payment request. The `additionalData` object consists of entries, each of which includes the key and value.
*
* @param additionalData This field contains additional data, which may be required for a particular payment request. The `additionalData` object consists of entries, each of which includes the key and value.
* @return the current {@code DonationPaymentRequest} instance, allowing for method chaining
*/
public DonationPaymentRequest additionalData(Map additionalData) {
this.additionalData = additionalData;
return this;
}
public DonationPaymentRequest putAdditionalDataItem(String key, String additionalDataItem) {
if (this.additionalData == null) {
this.additionalData = new HashMap<>();
}
this.additionalData.put(key, additionalDataItem);
return this;
}
/**
* This field contains additional data, which may be required for a particular payment request. The `additionalData` object consists of entries, each of which includes the key and value.
* @return additionalData This field contains additional data, which may be required for a particular payment request. The `additionalData` object consists of entries, each of which includes the key and value.
*/
@JsonProperty(JSON_PROPERTY_ADDITIONAL_DATA)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public Map getAdditionalData() {
return additionalData;
}
/**
* This field contains additional data, which may be required for a particular payment request. The `additionalData` object consists of entries, each of which includes the key and value.
*
* @param additionalData This field contains additional data, which may be required for a particular payment request. The `additionalData` object consists of entries, each of which includes the key and value.
*/
@JsonProperty(JSON_PROPERTY_ADDITIONAL_DATA)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setAdditionalData(Map additionalData) {
this.additionalData = additionalData;
}
/**
* amount
*
* @param amount
* @return the current {@code DonationPaymentRequest} instance, allowing for method chaining
*/
public DonationPaymentRequest amount(Amount amount) {
this.amount = amount;
return this;
}
/**
* Get amount
* @return amount
*/
@JsonProperty(JSON_PROPERTY_AMOUNT)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public Amount getAmount() {
return amount;
}
/**
* amount
*
* @param amount
*/
@JsonProperty(JSON_PROPERTY_AMOUNT)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setAmount(Amount amount) {
this.amount = amount;
}
/**
* applicationInfo
*
* @param applicationInfo
* @return the current {@code DonationPaymentRequest} instance, allowing for method chaining
*/
public DonationPaymentRequest applicationInfo(ApplicationInfo applicationInfo) {
this.applicationInfo = applicationInfo;
return this;
}
/**
* Get applicationInfo
* @return applicationInfo
*/
@JsonProperty(JSON_PROPERTY_APPLICATION_INFO)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public ApplicationInfo getApplicationInfo() {
return applicationInfo;
}
/**
* applicationInfo
*
* @param applicationInfo
*/
@JsonProperty(JSON_PROPERTY_APPLICATION_INFO)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setApplicationInfo(ApplicationInfo applicationInfo) {
this.applicationInfo = applicationInfo;
}
/**
* authenticationData
*
* @param authenticationData
* @return the current {@code DonationPaymentRequest} instance, allowing for method chaining
*/
public DonationPaymentRequest authenticationData(AuthenticationData authenticationData) {
this.authenticationData = authenticationData;
return this;
}
/**
* Get authenticationData
* @return authenticationData
*/
@JsonProperty(JSON_PROPERTY_AUTHENTICATION_DATA)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public AuthenticationData getAuthenticationData() {
return authenticationData;
}
/**
* authenticationData
*
* @param authenticationData
*/
@JsonProperty(JSON_PROPERTY_AUTHENTICATION_DATA)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setAuthenticationData(AuthenticationData authenticationData) {
this.authenticationData = authenticationData;
}
/**
* billingAddress
*
* @param billingAddress
* @return the current {@code DonationPaymentRequest} instance, allowing for method chaining
*/
public DonationPaymentRequest billingAddress(BillingAddress billingAddress) {
this.billingAddress = billingAddress;
return this;
}
/**
* Get billingAddress
* @return billingAddress
*/
@JsonProperty(JSON_PROPERTY_BILLING_ADDRESS)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public BillingAddress getBillingAddress() {
return billingAddress;
}
/**
* billingAddress
*
* @param billingAddress
*/
@JsonProperty(JSON_PROPERTY_BILLING_ADDRESS)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setBillingAddress(BillingAddress billingAddress) {
this.billingAddress = billingAddress;
}
/**
* browserInfo
*
* @param browserInfo
* @return the current {@code DonationPaymentRequest} instance, allowing for method chaining
*/
public DonationPaymentRequest browserInfo(BrowserInfo browserInfo) {
this.browserInfo = browserInfo;
return this;
}
/**
* Get browserInfo
* @return browserInfo
*/
@JsonProperty(JSON_PROPERTY_BROWSER_INFO)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public BrowserInfo getBrowserInfo() {
return browserInfo;
}
/**
* browserInfo
*
* @param browserInfo
*/
@JsonProperty(JSON_PROPERTY_BROWSER_INFO)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setBrowserInfo(BrowserInfo browserInfo) {
this.browserInfo = browserInfo;
}
/**
* The platform where a payment transaction takes place. This field is optional for filtering out payment methods that are only available on specific platforms. If this value is not set, then we will try to infer it from the `sdkVersion` or `token`. Possible values: * iOS * Android * Web
*
* @param channel The platform where a payment transaction takes place. This field is optional for filtering out payment methods that are only available on specific platforms. If this value is not set, then we will try to infer it from the `sdkVersion` or `token`. Possible values: * iOS * Android * Web
* @return the current {@code DonationPaymentRequest} instance, allowing for method chaining
*/
public DonationPaymentRequest channel(ChannelEnum channel) {
this.channel = channel;
return this;
}
/**
* The platform where a payment transaction takes place. This field is optional for filtering out payment methods that are only available on specific platforms. If this value is not set, then we will try to infer it from the `sdkVersion` or `token`. Possible values: * iOS * Android * Web
* @return channel The platform where a payment transaction takes place. This field is optional for filtering out payment methods that are only available on specific platforms. If this value is not set, then we will try to infer it from the `sdkVersion` or `token`. Possible values: * iOS * Android * Web
*/
@JsonProperty(JSON_PROPERTY_CHANNEL)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public ChannelEnum getChannel() {
return channel;
}
/**
* The platform where a payment transaction takes place. This field is optional for filtering out payment methods that are only available on specific platforms. If this value is not set, then we will try to infer it from the `sdkVersion` or `token`. Possible values: * iOS * Android * Web
*
* @param channel The platform where a payment transaction takes place. This field is optional for filtering out payment methods that are only available on specific platforms. If this value is not set, then we will try to infer it from the `sdkVersion` or `token`. Possible values: * iOS * Android * Web
*/
@JsonProperty(JSON_PROPERTY_CHANNEL)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setChannel(ChannelEnum channel) {
this.channel = channel;
}
/**
* Checkout attempt ID that corresponds to the Id generated by the client SDK for tracking user payment journey.
*
* @param checkoutAttemptId Checkout attempt ID that corresponds to the Id generated by the client SDK for tracking user payment journey.
* @return the current {@code DonationPaymentRequest} instance, allowing for method chaining
*/
public DonationPaymentRequest checkoutAttemptId(String checkoutAttemptId) {
this.checkoutAttemptId = checkoutAttemptId;
return this;
}
/**
* Checkout attempt ID that corresponds to the Id generated by the client SDK for tracking user payment journey.
* @return checkoutAttemptId Checkout attempt ID that corresponds to the Id generated by the client SDK for tracking user payment journey.
*/
@JsonProperty(JSON_PROPERTY_CHECKOUT_ATTEMPT_ID)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public String getCheckoutAttemptId() {
return checkoutAttemptId;
}
/**
* Checkout attempt ID that corresponds to the Id generated by the client SDK for tracking user payment journey.
*
* @param checkoutAttemptId Checkout attempt ID that corresponds to the Id generated by the client SDK for tracking user payment journey.
*/
@JsonProperty(JSON_PROPERTY_CHECKOUT_ATTEMPT_ID)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setCheckoutAttemptId(String checkoutAttemptId) {
this.checkoutAttemptId = checkoutAttemptId;
}
/**
* Conversion ID that corresponds to the Id generated by the client SDK for tracking user payment journey.
*
* @param conversionId Conversion ID that corresponds to the Id generated by the client SDK for tracking user payment journey.
* @return the current {@code DonationPaymentRequest} instance, allowing for method chaining
*
* @deprecated since Adyen Checkout API v68
* Use `checkoutAttemptId` instead
*/
@Deprecated // deprecated since Adyen Checkout API v68: Use `checkoutAttemptId` instead
public DonationPaymentRequest conversionId(String conversionId) {
this.conversionId = conversionId;
return this;
}
/**
* Conversion ID that corresponds to the Id generated by the client SDK for tracking user payment journey.
* @return conversionId Conversion ID that corresponds to the Id generated by the client SDK for tracking user payment journey.
* @deprecated // deprecated since Adyen Checkout API v68: Use `checkoutAttemptId` instead
*/
@Deprecated // deprecated since Adyen Checkout API v68: Use `checkoutAttemptId` instead
@JsonProperty(JSON_PROPERTY_CONVERSION_ID)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public String getConversionId() {
return conversionId;
}
/**
* Conversion ID that corresponds to the Id generated by the client SDK for tracking user payment journey.
*
* @param conversionId Conversion ID that corresponds to the Id generated by the client SDK for tracking user payment journey.
*
* @deprecated since Adyen Checkout API v68
* Use `checkoutAttemptId` instead
*/
@Deprecated // deprecated since Adyen Checkout API v68: Use `checkoutAttemptId` instead
@JsonProperty(JSON_PROPERTY_CONVERSION_ID)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setConversionId(String conversionId) {
this.conversionId = conversionId;
}
/**
* The shopper country. Format: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) Example: NL or DE
*
* @param countryCode The shopper country. Format: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) Example: NL or DE
* @return the current {@code DonationPaymentRequest} instance, allowing for method chaining
*/
public DonationPaymentRequest countryCode(String countryCode) {
this.countryCode = countryCode;
return this;
}
/**
* The shopper country. Format: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) Example: NL or DE
* @return countryCode The shopper country. Format: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) Example: NL or DE
*/
@JsonProperty(JSON_PROPERTY_COUNTRY_CODE)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public String getCountryCode() {
return countryCode;
}
/**
* The shopper country. Format: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) Example: NL or DE
*
* @param countryCode The shopper country. Format: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) Example: NL or DE
*/
@JsonProperty(JSON_PROPERTY_COUNTRY_CODE)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setCountryCode(String countryCode) {
this.countryCode = countryCode;
}
/**
* The shopper's date of birth. Format [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD
*
* @param dateOfBirth The shopper's date of birth. Format [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD
* @return the current {@code DonationPaymentRequest} instance, allowing for method chaining
*/
public DonationPaymentRequest dateOfBirth(OffsetDateTime dateOfBirth) {
this.dateOfBirth = dateOfBirth;
return this;
}
/**
* The shopper's date of birth. Format [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD
* @return dateOfBirth The shopper's date of birth. Format [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD
*/
@JsonProperty(JSON_PROPERTY_DATE_OF_BIRTH)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public OffsetDateTime getDateOfBirth() {
return dateOfBirth;
}
/**
* The shopper's date of birth. Format [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD
*
* @param dateOfBirth The shopper's date of birth. Format [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD
*/
@JsonProperty(JSON_PROPERTY_DATE_OF_BIRTH)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setDateOfBirth(OffsetDateTime dateOfBirth) {
this.dateOfBirth = dateOfBirth;
}
/**
* The date and time the purchased goods should be delivered. Format [ISO 8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DDThh:mm:ss.sssTZD Example: 2017-07-17T13:42:40.428+01:00
*
* @param deliverAt The date and time the purchased goods should be delivered. Format [ISO 8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DDThh:mm:ss.sssTZD Example: 2017-07-17T13:42:40.428+01:00
* @return the current {@code DonationPaymentRequest} instance, allowing for method chaining
*/
public DonationPaymentRequest deliverAt(OffsetDateTime deliverAt) {
this.deliverAt = deliverAt;
return this;
}
/**
* The date and time the purchased goods should be delivered. Format [ISO 8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DDThh:mm:ss.sssTZD Example: 2017-07-17T13:42:40.428+01:00
* @return deliverAt The date and time the purchased goods should be delivered. Format [ISO 8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DDThh:mm:ss.sssTZD Example: 2017-07-17T13:42:40.428+01:00
*/
@JsonProperty(JSON_PROPERTY_DELIVER_AT)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public OffsetDateTime getDeliverAt() {
return deliverAt;
}
/**
* The date and time the purchased goods should be delivered. Format [ISO 8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DDThh:mm:ss.sssTZD Example: 2017-07-17T13:42:40.428+01:00
*
* @param deliverAt The date and time the purchased goods should be delivered. Format [ISO 8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DDThh:mm:ss.sssTZD Example: 2017-07-17T13:42:40.428+01:00
*/
@JsonProperty(JSON_PROPERTY_DELIVER_AT)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setDeliverAt(OffsetDateTime deliverAt) {
this.deliverAt = deliverAt;
}
/**
* deliveryAddress
*
* @param deliveryAddress
* @return the current {@code DonationPaymentRequest} instance, allowing for method chaining
*/
public DonationPaymentRequest deliveryAddress(DeliveryAddress deliveryAddress) {
this.deliveryAddress = deliveryAddress;
return this;
}
/**
* Get deliveryAddress
* @return deliveryAddress
*/
@JsonProperty(JSON_PROPERTY_DELIVERY_ADDRESS)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public DeliveryAddress getDeliveryAddress() {
return deliveryAddress;
}
/**
* deliveryAddress
*
* @param deliveryAddress
*/
@JsonProperty(JSON_PROPERTY_DELIVERY_ADDRESS)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setDeliveryAddress(DeliveryAddress deliveryAddress) {
this.deliveryAddress = deliveryAddress;
}
/**
* A string containing the shopper's device fingerprint. For more information, refer to [Device fingerprinting](https://docs.adyen.com/risk-management/device-fingerprinting).
*
* @param deviceFingerprint A string containing the shopper's device fingerprint. For more information, refer to [Device fingerprinting](https://docs.adyen.com/risk-management/device-fingerprinting).
* @return the current {@code DonationPaymentRequest} instance, allowing for method chaining
*/
public DonationPaymentRequest deviceFingerprint(String deviceFingerprint) {
this.deviceFingerprint = deviceFingerprint;
return this;
}
/**
* A string containing the shopper's device fingerprint. For more information, refer to [Device fingerprinting](https://docs.adyen.com/risk-management/device-fingerprinting).
* @return deviceFingerprint A string containing the shopper's device fingerprint. For more information, refer to [Device fingerprinting](https://docs.adyen.com/risk-management/device-fingerprinting).
*/
@JsonProperty(JSON_PROPERTY_DEVICE_FINGERPRINT)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public String getDeviceFingerprint() {
return deviceFingerprint;
}
/**
* A string containing the shopper's device fingerprint. For more information, refer to [Device fingerprinting](https://docs.adyen.com/risk-management/device-fingerprinting).
*
* @param deviceFingerprint A string containing the shopper's device fingerprint. For more information, refer to [Device fingerprinting](https://docs.adyen.com/risk-management/device-fingerprinting).
*/
@JsonProperty(JSON_PROPERTY_DEVICE_FINGERPRINT)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setDeviceFingerprint(String deviceFingerprint) {
this.deviceFingerprint = deviceFingerprint;
}
/**
* Donation account to which the transaction is credited.
*
* @param donationAccount Donation account to which the transaction is credited.
* @return the current {@code DonationPaymentRequest} instance, allowing for method chaining
*/
public DonationPaymentRequest donationAccount(String donationAccount) {
this.donationAccount = donationAccount;
return this;
}
/**
* Donation account to which the transaction is credited.
* @return donationAccount Donation account to which the transaction is credited.
*/
@JsonProperty(JSON_PROPERTY_DONATION_ACCOUNT)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public String getDonationAccount() {
return donationAccount;
}
/**
* Donation account to which the transaction is credited.
*
* @param donationAccount Donation account to which the transaction is credited.
*/
@JsonProperty(JSON_PROPERTY_DONATION_ACCOUNT)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setDonationAccount(String donationAccount) {
this.donationAccount = donationAccount;
}
/**
* The donation campaign ID received in the `/donationCampaigns` call.
*
* @param donationCampaignId The donation campaign ID received in the `/donationCampaigns` call.
* @return the current {@code DonationPaymentRequest} instance, allowing for method chaining
*/
public DonationPaymentRequest donationCampaignId(String donationCampaignId) {
this.donationCampaignId = donationCampaignId;
return this;
}
/**
* The donation campaign ID received in the `/donationCampaigns` call.
* @return donationCampaignId The donation campaign ID received in the `/donationCampaigns` call.
*/
@JsonProperty(JSON_PROPERTY_DONATION_CAMPAIGN_ID)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public String getDonationCampaignId() {
return donationCampaignId;
}
/**
* The donation campaign ID received in the `/donationCampaigns` call.
*
* @param donationCampaignId The donation campaign ID received in the `/donationCampaigns` call.
*/
@JsonProperty(JSON_PROPERTY_DONATION_CAMPAIGN_ID)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setDonationCampaignId(String donationCampaignId) {
this.donationCampaignId = donationCampaignId;
}
/**
* PSP reference of the transaction from which the donation token is generated. Required when `donationToken` is provided.
*
* @param donationOriginalPspReference PSP reference of the transaction from which the donation token is generated. Required when `donationToken` is provided.
* @return the current {@code DonationPaymentRequest} instance, allowing for method chaining
*/
public DonationPaymentRequest donationOriginalPspReference(String donationOriginalPspReference) {
this.donationOriginalPspReference = donationOriginalPspReference;
return this;
}
/**
* PSP reference of the transaction from which the donation token is generated. Required when `donationToken` is provided.
* @return donationOriginalPspReference PSP reference of the transaction from which the donation token is generated. Required when `donationToken` is provided.
*/
@JsonProperty(JSON_PROPERTY_DONATION_ORIGINAL_PSP_REFERENCE)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public String getDonationOriginalPspReference() {
return donationOriginalPspReference;
}
/**
* PSP reference of the transaction from which the donation token is generated. Required when `donationToken` is provided.
*
* @param donationOriginalPspReference PSP reference of the transaction from which the donation token is generated. Required when `donationToken` is provided.
*/
@JsonProperty(JSON_PROPERTY_DONATION_ORIGINAL_PSP_REFERENCE)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setDonationOriginalPspReference(String donationOriginalPspReference) {
this.donationOriginalPspReference = donationOriginalPspReference;
}
/**
* Donation token received in the `/payments` call.
*
* @param donationToken Donation token received in the `/payments` call.
* @return the current {@code DonationPaymentRequest} instance, allowing for method chaining
*/
public DonationPaymentRequest donationToken(String donationToken) {
this.donationToken = donationToken;
return this;
}
/**
* Donation token received in the `/payments` call.
* @return donationToken Donation token received in the `/payments` call.
*/
@JsonProperty(JSON_PROPERTY_DONATION_TOKEN)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public String getDonationToken() {
return donationToken;
}
/**
* Donation token received in the `/payments` call.
*
* @param donationToken Donation token received in the `/payments` call.
*/
@JsonProperty(JSON_PROPERTY_DONATION_TOKEN)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setDonationToken(String donationToken) {
this.donationToken = donationToken;
}
/**
* Price and product information about the purchased items, to be included on the invoice sent to the shopper. > This field is required for 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Riverty, and Zip.
*
* @param lineItems Price and product information about the purchased items, to be included on the invoice sent to the shopper. > This field is required for 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Riverty, and Zip.
* @return the current {@code DonationPaymentRequest} instance, allowing for method chaining
*/
public DonationPaymentRequest lineItems(List lineItems) {
this.lineItems = lineItems;
return this;
}
public DonationPaymentRequest addLineItemsItem(LineItem lineItemsItem) {
if (this.lineItems == null) {
this.lineItems = new ArrayList<>();
}
this.lineItems.add(lineItemsItem);
return this;
}
/**
* Price and product information about the purchased items, to be included on the invoice sent to the shopper. > This field is required for 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Riverty, and Zip.
* @return lineItems Price and product information about the purchased items, to be included on the invoice sent to the shopper. > This field is required for 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Riverty, and Zip.
*/
@JsonProperty(JSON_PROPERTY_LINE_ITEMS)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public List getLineItems() {
return lineItems;
}
/**
* Price and product information about the purchased items, to be included on the invoice sent to the shopper. > This field is required for 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Riverty, and Zip.
*
* @param lineItems Price and product information about the purchased items, to be included on the invoice sent to the shopper. > This field is required for 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Riverty, and Zip.
*/
@JsonProperty(JSON_PROPERTY_LINE_ITEMS)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setLineItems(List lineItems) {
this.lineItems = lineItems;
}
/**
* The merchant account identifier, with which you want to process the transaction.
*
* @param merchantAccount The merchant account identifier, with which you want to process the transaction.
* @return the current {@code DonationPaymentRequest} instance, allowing for method chaining
*/
public DonationPaymentRequest merchantAccount(String merchantAccount) {
this.merchantAccount = merchantAccount;
return this;
}
/**
* The merchant account identifier, with which you want to process the transaction.
* @return merchantAccount The merchant account identifier, with which you want to process the transaction.
*/
@JsonProperty(JSON_PROPERTY_MERCHANT_ACCOUNT)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public String getMerchantAccount() {
return merchantAccount;
}
/**
* The merchant account identifier, with which you want to process the transaction.
*
* @param merchantAccount The merchant account identifier, with which you want to process the transaction.
*/
@JsonProperty(JSON_PROPERTY_MERCHANT_ACCOUNT)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setMerchantAccount(String merchantAccount) {
this.merchantAccount = merchantAccount;
}
/**
* merchantRiskIndicator
*
* @param merchantRiskIndicator
* @return the current {@code DonationPaymentRequest} instance, allowing for method chaining
*/
public DonationPaymentRequest merchantRiskIndicator(MerchantRiskIndicator merchantRiskIndicator) {
this.merchantRiskIndicator = merchantRiskIndicator;
return this;
}
/**
* Get merchantRiskIndicator
* @return merchantRiskIndicator
*/
@JsonProperty(JSON_PROPERTY_MERCHANT_RISK_INDICATOR)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public MerchantRiskIndicator getMerchantRiskIndicator() {
return merchantRiskIndicator;
}
/**
* merchantRiskIndicator
*
* @param merchantRiskIndicator
*/
@JsonProperty(JSON_PROPERTY_MERCHANT_RISK_INDICATOR)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setMerchantRiskIndicator(MerchantRiskIndicator merchantRiskIndicator) {
this.merchantRiskIndicator = merchantRiskIndicator;
}
/**
* Metadata consists of entries, each of which includes a key and a value. Limits: * Maximum 20 key-value pairs per request. When exceeding, the \"177\" error occurs: \"Metadata size exceeds limit\". * Maximum 20 characters per key. * Maximum 80 characters per value.
*
* @param metadata Metadata consists of entries, each of which includes a key and a value. Limits: * Maximum 20 key-value pairs per request. When exceeding, the \"177\" error occurs: \"Metadata size exceeds limit\". * Maximum 20 characters per key. * Maximum 80 characters per value.
* @return the current {@code DonationPaymentRequest} instance, allowing for method chaining
*/
public DonationPaymentRequest metadata(Map metadata) {
this.metadata = metadata;
return this;
}
public DonationPaymentRequest putMetadataItem(String key, String metadataItem) {
if (this.metadata == null) {
this.metadata = new HashMap<>();
}
this.metadata.put(key, metadataItem);
return this;
}
/**
* Metadata consists of entries, each of which includes a key and a value. Limits: * Maximum 20 key-value pairs per request. When exceeding, the \"177\" error occurs: \"Metadata size exceeds limit\". * Maximum 20 characters per key. * Maximum 80 characters per value.
* @return metadata Metadata consists of entries, each of which includes a key and a value. Limits: * Maximum 20 key-value pairs per request. When exceeding, the \"177\" error occurs: \"Metadata size exceeds limit\". * Maximum 20 characters per key. * Maximum 80 characters per value.
*/
@JsonProperty(JSON_PROPERTY_METADATA)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public Map getMetadata() {
return metadata;
}
/**
* Metadata consists of entries, each of which includes a key and a value. Limits: * Maximum 20 key-value pairs per request. When exceeding, the \"177\" error occurs: \"Metadata size exceeds limit\". * Maximum 20 characters per key. * Maximum 80 characters per value.
*
* @param metadata Metadata consists of entries, each of which includes a key and a value. Limits: * Maximum 20 key-value pairs per request. When exceeding, the \"177\" error occurs: \"Metadata size exceeds limit\". * Maximum 20 characters per key. * Maximum 80 characters per value.
*/
@JsonProperty(JSON_PROPERTY_METADATA)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setMetadata(Map metadata) {
this.metadata = metadata;
}
/**
* mpiData
*
* @param mpiData
* @return the current {@code DonationPaymentRequest} instance, allowing for method chaining
*/
public DonationPaymentRequest mpiData(ThreeDSecureData mpiData) {
this.mpiData = mpiData;
return this;
}
/**
* Get mpiData
* @return mpiData
*/
@JsonProperty(JSON_PROPERTY_MPI_DATA)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public ThreeDSecureData getMpiData() {
return mpiData;
}
/**
* mpiData
*
* @param mpiData
*/
@JsonProperty(JSON_PROPERTY_MPI_DATA)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setMpiData(ThreeDSecureData mpiData) {
this.mpiData = mpiData;
}
/**
* Required for the 3D Secure 2 `channel` **Web** integration. Set this parameter to the origin URL of the page that you are loading the 3D Secure Component from.
*
* @param origin Required for the 3D Secure 2 `channel` **Web** integration. Set this parameter to the origin URL of the page that you are loading the 3D Secure Component from.
* @return the current {@code DonationPaymentRequest} instance, allowing for method chaining
*/
public DonationPaymentRequest origin(String origin) {
this.origin = origin;
return this;
}
/**
* Required for the 3D Secure 2 `channel` **Web** integration. Set this parameter to the origin URL of the page that you are loading the 3D Secure Component from.
* @return origin Required for the 3D Secure 2 `channel` **Web** integration. Set this parameter to the origin URL of the page that you are loading the 3D Secure Component from.
*/
@JsonProperty(JSON_PROPERTY_ORIGIN)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public String getOrigin() {
return origin;
}
/**
* Required for the 3D Secure 2 `channel` **Web** integration. Set this parameter to the origin URL of the page that you are loading the 3D Secure Component from.
*
* @param origin Required for the 3D Secure 2 `channel` **Web** integration. Set this parameter to the origin URL of the page that you are loading the 3D Secure Component from.
*/
@JsonProperty(JSON_PROPERTY_ORIGIN)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setOrigin(String origin) {
this.origin = origin;
}
/**
* paymentMethod
*
* @param paymentMethod
* @return the current {@code DonationPaymentRequest} instance, allowing for method chaining
*/
public DonationPaymentRequest paymentMethod(DonationPaymentMethod paymentMethod) {
this.paymentMethod = paymentMethod;
return this;
}
/**
* Get paymentMethod
* @return paymentMethod
*/
@JsonProperty(JSON_PROPERTY_PAYMENT_METHOD)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public DonationPaymentMethod getPaymentMethod() {
return paymentMethod;
}
/**
* paymentMethod
*
* @param paymentMethod
*/
@JsonProperty(JSON_PROPERTY_PAYMENT_METHOD)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setPaymentMethod(DonationPaymentMethod paymentMethod) {
this.paymentMethod = paymentMethod;
}
/**
* Defines a recurring payment type. Required when creating a token to store payment details or using stored payment details. Allowed values: * `Subscription` – A transaction for a fixed or variable amount, which follows a fixed schedule. * `CardOnFile` – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction. * `UnscheduledCardOnFile` – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or have variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount.
*
* @param recurringProcessingModel Defines a recurring payment type. Required when creating a token to store payment details or using stored payment details. Allowed values: * `Subscription` – A transaction for a fixed or variable amount, which follows a fixed schedule. * `CardOnFile` – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction. * `UnscheduledCardOnFile` – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or have variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount.
* @return the current {@code DonationPaymentRequest} instance, allowing for method chaining
*/
public DonationPaymentRequest recurringProcessingModel(RecurringProcessingModelEnum recurringProcessingModel) {
this.recurringProcessingModel = recurringProcessingModel;
return this;
}
/**
* Defines a recurring payment type. Required when creating a token to store payment details or using stored payment details. Allowed values: * `Subscription` – A transaction for a fixed or variable amount, which follows a fixed schedule. * `CardOnFile` – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction. * `UnscheduledCardOnFile` – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or have variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount.
* @return recurringProcessingModel Defines a recurring payment type. Required when creating a token to store payment details or using stored payment details. Allowed values: * `Subscription` – A transaction for a fixed or variable amount, which follows a fixed schedule. * `CardOnFile` – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction. * `UnscheduledCardOnFile` – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or have variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount.
*/
@JsonProperty(JSON_PROPERTY_RECURRING_PROCESSING_MODEL)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public RecurringProcessingModelEnum getRecurringProcessingModel() {
return recurringProcessingModel;
}
/**
* Defines a recurring payment type. Required when creating a token to store payment details or using stored payment details. Allowed values: * `Subscription` – A transaction for a fixed or variable amount, which follows a fixed schedule. * `CardOnFile` – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction. * `UnscheduledCardOnFile` – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or have variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount.
*
* @param recurringProcessingModel Defines a recurring payment type. Required when creating a token to store payment details or using stored payment details. Allowed values: * `Subscription` – A transaction for a fixed or variable amount, which follows a fixed schedule. * `CardOnFile` – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction. * `UnscheduledCardOnFile` – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or have variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount.
*/
@JsonProperty(JSON_PROPERTY_RECURRING_PROCESSING_MODEL)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setRecurringProcessingModel(RecurringProcessingModelEnum recurringProcessingModel) {
this.recurringProcessingModel = recurringProcessingModel;
}
/**
* Specifies the redirect method (GET or POST) when redirecting back from the issuer.
*
* @param redirectFromIssuerMethod Specifies the redirect method (GET or POST) when redirecting back from the issuer.
* @return the current {@code DonationPaymentRequest} instance, allowing for method chaining
*/
public DonationPaymentRequest redirectFromIssuerMethod(String redirectFromIssuerMethod) {
this.redirectFromIssuerMethod = redirectFromIssuerMethod;
return this;
}
/**
* Specifies the redirect method (GET or POST) when redirecting back from the issuer.
* @return redirectFromIssuerMethod Specifies the redirect method (GET or POST) when redirecting back from the issuer.
*/
@JsonProperty(JSON_PROPERTY_REDIRECT_FROM_ISSUER_METHOD)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public String getRedirectFromIssuerMethod() {
return redirectFromIssuerMethod;
}
/**
* Specifies the redirect method (GET or POST) when redirecting back from the issuer.
*
* @param redirectFromIssuerMethod Specifies the redirect method (GET or POST) when redirecting back from the issuer.
*/
@JsonProperty(JSON_PROPERTY_REDIRECT_FROM_ISSUER_METHOD)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setRedirectFromIssuerMethod(String redirectFromIssuerMethod) {
this.redirectFromIssuerMethod = redirectFromIssuerMethod;
}
/**
* Specifies the redirect method (GET or POST) when redirecting to the issuer.
*
* @param redirectToIssuerMethod Specifies the redirect method (GET or POST) when redirecting to the issuer.
* @return the current {@code DonationPaymentRequest} instance, allowing for method chaining
*/
public DonationPaymentRequest redirectToIssuerMethod(String redirectToIssuerMethod) {
this.redirectToIssuerMethod = redirectToIssuerMethod;
return this;
}
/**
* Specifies the redirect method (GET or POST) when redirecting to the issuer.
* @return redirectToIssuerMethod Specifies the redirect method (GET or POST) when redirecting to the issuer.
*/
@JsonProperty(JSON_PROPERTY_REDIRECT_TO_ISSUER_METHOD)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public String getRedirectToIssuerMethod() {
return redirectToIssuerMethod;
}
/**
* Specifies the redirect method (GET or POST) when redirecting to the issuer.
*
* @param redirectToIssuerMethod Specifies the redirect method (GET or POST) when redirecting to the issuer.
*/
@JsonProperty(JSON_PROPERTY_REDIRECT_TO_ISSUER_METHOD)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setRedirectToIssuerMethod(String redirectToIssuerMethod) {
this.redirectToIssuerMethod = redirectToIssuerMethod;
}
/**
* The reference to uniquely identify a payment. This reference is used in all communication with you about the payment status. We recommend using a unique value per payment; however, it is not a requirement. If you need to provide multiple references for a transaction, separate them with hyphens (\"-\"). Maximum length: 80 characters.
*
* @param reference The reference to uniquely identify a payment. This reference is used in all communication with you about the payment status. We recommend using a unique value per payment; however, it is not a requirement. If you need to provide multiple references for a transaction, separate them with hyphens (\"-\"). Maximum length: 80 characters.
* @return the current {@code DonationPaymentRequest} instance, allowing for method chaining
*/
public DonationPaymentRequest reference(String reference) {
this.reference = reference;
return this;
}
/**
* The reference to uniquely identify a payment. This reference is used in all communication with you about the payment status. We recommend using a unique value per payment; however, it is not a requirement. If you need to provide multiple references for a transaction, separate them with hyphens (\"-\"). Maximum length: 80 characters.
* @return reference The reference to uniquely identify a payment. This reference is used in all communication with you about the payment status. We recommend using a unique value per payment; however, it is not a requirement. If you need to provide multiple references for a transaction, separate them with hyphens (\"-\"). Maximum length: 80 characters.
*/
@JsonProperty(JSON_PROPERTY_REFERENCE)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public String getReference() {
return reference;
}
/**
* The reference to uniquely identify a payment. This reference is used in all communication with you about the payment status. We recommend using a unique value per payment; however, it is not a requirement. If you need to provide multiple references for a transaction, separate them with hyphens (\"-\"). Maximum length: 80 characters.
*
* @param reference The reference to uniquely identify a payment. This reference is used in all communication with you about the payment status. We recommend using a unique value per payment; however, it is not a requirement. If you need to provide multiple references for a transaction, separate them with hyphens (\"-\"). Maximum length: 80 characters.
*/
@JsonProperty(JSON_PROPERTY_REFERENCE)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setReference(String reference) {
this.reference = reference;
}
/**
* The URL to return to in case of a redirection. The format depends on the channel. This URL can have a maximum of 1024 characters. * For web, include the protocol `http://` or `https://`. You can also include your own additional query parameters, for example, shopper ID or order reference number. Example: `https://your-company.com/checkout?shopperOrder=12xy` * For iOS, use the custom URL for your app. To know more about setting custom URL schemes, refer to the [Apple Developer documentation](https://developer.apple.com/documentation/uikit/inter-process_communication/allowing_apps_and_websites_to_link_to_your_content/defining_a_custom_url_scheme_for_your_app). Example: `my-app://` * For Android, use a custom URL handled by an Activity on your app. You can configure it with an [intent filter](https://developer.android.com/guide/components/intents-filters). Example: `my-app://your.package.name` If the URL to return to includes non-ASCII characters, like spaces or special letters, URL encode the value. > The URL must not include personally identifiable information (PII), for example name or email address.
*
* @param returnUrl The URL to return to in case of a redirection. The format depends on the channel. This URL can have a maximum of 1024 characters. * For web, include the protocol `http://` or `https://`. You can also include your own additional query parameters, for example, shopper ID or order reference number. Example: `https://your-company.com/checkout?shopperOrder=12xy` * For iOS, use the custom URL for your app. To know more about setting custom URL schemes, refer to the [Apple Developer documentation](https://developer.apple.com/documentation/uikit/inter-process_communication/allowing_apps_and_websites_to_link_to_your_content/defining_a_custom_url_scheme_for_your_app). Example: `my-app://` * For Android, use a custom URL handled by an Activity on your app. You can configure it with an [intent filter](https://developer.android.com/guide/components/intents-filters). Example: `my-app://your.package.name` If the URL to return to includes non-ASCII characters, like spaces or special letters, URL encode the value. > The URL must not include personally identifiable information (PII), for example name or email address.
* @return the current {@code DonationPaymentRequest} instance, allowing for method chaining
*/
public DonationPaymentRequest returnUrl(String returnUrl) {
this.returnUrl = returnUrl;
return this;
}
/**
* The URL to return to in case of a redirection. The format depends on the channel. This URL can have a maximum of 1024 characters. * For web, include the protocol `http://` or `https://`. You can also include your own additional query parameters, for example, shopper ID or order reference number. Example: `https://your-company.com/checkout?shopperOrder=12xy` * For iOS, use the custom URL for your app. To know more about setting custom URL schemes, refer to the [Apple Developer documentation](https://developer.apple.com/documentation/uikit/inter-process_communication/allowing_apps_and_websites_to_link_to_your_content/defining_a_custom_url_scheme_for_your_app). Example: `my-app://` * For Android, use a custom URL handled by an Activity on your app. You can configure it with an [intent filter](https://developer.android.com/guide/components/intents-filters). Example: `my-app://your.package.name` If the URL to return to includes non-ASCII characters, like spaces or special letters, URL encode the value. > The URL must not include personally identifiable information (PII), for example name or email address.
* @return returnUrl The URL to return to in case of a redirection. The format depends on the channel. This URL can have a maximum of 1024 characters. * For web, include the protocol `http://` or `https://`. You can also include your own additional query parameters, for example, shopper ID or order reference number. Example: `https://your-company.com/checkout?shopperOrder=12xy` * For iOS, use the custom URL for your app. To know more about setting custom URL schemes, refer to the [Apple Developer documentation](https://developer.apple.com/documentation/uikit/inter-process_communication/allowing_apps_and_websites_to_link_to_your_content/defining_a_custom_url_scheme_for_your_app). Example: `my-app://` * For Android, use a custom URL handled by an Activity on your app. You can configure it with an [intent filter](https://developer.android.com/guide/components/intents-filters). Example: `my-app://your.package.name` If the URL to return to includes non-ASCII characters, like spaces or special letters, URL encode the value. > The URL must not include personally identifiable information (PII), for example name or email address.
*/
@JsonProperty(JSON_PROPERTY_RETURN_URL)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public String getReturnUrl() {
return returnUrl;
}
/**
* The URL to return to in case of a redirection. The format depends on the channel. This URL can have a maximum of 1024 characters. * For web, include the protocol `http://` or `https://`. You can also include your own additional query parameters, for example, shopper ID or order reference number. Example: `https://your-company.com/checkout?shopperOrder=12xy` * For iOS, use the custom URL for your app. To know more about setting custom URL schemes, refer to the [Apple Developer documentation](https://developer.apple.com/documentation/uikit/inter-process_communication/allowing_apps_and_websites_to_link_to_your_content/defining_a_custom_url_scheme_for_your_app). Example: `my-app://` * For Android, use a custom URL handled by an Activity on your app. You can configure it with an [intent filter](https://developer.android.com/guide/components/intents-filters). Example: `my-app://your.package.name` If the URL to return to includes non-ASCII characters, like spaces or special letters, URL encode the value. > The URL must not include personally identifiable information (PII), for example name or email address.
*
* @param returnUrl The URL to return to in case of a redirection. The format depends on the channel. This URL can have a maximum of 1024 characters. * For web, include the protocol `http://` or `https://`. You can also include your own additional query parameters, for example, shopper ID or order reference number. Example: `https://your-company.com/checkout?shopperOrder=12xy` * For iOS, use the custom URL for your app. To know more about setting custom URL schemes, refer to the [Apple Developer documentation](https://developer.apple.com/documentation/uikit/inter-process_communication/allowing_apps_and_websites_to_link_to_your_content/defining_a_custom_url_scheme_for_your_app). Example: `my-app://` * For Android, use a custom URL handled by an Activity on your app. You can configure it with an [intent filter](https://developer.android.com/guide/components/intents-filters). Example: `my-app://your.package.name` If the URL to return to includes non-ASCII characters, like spaces or special letters, URL encode the value. > The URL must not include personally identifiable information (PII), for example name or email address.
*/
@JsonProperty(JSON_PROPERTY_RETURN_URL)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setReturnUrl(String returnUrl) {
this.returnUrl = returnUrl;
}
/**
* The date and time until when the session remains valid, in [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format. For example: 2020-07-18T15:42:40.428+01:00
*
* @param sessionValidity The date and time until when the session remains valid, in [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format. For example: 2020-07-18T15:42:40.428+01:00
* @return the current {@code DonationPaymentRequest} instance, allowing for method chaining
*/
public DonationPaymentRequest sessionValidity(String sessionValidity) {
this.sessionValidity = sessionValidity;
return this;
}
/**
* The date and time until when the session remains valid, in [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format. For example: 2020-07-18T15:42:40.428+01:00
* @return sessionValidity The date and time until when the session remains valid, in [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format. For example: 2020-07-18T15:42:40.428+01:00
*/
@JsonProperty(JSON_PROPERTY_SESSION_VALIDITY)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public String getSessionValidity() {
return sessionValidity;
}
/**
* The date and time until when the session remains valid, in [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format. For example: 2020-07-18T15:42:40.428+01:00
*
* @param sessionValidity The date and time until when the session remains valid, in [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format. For example: 2020-07-18T15:42:40.428+01:00
*/
@JsonProperty(JSON_PROPERTY_SESSION_VALIDITY)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setSessionValidity(String sessionValidity) {
this.sessionValidity = sessionValidity;
}
/**
* The shopper's email address. We recommend that you provide this data, as it is used in velocity fraud checks. > For 3D Secure 2 transactions, schemes require `shopperEmail` for all browser-based and mobile implementations.
*
* @param shopperEmail The shopper's email address. We recommend that you provide this data, as it is used in velocity fraud checks. > For 3D Secure 2 transactions, schemes require `shopperEmail` for all browser-based and mobile implementations.
* @return the current {@code DonationPaymentRequest} instance, allowing for method chaining
*/
public DonationPaymentRequest shopperEmail(String shopperEmail) {
this.shopperEmail = shopperEmail;
return this;
}
/**
* The shopper's email address. We recommend that you provide this data, as it is used in velocity fraud checks. > For 3D Secure 2 transactions, schemes require `shopperEmail` for all browser-based and mobile implementations.
* @return shopperEmail The shopper's email address. We recommend that you provide this data, as it is used in velocity fraud checks. > For 3D Secure 2 transactions, schemes require `shopperEmail` for all browser-based and mobile implementations.
*/
@JsonProperty(JSON_PROPERTY_SHOPPER_EMAIL)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public String getShopperEmail() {
return shopperEmail;
}
/**
* The shopper's email address. We recommend that you provide this data, as it is used in velocity fraud checks. > For 3D Secure 2 transactions, schemes require `shopperEmail` for all browser-based and mobile implementations.
*
* @param shopperEmail The shopper's email address. We recommend that you provide this data, as it is used in velocity fraud checks. > For 3D Secure 2 transactions, schemes require `shopperEmail` for all browser-based and mobile implementations.
*/
@JsonProperty(JSON_PROPERTY_SHOPPER_EMAIL)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setShopperEmail(String shopperEmail) {
this.shopperEmail = shopperEmail;
}
/**
* The shopper's IP address. In general, we recommend that you provide this data, as it is used in a number of risk checks (for instance, number of payment attempts or location-based checks). > For 3D Secure 2 transactions, schemes require `shopperIP` for all browser-based implementations. This field is also mandatory for some merchants depending on your business model. For more information, [contact Support](https://www.adyen.help/hc/en-us/requests/new).
*
* @param shopperIP The shopper's IP address. In general, we recommend that you provide this data, as it is used in a number of risk checks (for instance, number of payment attempts or location-based checks). > For 3D Secure 2 transactions, schemes require `shopperIP` for all browser-based implementations. This field is also mandatory for some merchants depending on your business model. For more information, [contact Support](https://www.adyen.help/hc/en-us/requests/new).
* @return the current {@code DonationPaymentRequest} instance, allowing for method chaining
*/
public DonationPaymentRequest shopperIP(String shopperIP) {
this.shopperIP = shopperIP;
return this;
}
/**
* The shopper's IP address. In general, we recommend that you provide this data, as it is used in a number of risk checks (for instance, number of payment attempts or location-based checks). > For 3D Secure 2 transactions, schemes require `shopperIP` for all browser-based implementations. This field is also mandatory for some merchants depending on your business model. For more information, [contact Support](https://www.adyen.help/hc/en-us/requests/new).
* @return shopperIP The shopper's IP address. In general, we recommend that you provide this data, as it is used in a number of risk checks (for instance, number of payment attempts or location-based checks). > For 3D Secure 2 transactions, schemes require `shopperIP` for all browser-based implementations. This field is also mandatory for some merchants depending on your business model. For more information, [contact Support](https://www.adyen.help/hc/en-us/requests/new).
*/
@JsonProperty(JSON_PROPERTY_SHOPPER_I_P)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public String getShopperIP() {
return shopperIP;
}
/**
* The shopper's IP address. In general, we recommend that you provide this data, as it is used in a number of risk checks (for instance, number of payment attempts or location-based checks). > For 3D Secure 2 transactions, schemes require `shopperIP` for all browser-based implementations. This field is also mandatory for some merchants depending on your business model. For more information, [contact Support](https://www.adyen.help/hc/en-us/requests/new).
*
* @param shopperIP The shopper's IP address. In general, we recommend that you provide this data, as it is used in a number of risk checks (for instance, number of payment attempts or location-based checks). > For 3D Secure 2 transactions, schemes require `shopperIP` for all browser-based implementations. This field is also mandatory for some merchants depending on your business model. For more information, [contact Support](https://www.adyen.help/hc/en-us/requests/new).
*/
@JsonProperty(JSON_PROPERTY_SHOPPER_I_P)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setShopperIP(String shopperIP) {
this.shopperIP = shopperIP;
}
/**
* Specifies the sales channel, through which the shopper gives their card details, and whether the shopper is a returning customer. For the web service API, Adyen assumes Ecommerce shopper interaction by default. This field has the following possible values: * `Ecommerce` - Online transactions where the cardholder is present (online). For better authorisation rates, we recommend sending the card security code (CSC) along with the request. * `ContAuth` - Card on file and/or subscription transactions, where the cardholder is known to the merchant (returning customer). If the shopper is present (online), you can supply also the CSC to improve authorisation (one-click payment). * `Moto` - Mail-order and telephone-order transactions where the shopper is in contact with the merchant via email or telephone. * `POS` - Point-of-sale transactions where the shopper is physically present to make a payment using a secure payment terminal.
*
* @param shopperInteraction Specifies the sales channel, through which the shopper gives their card details, and whether the shopper is a returning customer. For the web service API, Adyen assumes Ecommerce shopper interaction by default. This field has the following possible values: * `Ecommerce` - Online transactions where the cardholder is present (online). For better authorisation rates, we recommend sending the card security code (CSC) along with the request. * `ContAuth` - Card on file and/or subscription transactions, where the cardholder is known to the merchant (returning customer). If the shopper is present (online), you can supply also the CSC to improve authorisation (one-click payment). * `Moto` - Mail-order and telephone-order transactions where the shopper is in contact with the merchant via email or telephone. * `POS` - Point-of-sale transactions where the shopper is physically present to make a payment using a secure payment terminal.
* @return the current {@code DonationPaymentRequest} instance, allowing for method chaining
*/
public DonationPaymentRequest shopperInteraction(ShopperInteractionEnum shopperInteraction) {
this.shopperInteraction = shopperInteraction;
return this;
}
/**
* Specifies the sales channel, through which the shopper gives their card details, and whether the shopper is a returning customer. For the web service API, Adyen assumes Ecommerce shopper interaction by default. This field has the following possible values: * `Ecommerce` - Online transactions where the cardholder is present (online). For better authorisation rates, we recommend sending the card security code (CSC) along with the request. * `ContAuth` - Card on file and/or subscription transactions, where the cardholder is known to the merchant (returning customer). If the shopper is present (online), you can supply also the CSC to improve authorisation (one-click payment). * `Moto` - Mail-order and telephone-order transactions where the shopper is in contact with the merchant via email or telephone. * `POS` - Point-of-sale transactions where the shopper is physically present to make a payment using a secure payment terminal.
* @return shopperInteraction Specifies the sales channel, through which the shopper gives their card details, and whether the shopper is a returning customer. For the web service API, Adyen assumes Ecommerce shopper interaction by default. This field has the following possible values: * `Ecommerce` - Online transactions where the cardholder is present (online). For better authorisation rates, we recommend sending the card security code (CSC) along with the request. * `ContAuth` - Card on file and/or subscription transactions, where the cardholder is known to the merchant (returning customer). If the shopper is present (online), you can supply also the CSC to improve authorisation (one-click payment). * `Moto` - Mail-order and telephone-order transactions where the shopper is in contact with the merchant via email or telephone. * `POS` - Point-of-sale transactions where the shopper is physically present to make a payment using a secure payment terminal.
*/
@JsonProperty(JSON_PROPERTY_SHOPPER_INTERACTION)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public ShopperInteractionEnum getShopperInteraction() {
return shopperInteraction;
}
/**
* Specifies the sales channel, through which the shopper gives their card details, and whether the shopper is a returning customer. For the web service API, Adyen assumes Ecommerce shopper interaction by default. This field has the following possible values: * `Ecommerce` - Online transactions where the cardholder is present (online). For better authorisation rates, we recommend sending the card security code (CSC) along with the request. * `ContAuth` - Card on file and/or subscription transactions, where the cardholder is known to the merchant (returning customer). If the shopper is present (online), you can supply also the CSC to improve authorisation (one-click payment). * `Moto` - Mail-order and telephone-order transactions where the shopper is in contact with the merchant via email or telephone. * `POS` - Point-of-sale transactions where the shopper is physically present to make a payment using a secure payment terminal.
*
* @param shopperInteraction Specifies the sales channel, through which the shopper gives their card details, and whether the shopper is a returning customer. For the web service API, Adyen assumes Ecommerce shopper interaction by default. This field has the following possible values: * `Ecommerce` - Online transactions where the cardholder is present (online). For better authorisation rates, we recommend sending the card security code (CSC) along with the request. * `ContAuth` - Card on file and/or subscription transactions, where the cardholder is known to the merchant (returning customer). If the shopper is present (online), you can supply also the CSC to improve authorisation (one-click payment). * `Moto` - Mail-order and telephone-order transactions where the shopper is in contact with the merchant via email or telephone. * `POS` - Point-of-sale transactions where the shopper is physically present to make a payment using a secure payment terminal.
*/
@JsonProperty(JSON_PROPERTY_SHOPPER_INTERACTION)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setShopperInteraction(ShopperInteractionEnum shopperInteraction) {
this.shopperInteraction = shopperInteraction;
}
/**
* The combination of a language code and a country code to specify the language to be used in the payment.
*
* @param shopperLocale The combination of a language code and a country code to specify the language to be used in the payment.
* @return the current {@code DonationPaymentRequest} instance, allowing for method chaining
*/
public DonationPaymentRequest shopperLocale(String shopperLocale) {
this.shopperLocale = shopperLocale;
return this;
}
/**
* The combination of a language code and a country code to specify the language to be used in the payment.
* @return shopperLocale The combination of a language code and a country code to specify the language to be used in the payment.
*/
@JsonProperty(JSON_PROPERTY_SHOPPER_LOCALE)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public String getShopperLocale() {
return shopperLocale;
}
/**
* The combination of a language code and a country code to specify the language to be used in the payment.
*
* @param shopperLocale The combination of a language code and a country code to specify the language to be used in the payment.
*/
@JsonProperty(JSON_PROPERTY_SHOPPER_LOCALE)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setShopperLocale(String shopperLocale) {
this.shopperLocale = shopperLocale;
}
/**
* shopperName
*
* @param shopperName
* @return the current {@code DonationPaymentRequest} instance, allowing for method chaining
*/
public DonationPaymentRequest shopperName(Name shopperName) {
this.shopperName = shopperName;
return this;
}
/**
* Get shopperName
* @return shopperName
*/
@JsonProperty(JSON_PROPERTY_SHOPPER_NAME)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public Name getShopperName() {
return shopperName;
}
/**
* shopperName
*
* @param shopperName
*/
@JsonProperty(JSON_PROPERTY_SHOPPER_NAME)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setShopperName(Name shopperName) {
this.shopperName = shopperName;
}
/**
* Required for recurring payments. Your reference to uniquely identify this shopper, for example user ID or account ID. Minimum length: 3 characters. > Your reference must not include personally identifiable information (PII), for example name or email address.
*
* @param shopperReference Required for recurring payments. Your reference to uniquely identify this shopper, for example user ID or account ID. Minimum length: 3 characters. > Your reference must not include personally identifiable information (PII), for example name or email address.
* @return the current {@code DonationPaymentRequest} instance, allowing for method chaining
*/
public DonationPaymentRequest shopperReference(String shopperReference) {
this.shopperReference = shopperReference;
return this;
}
/**
* Required for recurring payments. Your reference to uniquely identify this shopper, for example user ID or account ID. Minimum length: 3 characters. > Your reference must not include personally identifiable information (PII), for example name or email address.
* @return shopperReference Required for recurring payments. Your reference to uniquely identify this shopper, for example user ID or account ID. Minimum length: 3 characters. > Your reference must not include personally identifiable information (PII), for example name or email address.
*/
@JsonProperty(JSON_PROPERTY_SHOPPER_REFERENCE)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public String getShopperReference() {
return shopperReference;
}
/**
* Required for recurring payments. Your reference to uniquely identify this shopper, for example user ID or account ID. Minimum length: 3 characters. > Your reference must not include personally identifiable information (PII), for example name or email address.
*
* @param shopperReference Required for recurring payments. Your reference to uniquely identify this shopper, for example user ID or account ID. Minimum length: 3 characters. > Your reference must not include personally identifiable information (PII), for example name or email address.
*/
@JsonProperty(JSON_PROPERTY_SHOPPER_REFERENCE)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setShopperReference(String shopperReference) {
this.shopperReference = shopperReference;
}
/**
* The shopper's social security number.
*
* @param socialSecurityNumber The shopper's social security number.
* @return the current {@code DonationPaymentRequest} instance, allowing for method chaining
*/
public DonationPaymentRequest socialSecurityNumber(String socialSecurityNumber) {
this.socialSecurityNumber = socialSecurityNumber;
return this;
}
/**
* The shopper's social security number.
* @return socialSecurityNumber The shopper's social security number.
*/
@JsonProperty(JSON_PROPERTY_SOCIAL_SECURITY_NUMBER)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public String getSocialSecurityNumber() {
return socialSecurityNumber;
}
/**
* The shopper's social security number.
*
* @param socialSecurityNumber The shopper's social security number.
*/
@JsonProperty(JSON_PROPERTY_SOCIAL_SECURITY_NUMBER)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setSocialSecurityNumber(String socialSecurityNumber) {
this.socialSecurityNumber = socialSecurityNumber;
}
/**
* The shopper's telephone number.
*
* @param telephoneNumber The shopper's telephone number.
* @return the current {@code DonationPaymentRequest} instance, allowing for method chaining
*/
public DonationPaymentRequest telephoneNumber(String telephoneNumber) {
this.telephoneNumber = telephoneNumber;
return this;
}
/**
* The shopper's telephone number.
* @return telephoneNumber The shopper's telephone number.
*/
@JsonProperty(JSON_PROPERTY_TELEPHONE_NUMBER)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public String getTelephoneNumber() {
return telephoneNumber;
}
/**
* The shopper's telephone number.
*
* @param telephoneNumber The shopper's telephone number.
*/
@JsonProperty(JSON_PROPERTY_TELEPHONE_NUMBER)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setTelephoneNumber(String telephoneNumber) {
this.telephoneNumber = telephoneNumber;
}
/**
* threeDS2RequestData
*
* @param threeDS2RequestData
* @return the current {@code DonationPaymentRequest} instance, allowing for method chaining
*/
public DonationPaymentRequest threeDS2RequestData(ThreeDS2RequestFields threeDS2RequestData) {
this.threeDS2RequestData = threeDS2RequestData;
return this;
}
/**
* Get threeDS2RequestData
* @return threeDS2RequestData
*/
@JsonProperty(JSON_PROPERTY_THREE_D_S2_REQUEST_DATA)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public ThreeDS2RequestFields getThreeDS2RequestData() {
return threeDS2RequestData;
}
/**
* threeDS2RequestData
*
* @param threeDS2RequestData
*/
@JsonProperty(JSON_PROPERTY_THREE_D_S2_REQUEST_DATA)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setThreeDS2RequestData(ThreeDS2RequestFields threeDS2RequestData) {
this.threeDS2RequestData = threeDS2RequestData;
}
/**
* If set to true, you will only perform the [3D Secure 2 authentication](https://docs.adyen.com/online-payments/3d-secure/other-3ds-flows/authentication-only), and not the payment authorisation.
*
* @param threeDSAuthenticationOnly If set to true, you will only perform the [3D Secure 2 authentication](https://docs.adyen.com/online-payments/3d-secure/other-3ds-flows/authentication-only), and not the payment authorisation.
* @return the current {@code DonationPaymentRequest} instance, allowing for method chaining
*
* @deprecated since Adyen Checkout API v69
* Use `authenticationData.authenticationOnly` instead.
*/
@Deprecated // deprecated since Adyen Checkout API v69: Use `authenticationData.authenticationOnly` instead.
public DonationPaymentRequest threeDSAuthenticationOnly(Boolean threeDSAuthenticationOnly) {
this.threeDSAuthenticationOnly = threeDSAuthenticationOnly;
return this;
}
/**
* If set to true, you will only perform the [3D Secure 2 authentication](https://docs.adyen.com/online-payments/3d-secure/other-3ds-flows/authentication-only), and not the payment authorisation.
* @return threeDSAuthenticationOnly If set to true, you will only perform the [3D Secure 2 authentication](https://docs.adyen.com/online-payments/3d-secure/other-3ds-flows/authentication-only), and not the payment authorisation.
* @deprecated // deprecated since Adyen Checkout API v69: Use `authenticationData.authenticationOnly` instead.
*/
@Deprecated // deprecated since Adyen Checkout API v69: Use `authenticationData.authenticationOnly` instead.
@JsonProperty(JSON_PROPERTY_THREE_D_S_AUTHENTICATION_ONLY)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public Boolean getThreeDSAuthenticationOnly() {
return threeDSAuthenticationOnly;
}
/**
* If set to true, you will only perform the [3D Secure 2 authentication](https://docs.adyen.com/online-payments/3d-secure/other-3ds-flows/authentication-only), and not the payment authorisation.
*
* @param threeDSAuthenticationOnly If set to true, you will only perform the [3D Secure 2 authentication](https://docs.adyen.com/online-payments/3d-secure/other-3ds-flows/authentication-only), and not the payment authorisation.
*
* @deprecated since Adyen Checkout API v69
* Use `authenticationData.authenticationOnly` instead.
*/
@Deprecated // deprecated since Adyen Checkout API v69: Use `authenticationData.authenticationOnly` instead.
@JsonProperty(JSON_PROPERTY_THREE_D_S_AUTHENTICATION_ONLY)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setThreeDSAuthenticationOnly(Boolean threeDSAuthenticationOnly) {
this.threeDSAuthenticationOnly = threeDSAuthenticationOnly;
}
/**
* Return true if this DonationPaymentRequest object is equal to o.
*/
@Override
public boolean equals(Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
DonationPaymentRequest donationPaymentRequest = (DonationPaymentRequest) o;
return Objects.equals(this.accountInfo, donationPaymentRequest.accountInfo) &&
Objects.equals(this.additionalData, donationPaymentRequest.additionalData) &&
Objects.equals(this.amount, donationPaymentRequest.amount) &&
Objects.equals(this.applicationInfo, donationPaymentRequest.applicationInfo) &&
Objects.equals(this.authenticationData, donationPaymentRequest.authenticationData) &&
Objects.equals(this.billingAddress, donationPaymentRequest.billingAddress) &&
Objects.equals(this.browserInfo, donationPaymentRequest.browserInfo) &&
Objects.equals(this.channel, donationPaymentRequest.channel) &&
Objects.equals(this.checkoutAttemptId, donationPaymentRequest.checkoutAttemptId) &&
Objects.equals(this.conversionId, donationPaymentRequest.conversionId) &&
Objects.equals(this.countryCode, donationPaymentRequest.countryCode) &&
Objects.equals(this.dateOfBirth, donationPaymentRequest.dateOfBirth) &&
Objects.equals(this.deliverAt, donationPaymentRequest.deliverAt) &&
Objects.equals(this.deliveryAddress, donationPaymentRequest.deliveryAddress) &&
Objects.equals(this.deviceFingerprint, donationPaymentRequest.deviceFingerprint) &&
Objects.equals(this.donationAccount, donationPaymentRequest.donationAccount) &&
Objects.equals(this.donationCampaignId, donationPaymentRequest.donationCampaignId) &&
Objects.equals(this.donationOriginalPspReference, donationPaymentRequest.donationOriginalPspReference) &&
Objects.equals(this.donationToken, donationPaymentRequest.donationToken) &&
Objects.equals(this.lineItems, donationPaymentRequest.lineItems) &&
Objects.equals(this.merchantAccount, donationPaymentRequest.merchantAccount) &&
Objects.equals(this.merchantRiskIndicator, donationPaymentRequest.merchantRiskIndicator) &&
Objects.equals(this.metadata, donationPaymentRequest.metadata) &&
Objects.equals(this.mpiData, donationPaymentRequest.mpiData) &&
Objects.equals(this.origin, donationPaymentRequest.origin) &&
Objects.equals(this.paymentMethod, donationPaymentRequest.paymentMethod) &&
Objects.equals(this.recurringProcessingModel, donationPaymentRequest.recurringProcessingModel) &&
Objects.equals(this.redirectFromIssuerMethod, donationPaymentRequest.redirectFromIssuerMethod) &&
Objects.equals(this.redirectToIssuerMethod, donationPaymentRequest.redirectToIssuerMethod) &&
Objects.equals(this.reference, donationPaymentRequest.reference) &&
Objects.equals(this.returnUrl, donationPaymentRequest.returnUrl) &&
Objects.equals(this.sessionValidity, donationPaymentRequest.sessionValidity) &&
Objects.equals(this.shopperEmail, donationPaymentRequest.shopperEmail) &&
Objects.equals(this.shopperIP, donationPaymentRequest.shopperIP) &&
Objects.equals(this.shopperInteraction, donationPaymentRequest.shopperInteraction) &&
Objects.equals(this.shopperLocale, donationPaymentRequest.shopperLocale) &&
Objects.equals(this.shopperName, donationPaymentRequest.shopperName) &&
Objects.equals(this.shopperReference, donationPaymentRequest.shopperReference) &&
Objects.equals(this.socialSecurityNumber, donationPaymentRequest.socialSecurityNumber) &&
Objects.equals(this.telephoneNumber, donationPaymentRequest.telephoneNumber) &&
Objects.equals(this.threeDS2RequestData, donationPaymentRequest.threeDS2RequestData) &&
Objects.equals(this.threeDSAuthenticationOnly, donationPaymentRequest.threeDSAuthenticationOnly);
}
@Override
public int hashCode() {
return Objects.hash(accountInfo, additionalData, amount, applicationInfo, authenticationData, billingAddress, browserInfo, channel, checkoutAttemptId, conversionId, countryCode, dateOfBirth, deliverAt, deliveryAddress, deviceFingerprint, donationAccount, donationCampaignId, donationOriginalPspReference, donationToken, lineItems, merchantAccount, merchantRiskIndicator, metadata, mpiData, origin, paymentMethod, recurringProcessingModel, redirectFromIssuerMethod, redirectToIssuerMethod, reference, returnUrl, sessionValidity, shopperEmail, shopperIP, shopperInteraction, shopperLocale, shopperName, shopperReference, socialSecurityNumber, telephoneNumber, threeDS2RequestData, threeDSAuthenticationOnly);
}
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("class DonationPaymentRequest {\n");
sb.append(" accountInfo: ").append(toIndentedString(accountInfo)).append("\n");
sb.append(" additionalData: ").append(toIndentedString(additionalData)).append("\n");
sb.append(" amount: ").append(toIndentedString(amount)).append("\n");
sb.append(" applicationInfo: ").append(toIndentedString(applicationInfo)).append("\n");
sb.append(" authenticationData: ").append(toIndentedString(authenticationData)).append("\n");
sb.append(" billingAddress: ").append(toIndentedString(billingAddress)).append("\n");
sb.append(" browserInfo: ").append(toIndentedString(browserInfo)).append("\n");
sb.append(" channel: ").append(toIndentedString(channel)).append("\n");
sb.append(" checkoutAttemptId: ").append(toIndentedString(checkoutAttemptId)).append("\n");
sb.append(" conversionId: ").append(toIndentedString(conversionId)).append("\n");
sb.append(" countryCode: ").append(toIndentedString(countryCode)).append("\n");
sb.append(" dateOfBirth: ").append(toIndentedString(dateOfBirth)).append("\n");
sb.append(" deliverAt: ").append(toIndentedString(deliverAt)).append("\n");
sb.append(" deliveryAddress: ").append(toIndentedString(deliveryAddress)).append("\n");
sb.append(" deviceFingerprint: ").append(toIndentedString(deviceFingerprint)).append("\n");
sb.append(" donationAccount: ").append(toIndentedString(donationAccount)).append("\n");
sb.append(" donationCampaignId: ").append(toIndentedString(donationCampaignId)).append("\n");
sb.append(" donationOriginalPspReference: ").append(toIndentedString(donationOriginalPspReference)).append("\n");
sb.append(" donationToken: ").append(toIndentedString(donationToken)).append("\n");
sb.append(" lineItems: ").append(toIndentedString(lineItems)).append("\n");
sb.append(" merchantAccount: ").append(toIndentedString(merchantAccount)).append("\n");
sb.append(" merchantRiskIndicator: ").append(toIndentedString(merchantRiskIndicator)).append("\n");
sb.append(" metadata: ").append(toIndentedString(metadata)).append("\n");
sb.append(" mpiData: ").append(toIndentedString(mpiData)).append("\n");
sb.append(" origin: ").append(toIndentedString(origin)).append("\n");
sb.append(" paymentMethod: ").append(toIndentedString(paymentMethod)).append("\n");
sb.append(" recurringProcessingModel: ").append(toIndentedString(recurringProcessingModel)).append("\n");
sb.append(" redirectFromIssuerMethod: ").append(toIndentedString(redirectFromIssuerMethod)).append("\n");
sb.append(" redirectToIssuerMethod: ").append(toIndentedString(redirectToIssuerMethod)).append("\n");
sb.append(" reference: ").append(toIndentedString(reference)).append("\n");
sb.append(" returnUrl: ").append(toIndentedString(returnUrl)).append("\n");
sb.append(" sessionValidity: ").append(toIndentedString(sessionValidity)).append("\n");
sb.append(" shopperEmail: ").append(toIndentedString(shopperEmail)).append("\n");
sb.append(" shopperIP: ").append(toIndentedString(shopperIP)).append("\n");
sb.append(" shopperInteraction: ").append(toIndentedString(shopperInteraction)).append("\n");
sb.append(" shopperLocale: ").append(toIndentedString(shopperLocale)).append("\n");
sb.append(" shopperName: ").append(toIndentedString(shopperName)).append("\n");
sb.append(" shopperReference: ").append(toIndentedString(shopperReference)).append("\n");
sb.append(" socialSecurityNumber: ").append(toIndentedString(socialSecurityNumber)).append("\n");
sb.append(" telephoneNumber: ").append(toIndentedString(telephoneNumber)).append("\n");
sb.append(" threeDS2RequestData: ").append(toIndentedString(threeDS2RequestData)).append("\n");
sb.append(" threeDSAuthenticationOnly: ").append(toIndentedString(threeDSAuthenticationOnly)).append("\n");
sb.append("}");
return sb.toString();
}
/**
* Convert the given object to string with each line indented by 4 spaces
* (except the first line).
*/
private String toIndentedString(Object o) {
if (o == null) {
return "null";
}
return o.toString().replace("\n", "\n ");
}
/**
* Create an instance of DonationPaymentRequest given an JSON string
*
* @param jsonString JSON string
* @return An instance of DonationPaymentRequest
* @throws JsonProcessingException if the JSON string is invalid with respect to DonationPaymentRequest
*/
public static DonationPaymentRequest fromJson(String jsonString) throws JsonProcessingException {
return JSON.getMapper().readValue(jsonString, DonationPaymentRequest.class);
}
/**
* Convert an instance of DonationPaymentRequest to an JSON string
*
* @return JSON string
*/
public String toJson() throws JsonProcessingException {
return JSON.getMapper().writeValueAsString(this);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy