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

com.adyen.model.checkout.PaymentCompletionDetails Maven / Gradle / Ivy

There is a newer version: 38.1.0
Show newest version
/*
 * 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.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.util.Arrays;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
import com.fasterxml.jackson.core.JsonProcessingException;


/**
 * PaymentCompletionDetails
 */
@JsonPropertyOrder({
  PaymentCompletionDetails.JSON_PROPERTY_M_D,
  PaymentCompletionDetails.JSON_PROPERTY_PA_REQ,
  PaymentCompletionDetails.JSON_PROPERTY_PA_RES,
  PaymentCompletionDetails.JSON_PROPERTY_AUTHORIZATION_TOKEN,
  PaymentCompletionDetails.JSON_PROPERTY_BILLING_TOKEN,
  PaymentCompletionDetails.JSON_PROPERTY_CUPSECUREPLUS_SMSCODE,
  PaymentCompletionDetails.JSON_PROPERTY_FACILITATOR_ACCESS_TOKEN,
  PaymentCompletionDetails.JSON_PROPERTY_ONE_TIME_PASSCODE,
  PaymentCompletionDetails.JSON_PROPERTY_ORDER_I_D,
  PaymentCompletionDetails.JSON_PROPERTY_PAYER_I_D,
  PaymentCompletionDetails.JSON_PROPERTY_PAYLOAD,
  PaymentCompletionDetails.JSON_PROPERTY_PAYMENT_I_D,
  PaymentCompletionDetails.JSON_PROPERTY_PAYMENT_STATUS,
  PaymentCompletionDetails.JSON_PROPERTY_REDIRECT_RESULT,
  PaymentCompletionDetails.JSON_PROPERTY_RESULT_CODE,
  PaymentCompletionDetails.JSON_PROPERTY_RETURN_URL_QUERY_STRING,
  PaymentCompletionDetails.JSON_PROPERTY_THREE_D_S_RESULT,
  PaymentCompletionDetails.JSON_PROPERTY_THREEDS2_CHALLENGE_RESULT,
  PaymentCompletionDetails.JSON_PROPERTY_THREEDS2_FINGERPRINT,
  PaymentCompletionDetails.JSON_PROPERTY_VAULT_TOKEN
})

public class PaymentCompletionDetails {
  public static final String JSON_PROPERTY_M_D = "MD";
  private String MD;

  public static final String JSON_PROPERTY_PA_REQ = "PaReq";
  private String paReq;

  public static final String JSON_PROPERTY_PA_RES = "PaRes";
  private String paRes;

  public static final String JSON_PROPERTY_AUTHORIZATION_TOKEN = "authorization_token";
  private String authorizationToken;

  public static final String JSON_PROPERTY_BILLING_TOKEN = "billingToken";
  private String billingToken;

  public static final String JSON_PROPERTY_CUPSECUREPLUS_SMSCODE = "cupsecureplus.smscode";
  private String cupsecureplusSmscode;

  public static final String JSON_PROPERTY_FACILITATOR_ACCESS_TOKEN = "facilitatorAccessToken";
  private String facilitatorAccessToken;

  public static final String JSON_PROPERTY_ONE_TIME_PASSCODE = "oneTimePasscode";
  private String oneTimePasscode;

  public static final String JSON_PROPERTY_ORDER_I_D = "orderID";
  private String orderID;

  public static final String JSON_PROPERTY_PAYER_I_D = "payerID";
  private String payerID;

  public static final String JSON_PROPERTY_PAYLOAD = "payload";
  private String payload;

  public static final String JSON_PROPERTY_PAYMENT_I_D = "paymentID";
  private String paymentID;

  public static final String JSON_PROPERTY_PAYMENT_STATUS = "paymentStatus";
  private String paymentStatus;

  public static final String JSON_PROPERTY_REDIRECT_RESULT = "redirectResult";
  private String redirectResult;

  public static final String JSON_PROPERTY_RESULT_CODE = "resultCode";
  private String resultCode;

