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

com.cardpay.sdk.model.PayoutResponseCardAccount Maven / Gradle / Ivy

There is a newer version: 3.82.1
Show newest version
/*
 * CardPay REST API
 * Welcome to the CardPay REST API. The CardPay API uses HTTP verbs and a [REST](https://en.wikipedia.org/wiki/Representational_state_transfer) resources endpoint structure (see more info about REST). Request and response payloads are formatted as JSON. Merchant uses API to create payments, refunds, payouts or recurrings, check or update transaction status and get information about created transactions. In API authentication process based on [OAuth 2.0](https://oauth.net/2/) standard. For recent changes see changelog section.
 *
 * OpenAPI spec version: 3.0
 * 
 *
 * NOTE: This class is auto generated by the swagger code generator program.
 * https://github.com/swagger-api/swagger-codegen.git
 * Do not edit the class manually.
 */


package com.cardpay.sdk.model;

import com.google.gson.TypeAdapter;
import com.google.gson.annotations.JsonAdapter;
import com.google.gson.annotations.SerializedName;
import com.google.gson.stream.JsonReader;
import com.google.gson.stream.JsonWriter;
import java.io.IOException;
import lombok.Data;

@Data

public class PayoutResponseCardAccount {
  @SerializedName("card_brand")
  private String cardBrand = null;
  /**
   * Card type
   */
  @JsonAdapter(CardTypeEnum.Adapter.class)
  public enum CardTypeEnum {
    DEBIT("DEBIT"),
    
    CREDIT("CREDIT"),
    
    PREPAID("PREPAID"),
    
    OTHER("OTHER"),
    
    UNKNOWN("UNKNOWN");

    private String value;

    CardTypeEnum(String value) {
      this.value = value;
    }

    public String getValue() {
      return value;
    }

    @Override
    public String toString() {
      return String.valueOf(value);
    }

    public static CardTypeEnum fromValue(String text) {
      for (CardTypeEnum b : CardTypeEnum.values()) {
        if (String.valueOf(b.value).equals(text)) {
          return b;
        }
      }
      return null;
    }

    public static class Adapter extends TypeAdapter {
      @Override
      public void write(final JsonWriter jsonWriter, final CardTypeEnum enumeration) throws IOException {
        jsonWriter.value(enumeration.getValue());
      }

      @Override
      public CardTypeEnum read(final JsonReader jsonReader) throws IOException {
        String value = jsonReader.nextString();
        return CardTypeEnum.fromValue(String.valueOf(value));
      }
    }
  }

  @SerializedName("card_type")
  private CardTypeEnum cardType = null;
  @SerializedName("expiration")
  private String expiration = null;
  @SerializedName("holder")
  private String holder = null;
  @SerializedName("issuer")
  private String issuer = null;
  @SerializedName("issuing_country_code")
  private String issuingCountryCode = null;
  @SerializedName("masked_pan")
  private String maskedPan = null;
  @SerializedName("token")
  private String token = null;
  
  public void setCardBrand(String cardBrand) {
      this.cardBrand = cardBrand;
  }

  /**
   * @param cardBrand Card brand
   * @return bean instance
   **/
  public PayoutResponseCardAccount cardBrand(String cardBrand) {
      this.cardBrand = cardBrand;
      return this;
  }

  
  public void setCardType(CardTypeEnum cardType) {
      this.cardType = cardType;
  }

  /**
   * @param cardType Card type
   * @return bean instance
   **/
  public PayoutResponseCardAccount cardType(CardTypeEnum cardType) {
      this.cardType = cardType;
      return this;
  }

  
  public void setExpiration(String expiration) {
      this.expiration = expiration;
  }

  /**
   * @param expiration Customer’s card expiration date. Format: `mm/yyyy`
   * @return bean instance
   **/
  public PayoutResponseCardAccount expiration(String expiration) {
      this.expiration = expiration;
      return this;
  }

  
  public void setHolder(String holder) {
      this.holder = holder;
  }

  /**
   * @param holder Customer's cardholder name. Any valid cardholder name. Not present by default, ask CardPay manager to enable it if needed.
   * @return bean instance
   **/
  public PayoutResponseCardAccount holder(String holder) {
      this.holder = holder;
      return this;
  }

  
  public void setIssuer(String issuer) {
      this.issuer = issuer;
  }

  /**
   * @param issuer Card issuer
   * @return bean instance
   **/
  public PayoutResponseCardAccount issuer(String issuer) {
      this.issuer = issuer;
      return this;
  }

  
  public void setIssuingCountryCode(String issuingCountryCode) {
      this.issuingCountryCode = issuingCountryCode;
  }

  /**
   * @param issuingCountryCode Country code of issuing card country
   * @return bean instance
   **/
  public PayoutResponseCardAccount issuingCountryCode(String issuingCountryCode) {
      this.issuingCountryCode = issuingCountryCode;
      return this;
  }

  
  public void setMaskedPan(String maskedPan) {
      this.maskedPan = maskedPan;
  }

  /**
   * @param maskedPan Masked PAN (shows first 6 digits and 4 last digits of the PAN)
   * @return bean instance
   **/
  public PayoutResponseCardAccount maskedPan(String maskedPan) {
      this.maskedPan = maskedPan;
      return this;
  }

  
  public void setToken(String token) {
      this.token = token;
  }

  /**
   * @param token Generated card token value. Token can be returned only for successful transactions (not for declined transactions). 
   * @return bean instance
   **/
  public PayoutResponseCardAccount token(String token) {
      this.token = token;
      return this;
  }


  @Override
  public String toString() {
     StringBuilder sb = new StringBuilder();
     sb.append("PayoutResponseCardAccount( ");
     
     if (cardBrand != null) sb.append("cardBrand=").append(cardBrand.toString()).append("; ");
     if (cardType != null) sb.append("cardType=").append(cardType.toString()).append("; ");
     if (expiration != null) sb.append("expiration=").append(expiration.toString()).append("; ");
     if (holder != null) sb.append("holder=").append(holder.toString()).append("; ");
     if (issuer != null) sb.append("issuer=").append(issuer.toString()).append("; ");
     if (issuingCountryCode != null) sb.append("issuingCountryCode=").append(issuingCountryCode.toString()).append("; ");
     if (maskedPan != null) sb.append("maskedPan=").append(maskedPan.toString()).append("; ");
     if (token != null) sb.append("token=").append(token.toString()).append("; ");
     sb.append(")");
     return sb.toString();
  }

}





© 2015 - 2024 Weber Informatics LLC | Privacy Policy