  public static final String JSON_PROPERTY_RETURN_URL_QUERY_STRING = "returnUrlQueryString";
  private String returnUrlQueryString;

  public static final String JSON_PROPERTY_THREE_D_S_RESULT = "threeDSResult";
  private String threeDSResult;

  public static final String JSON_PROPERTY_THREEDS2_CHALLENGE_RESULT = "threeds2.challengeResult";
  private String threeds2ChallengeResult;

  public static final String JSON_PROPERTY_THREEDS2_FINGERPRINT = "threeds2.fingerprint";
  private String threeds2Fingerprint;

  public static final String JSON_PROPERTY_VAULT_TOKEN = "vaultToken";
  private String vaultToken;

  public PaymentCompletionDetails() { 
  }

  /**
   * A payment session identifier returned by the card issuer.
   *
   * @param MD A payment session identifier returned by the card issuer.
   * @return the current {@code PaymentCompletionDetails} instance, allowing for method chaining
   */
  public PaymentCompletionDetails MD(String MD) {
    this.MD = MD;
    return this;
  }

  /**
   * A payment session identifier returned by the card issuer.
   * @return MD A payment session identifier returned by the card issuer.
   */
  @JsonProperty(JSON_PROPERTY_M_D)
  @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
  public String getMD() {
    return MD;
  }

  /**
   * A payment session identifier returned by the card issuer.
   *
   * @param MD A payment session identifier returned by the card issuer.
   */
  @JsonProperty(JSON_PROPERTY_M_D)
  @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
  public void setMD(String MD) {
    this.MD = MD;
  }

  /**
   * (3D) Payment Authentication Request data for the card issuer.
   *
   * @param paReq (3D) Payment Authentication Request data for the card issuer.
   * @return the current {@code PaymentCompletionDetails} instance, allowing for method chaining
   */
  public PaymentCompletionDetails paReq(String paReq) {
    this.paReq = paReq;
    return this;
  }

  /**
   * (3D) Payment Authentication Request data for the card issuer.
   * @return paReq (3D) Payment Authentication Request data for the card issuer.
   */
  @JsonProperty(JSON_PROPERTY_PA_REQ)
  @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
  public String getPaReq() {
    return paReq;
  }

  /**
   * (3D) Payment Authentication Request data for the card issuer.
   *
   * @param paReq (3D) Payment Authentication Request data for the card issuer.
   */
  @JsonProperty(JSON_PROPERTY_PA_REQ)
  @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
  public void setPaReq(String paReq) {
    this.paReq = paReq;
  }

  /**
   * (3D) Payment Authentication Response data by the card issuer.
   *
   * @param paRes (3D) Payment Authentication Response data by the card issuer.
   * @return the current {@code PaymentCompletionDetails} instance, allowing for method chaining
   */
  public PaymentCompletionDetails paRes(String paRes) {
    this.paRes = paRes;
    return this;
  }

  /**
   * (3D) Payment Authentication Response data by the card issuer.
   * @return paRes (3D) Payment Authentication Response data by the card issuer.
   */
  @JsonProperty(JSON_PROPERTY_PA_RES)
  @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
  public String getPaRes() {
    return paRes;
  }

  /**
   * (3D) Payment Authentication Response data by the card issuer.
   *
   * @param paRes (3D) Payment Authentication Response data by the card issuer.
   */
  @JsonProperty(JSON_PROPERTY_PA_RES)
  @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
  public void setPaRes(String paRes) {
    this.paRes = paRes;
  }

  /**
   * authorizationToken
   *
   * @param authorizationToken 
   * @return the current {@code PaymentCompletionDetails} instance, allowing for method chaining
   */
  public PaymentCompletionDetails authorizationToken(String authorizationToken) {
    this.authorizationToken = authorizationToken;
    return this;
  }

  /**
   * Get authorizationToken
   * @return authorizationToken 
   */
  @JsonProperty(JSON_PROPERTY_AUTHORIZATION_TOKEN)
  @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
  public String getAuthorizationToken() {
    return authorizationToken;
  }

  /**
   * authorizationToken
   *
   * @param authorizationToken 
   */
  @JsonProperty(JSON_PROPERTY_AUTHORIZATION_TOKEN)
  @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
  public void setAuthorizationToken(String authorizationToken) {
    this.authorizationToken = authorizationToken;
  }

  /**
   * PayPal-generated token for recurring payments.
   *
   * @param billingToken PayPal-generated token for recurring payments.
   * @return the current {@code PaymentCompletionDetails} instance, allowing for method chaining
   */
  public PaymentCompletionDetails billingToken(String billingToken) {
    this.billingToken = billingToken;
    return this;
  }

  /**
   * PayPal-generated token for recurring payments.
   * @return billingToken PayPal-generated token for recurring payments.
   */
  @JsonProperty(JSON_PROPERTY_BILLING_TOKEN)
  @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
  public String getBillingToken() {
    return billingToken;
  }

  /**
   * PayPal-generated token for recurring payments.
   *
   * @param billingToken PayPal-generated token for recurring payments.
   */
  @JsonProperty(JSON_PROPERTY_BILLING_TOKEN)
  @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
  public void setBillingToken(String billingToken) {
    this.billingToken = billingToken;
  }

  /**
   * The SMS verification code collected from the shopper.
   *
   * @param cupsecureplusSmscode The SMS verification code collected from the shopper.
   * @return the current {@code PaymentCompletionDetails} instance, allowing for method chaining
   */
  public PaymentCompletionDetails cupsecureplusSmscode(String cupsecureplusSmscode) {
    this.cupsecureplusSmscode = cupsecureplusSmscode;
    return this;
  }

  /**
   * The SMS verification code collected from the shopper.
   * @return cupsecureplusSmscode The SMS verification code collected from the shopper.
   */
  @JsonProperty(JSON_PROPERTY_CUPSECUREPLUS_SMSCODE)
  @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
  public String getCupsecureplusSmscode() {
    return cupsecureplusSmscode;
  }

  /**
   * The SMS verification code collected from the shopper.
   *
   * @param cupsecureplusSmscode The SMS verification code collected from the shopper.
   */
  @JsonProperty(JSON_PROPERTY_CUPSECUREPLUS_SMSCODE)
  @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
  public void setCupsecureplusSmscode(String cupsecureplusSmscode) {
    this.cupsecureplusSmscode = cupsecureplusSmscode;
  }

  /**
   * PayPal-generated third party access token.
   *
   * @param facilitatorAccessToken PayPal-generated third party access token.
   * @return the current {@code PaymentCompletionDetails} instance, allowing for method chaining
   */
  public PaymentCompletionDetails facilitatorAccessToken(String facilitatorAccessToken) {
    this.facilitatorAccessToken = facilitatorAccessToken;
    return this;
  }

  /**
   * PayPal-generated third party access token.
   * @return facilitatorAccessToken PayPal-generated third party access token.
   */
  @JsonProperty(JSON_PROPERTY_FACILITATOR_ACCESS_TOKEN)
  @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
  public String getFacilitatorAccessToken() {
    return facilitatorAccessToken;
  }

  /**
   * PayPal-generated third party access token.
   *
   * @param facilitatorAccessToken PayPal-generated third party access token.
   */
  @JsonProperty(JSON_PROPERTY_FACILITATOR_ACCESS_TOKEN)
  @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
  public void setFacilitatorAccessToken(String facilitatorAccessToken) {
    this.facilitatorAccessToken = facilitatorAccessToken;
  }

  /**
   * A random number sent to the mobile phone number of the shopper to verify the payment.
   *
   * @param oneTimePasscode A random number sent to the mobile phone number of the shopper to verify the payment.
   * @return the current {@code PaymentCompletionDetails} instance, allowing for method chaining
   */
  public PaymentCompletionDetails oneTimePasscode(String oneTimePasscode) {
    this.oneTimePasscode = oneTimePasscode;
    return this;
  }

  /**
   * A random number sent to the mobile phone number of the shopper to verify the payment.
   * @return oneTimePasscode A random number sent to the mobile phone number of the shopper to verify the payment.
   */
  @JsonProperty(JSON_PROPERTY_ONE_TIME_PASSCODE)
  @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
  public String getOneTimePasscode() {
    return oneTimePasscode;
  }

  /**
   * A random number sent to the mobile phone number of the shopper to verify the payment.
   *
   * @param oneTimePasscode A random number sent to the mobile phone number of the shopper to verify the payment.
   */
  @JsonProperty(JSON_PROPERTY_ONE_TIME_PASSCODE)
  @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
  public void setOneTimePasscode(String oneTimePasscode) {
    this.oneTimePasscode = oneTimePasscode;
  }

  /**
   * PayPal-assigned ID for the order.
   *
   * @param orderID PayPal-assigned ID for the order.
   * @return the current {@code PaymentCompletionDetails} instance, allowing for method chaining
   */
  public PaymentCompletionDetails orderID(String orderID) {
    this.orderID = orderID;
    return this;
  }

  /**
   * PayPal-assigned ID for the order.
   * @return orderID PayPal-assigned ID for the order.
   */
  @JsonProperty(JSON_PROPERTY_ORDER_I_D)
  @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
  public String getOrderID() {
    return orderID;
  }

  /**
   * PayPal-assigned ID for the order.
   *
   * @param orderID PayPal-assigned ID for the order.
   */
  @JsonProperty(JSON_PROPERTY_ORDER_I_D)
  @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
  public void setOrderID(String orderID) {
    this.orderID = orderID;
  }

  /**
   * PayPal-assigned ID for the payer (shopper).
   *
   * @param payerID PayPal-assigned ID for the payer (shopper).
   * @return the current {@code PaymentCompletionDetails} instance, allowing for method chaining
   */
  public PaymentCompletionDetails payerID(String payerID) {
    this.payerID = payerID;
    return this;
  }

  /**
   * PayPal-assigned ID for the payer (shopper).
   * @return payerID PayPal-assigned ID for the payer (shopper).
   */
  @JsonProperty(JSON_PROPERTY_PAYER_I_D)
  @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
  public String getPayerID() {
    return payerID;
  }

  /**
   * PayPal-assigned ID for the payer (shopper).
   *
   * @param payerID PayPal-assigned ID for the payer (shopper).
   */
  @JsonProperty(JSON_PROPERTY_PAYER_I_D)
  @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
  public void setPayerID(String payerID) {
    this.payerID = payerID;
  }

  /**
   * Payload appended to the `returnURL` as a result of the redirect.
   *
   * @param payload Payload appended to the `returnURL` as a result of the redirect.
   * @return the current {@code PaymentCompletionDetails} instance, allowing for method chaining
   */
  public PaymentCompletionDetails payload(String payload) {
    this.payload = payload;
    return this;
  }

  /**
   * Payload appended to the `returnURL` as a result of the redirect.
   * @return payload Payload appended to the `returnURL` as a result of the redirect.
   */
  @JsonProperty(JSON_PROPERTY_PAYLOAD)
  @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
  public String getPayload() {
    return payload;
  }

  /**
   * Payload appended to the `returnURL` as a result of the redirect.
   *
   * @param payload Payload appended to the `returnURL` as a result of the redirect.
   */
  @JsonProperty(JSON_PROPERTY_PAYLOAD)
  @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
  public void setPayload(String payload) {
    this.payload = payload;
  }

  /**
   * PayPal-generated ID for the payment.
   *
   * @param paymentID PayPal-generated ID for the payment.
   * @return the current {@code PaymentCompletionDetails} instance, allowing for method chaining
   */
  public PaymentCompletionDetails paymentID(String paymentID) {
    this.paymentID = paymentID;
    return this;
  }

  /**
   * PayPal-generated ID for the payment.
   * @return paymentID PayPal-generated ID for the payment.
   */
  @JsonProperty(JSON_PROPERTY_PAYMENT_I_D)
  @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
  public String getPaymentID() {
    return paymentID;
  }

  /**
   * PayPal-generated ID for the payment.
   *
   * @param paymentID PayPal-generated ID for the payment.
   */
  @JsonProperty(JSON_PROPERTY_PAYMENT_I_D)
  @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
  public void setPaymentID(String paymentID) {
    this.paymentID = paymentID;
  }

  /**
   * Value passed from the WeChat MiniProgram `wx.requestPayment` **complete** callback. Possible values: any value starting with `requestPayment:`.
   *
   * @param paymentStatus Value passed from the WeChat MiniProgram `wx.requestPayment` **complete** callback. Possible values: any value starting with `requestPayment:`.
   * @return the current {@code PaymentCompletionDetails} instance, allowing for method chaining
   */
  public PaymentCompletionDetails paymentStatus(String paymentStatus) {
    this.paymentStatus = paymentStatus;
    return this;
  }

  /**
   * Value passed from the WeChat MiniProgram `wx.requestPayment` **complete** callback. Possible values: any value starting with `requestPayment:`.
   * @return paymentStatus Value passed from the WeChat MiniProgram `wx.requestPayment` **complete** callback. Possible values: any value starting with `requestPayment:`.
   */
  @JsonProperty(JSON_PROPERTY_PAYMENT_STATUS)
  @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
  public String getPaymentStatus() {
    return paymentStatus;
  }

  /**
   * Value passed from the WeChat MiniProgram `wx.requestPayment` **complete** callback. Possible values: any value starting with `requestPayment:`.
   *
   * @param paymentStatus Value passed from the WeChat MiniProgram `wx.requestPayment` **complete** callback. Possible values: any value starting with `requestPayment:`.
   */
  @JsonProperty(JSON_PROPERTY_PAYMENT_STATUS)
  @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
  public void setPaymentStatus(String paymentStatus) {
    this.paymentStatus = paymentStatus;
  }

  /**
   * The result of the redirect as appended to the `returnURL`.
   *
   * @param redirectResult The result of the redirect as appended to the `returnURL`.
   * @return the current {@code PaymentCompletionDetails} instance, allowing for method chaining
   */
  public PaymentCompletionDetails redirectResult(String redirectResult) {
    this.redirectResult = redirectResult;
    return this;
  }

  /**
   * The result of the redirect as appended to the `returnURL`.
   * @return redirectResult The result of the redirect as appended to the `returnURL`.
   */
  @JsonProperty(JSON_PROPERTY_REDIRECT_RESULT)
  @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
  public String getRedirectResult() {
    return redirectResult;
  }

  /**
   * The result of the redirect as appended to the `returnURL`.
   *
   * @param redirectResult The result of the redirect as appended to the `returnURL`.
   */
  @JsonProperty(JSON_PROPERTY_REDIRECT_RESULT)
  @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
  public void setRedirectResult(String redirectResult) {
    this.redirectResult = redirectResult;
  }

  /**
   * Value you received from the WeChat Pay SDK.
   *
   * @param resultCode Value you received from the WeChat Pay SDK.
   * @return the current {@code PaymentCompletionDetails} instance, allowing for method chaining
   */
  public PaymentCompletionDetails resultCode(String resultCode) {
    this.resultCode = resultCode;
    return this;
  }

  /**
   * Value you received from the WeChat Pay SDK.
   * @return resultCode Value you received from the WeChat Pay SDK.
   */
  @JsonProperty(JSON_PROPERTY_RESULT_CODE)
  @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
  public String getResultCode() {
    return resultCode;
  }

  /**
   * Value you received from the WeChat Pay SDK.
   *
   * @param resultCode Value you received from the WeChat Pay SDK.
   */
  @JsonProperty(JSON_PROPERTY_RESULT_CODE)
  @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
  public void setResultCode(String resultCode) {
    this.resultCode = resultCode;
  }

  /**
   * The query string as appended to the `returnURL` when using direct issuer links .
   *
   * @param returnUrlQueryString The query string as appended to the `returnURL` when using direct issuer links .
   * @return the current {@code PaymentCompletionDetails} instance, allowing for method chaining
   */
  public PaymentCompletionDetails returnUrlQueryString(String returnUrlQueryString) {
    this.returnUrlQueryString = returnUrlQueryString;
    return this;
  }

  /**
   * The query string as appended to the `returnURL` when using direct issuer links .
   * @return returnUrlQueryString The query string as appended to the `returnURL` when using direct issuer links .
   */
  @JsonProperty(JSON_PROPERTY_RETURN_URL_QUERY_STRING)
  @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
  public String getReturnUrlQueryString() {
    return returnUrlQueryString;
  }

  /**
   * The query string as appended to the `returnURL` when using direct issuer links .
   *
   * @param returnUrlQueryString The query string as appended to the `returnURL` when using direct issuer links .
   */
  @JsonProperty(JSON_PROPERTY_RETURN_URL_QUERY_STRING)
  @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
  public void setReturnUrlQueryString(String returnUrlQueryString) {
    this.returnUrlQueryString = returnUrlQueryString;
  }

  /**
   * Base64-encoded string returned by the Component after the challenge flow. It contains the following parameters: `transStatus`, `authorisationToken`.
   *
   * @param threeDSResult Base64-encoded string returned by the Component after the challenge flow. It contains the following parameters: `transStatus`, `authorisationToken`.
   * @return the current {@code PaymentCompletionDetails} instance, allowing for method chaining
   */
  public PaymentCompletionDetails threeDSResult(String threeDSResult) {
    this.threeDSResult = threeDSResult;
    return this;
  }

  /**
   * Base64-encoded string returned by the Component after the challenge flow. It contains the following parameters: `transStatus`, `authorisationToken`.
   * @return threeDSResult Base64-encoded string returned by the Component after the challenge flow. It contains the following parameters: `transStatus`, `authorisationToken`.
   */
  @JsonProperty(JSON_PROPERTY_THREE_D_S_RESULT)
  @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
  public String getThreeDSResult() {
    return threeDSResult;
  }

  /**
   * Base64-encoded string returned by the Component after the challenge flow. It contains the following parameters: `transStatus`, `authorisationToken`.
   *
   * @param threeDSResult Base64-encoded string returned by the Component after the challenge flow. It contains the following parameters: `transStatus`, `authorisationToken`.
   */
  @JsonProperty(JSON_PROPERTY_THREE_D_S_RESULT)
  @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
  public void setThreeDSResult(String threeDSResult) {
    this.threeDSResult = threeDSResult;
  }

  /**
   * Base64-encoded string returned by the Component after the challenge flow. It contains the following parameter: `transStatus`.
   *
   * @param threeds2ChallengeResult Base64-encoded string returned by the Component after the challenge flow. It contains the following parameter: `transStatus`.
   * @return the current {@code PaymentCompletionDetails} instance, allowing for method chaining
   */
  public PaymentCompletionDetails threeds2ChallengeResult(String threeds2ChallengeResult) {
    this.threeds2ChallengeResult = threeds2ChallengeResult;
    return this;
  }

  /**
   * Base64-encoded string returned by the Component after the challenge flow. It contains the following parameter: `transStatus`.
   * @return threeds2ChallengeResult Base64-encoded string returned by the Component after the challenge flow. It contains the following parameter: `transStatus`.
   */
  @JsonProperty(JSON_PROPERTY_THREEDS2_CHALLENGE_RESULT)
  @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
  public String getThreeds2ChallengeResult() {
    return threeds2ChallengeResult;
  }

  /**
   * Base64-encoded string returned by the Component after the challenge flow. It contains the following parameter: `transStatus`.
   *
   * @param threeds2ChallengeResult Base64-encoded string returned by the Component after the challenge flow. It contains the following parameter: `transStatus`.
   */
  @JsonProperty(JSON_PROPERTY_THREEDS2_CHALLENGE_RESULT)
  @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
  public void setThreeds2ChallengeResult(String threeds2ChallengeResult) {
    this.threeds2ChallengeResult = threeds2ChallengeResult;
  }

  /**
   * Base64-encoded string returned by the Component after the challenge flow. It contains the following parameter: `threeDSCompInd`.
   *
   * @param threeds2Fingerprint Base64-encoded string returned by the Component after the challenge flow. It contains the following parameter: `threeDSCompInd`.
   * @return the current {@code PaymentCompletionDetails} instance, allowing for method chaining
   */
  public PaymentCompletionDetails threeds2Fingerprint(String threeds2Fingerprint) {
    this.threeds2Fingerprint = threeds2Fingerprint;
    return this;
  }

  /**
   * Base64-encoded string returned by the Component after the challenge flow. It contains the following parameter: `threeDSCompInd`.
   * @return threeds2Fingerprint Base64-encoded string returned by the Component after the challenge flow. It contains the following parameter: `threeDSCompInd`.
   */
  @JsonProperty(JSON_PROPERTY_THREEDS2_FINGERPRINT)
  @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
  public String getThreeds2Fingerprint() {
    return threeds2Fingerprint;
  }

  /**
   * Base64-encoded string returned by the Component after the challenge flow. It contains the following parameter: `threeDSCompInd`.
   *
   * @param threeds2Fingerprint Base64-encoded string returned by the Component after the challenge flow. It contains the following parameter: `threeDSCompInd`.
   */
  @JsonProperty(JSON_PROPERTY_THREEDS2_FINGERPRINT)
  @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
  public void setThreeds2Fingerprint(String threeds2Fingerprint) {
    this.threeds2Fingerprint = threeds2Fingerprint;
  }

  /**
   * PayPalv2-generated token for recurring payments.
   *
   * @param vaultToken PayPalv2-generated token for recurring payments.
   * @return the current {@code PaymentCompletionDetails} instance, allowing for method chaining
   */
  public PaymentCompletionDetails vaultToken(String vaultToken) {
    this.vaultToken = vaultToken;
    return this;
  }

  /**
   * PayPalv2-generated token for recurring payments.
   * @return vaultToken PayPalv2-generated token for recurring payments.
   */
  @JsonProperty(JSON_PROPERTY_VAULT_TOKEN)
  @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
  public String getVaultToken() {
    return vaultToken;
  }

  /**
   * PayPalv2-generated token for recurring payments.
   *
   * @param vaultToken PayPalv2-generated token for recurring payments.
   */
  @JsonProperty(JSON_PROPERTY_VAULT_TOKEN)
  @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
  public void setVaultToken(String vaultToken) {
    this.vaultToken = vaultToken;
  }

  /**
   * Return true if this PaymentCompletionDetails object is equal to o.
   */
  @Override
  public boolean equals(Object o) {
    if (this == o) {
      return true;
    }
    if (o == null || getClass() != o.getClass()) {
      return false;
    }
    PaymentCompletionDetails paymentCompletionDetails = (PaymentCompletionDetails) o;
    return Objects.equals(this.MD, paymentCompletionDetails.MD) &&
        Objects.equals(this.paReq, paymentCompletionDetails.paReq) &&
        Objects.equals(this.paRes, paymentCompletionDetails.paRes) &&
        Objects.equals(this.authorizationToken, paymentCompletionDetails.authorizationToken) &&
        Objects.equals(this.billingToken, paymentCompletionDetails.billingToken) &&
        Objects.equals(this.cupsecureplusSmscode, paymentCompletionDetails.cupsecureplusSmscode) &&
        Objects.equals(this.facilitatorAccessToken, paymentCompletionDetails.facilitatorAccessToken) &&
        Objects.equals(this.oneTimePasscode, paymentCompletionDetails.oneTimePasscode) &&
        Objects.equals(this.orderID, paymentCompletionDetails.orderID) &&
        Objects.equals(this.payerID, paymentCompletionDetails.payerID) &&
        Objects.equals(this.payload, paymentCompletionDetails.payload) &&
        Objects.equals(this.paymentID, paymentCompletionDetails.paymentID) &&
        Objects.equals(this.paymentStatus, paymentCompletionDetails.paymentStatus) &&
        Objects.equals(this.redirectResult, paymentCompletionDetails.redirectResult) &&
        Objects.equals(this.resultCode, paymentCompletionDetails.resultCode) &&
        Objects.equals(this.returnUrlQueryString, paymentCompletionDetails.returnUrlQueryString) &&
        Objects.equals(this.threeDSResult, paymentCompletionDetails.threeDSResult) &&
        Objects.equals(this.threeds2ChallengeResult, paymentCompletionDetails.threeds2ChallengeResult) &&
        Objects.equals(this.threeds2Fingerprint, paymentCompletionDetails.threeds2Fingerprint) &&
        Objects.equals(this.vaultToken, paymentCompletionDetails.vaultToken);
  }

  @Override
  public int hashCode() {
    return Objects.hash(MD, paReq, paRes, authorizationToken, billingToken, cupsecureplusSmscode, facilitatorAccessToken, oneTimePasscode, orderID, payerID, payload, paymentID, paymentStatus, redirectResult, resultCode, returnUrlQueryString, threeDSResult, threeds2ChallengeResult, threeds2Fingerprint, vaultToken);
  }

  @Override
  public String toString() {
    StringBuilder sb = new StringBuilder();
    sb.append("class PaymentCompletionDetails {\n");
    sb.append("    MD: ").append(toIndentedString(MD)).append("\n");
    sb.append("    paReq: ").append(toIndentedString(paReq)).append("\n");
    sb.append("    paRes: ").append(toIndentedString(paRes)).append("\n");
    sb.append("    authorizationToken: ").append(toIndentedString(authorizationToken)).append("\n");
    sb.append("    billingToken: ").append(toIndentedString(billingToken)).append("\n");
    sb.append("    cupsecureplusSmscode: ").append(toIndentedString(cupsecureplusSmscode)).append("\n");
    sb.append("    facilitatorAccessToken: ").append(toIndentedString(facilitatorAccessToken)).append("\n");
    sb.append("    oneTimePasscode: ").append(toIndentedString(oneTimePasscode)).append("\n");
    sb.append("    orderID: ").append(toIndentedString(orderID)).append("\n");
    sb.append("    payerID: ").append(toIndentedString(payerID)).append("\n");
    sb.append("    payload: ").append(toIndentedString(payload)).append("\n");
    sb.append("    paymentID: ").append(toIndentedString(paymentID)).append("\n");
    sb.append("    paymentStatus: ").append(toIndentedString(paymentStatus)).append("\n");
    sb.append("    redirectResult: ").append(toIndentedString(redirectResult)).append("\n");
    sb.append("    resultCode: ").append(toIndentedString(resultCode)).append("\n");
    sb.append("    returnUrlQueryString: ").append(toIndentedString(returnUrlQueryString)).append("\n");
    sb.append("    threeDSResult: ").append(toIndentedString(threeDSResult)).append("\n");
    sb.append("    threeds2ChallengeResult: ").append(toIndentedString(threeds2ChallengeResult)).append("\n");
    sb.append("    threeds2Fingerprint: ").append(toIndentedString(threeds2Fingerprint)).append("\n");
    sb.append("    vaultToken: ").append(toIndentedString(vaultToken)).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 PaymentCompletionDetails given an JSON string
   *
   * @param jsonString JSON string
   * @return An instance of PaymentCompletionDetails
   * @throws JsonProcessingException if the JSON string is invalid with respect to PaymentCompletionDetails
   */
  public static PaymentCompletionDetails fromJson(String jsonString) throws JsonProcessingException {
    return JSON.getMapper().readValue(jsonString, PaymentCompletionDetails.class);
  }
/**
  * Convert an instance of PaymentCompletionDetails to an JSON string
  *
  * @return JSON string
  */
  public String toJson() throws JsonProcessingException {
    return JSON.getMapper().writeValueAsString(this);
  }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy