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

Model.TmsBinLookupPaymentAccountInformationFeatures Maven / Gradle / Ivy

There is a newer version: 0.0.8
Show newest version
/*
 * CyberSource Merged Spec
 * All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html
 *
 * OpenAPI spec version: 0.0.1
 * 
 *
 * 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 Model;

import java.util.Objects;
import java.util.Arrays;
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 io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.IOException;

/**
 * TmsBinLookupPaymentAccountInformationFeatures
 */

public class TmsBinLookupPaymentAccountInformationFeatures {
  @SerializedName("accountFundingSource")
  private String accountFundingSource = null;

  @SerializedName("accountFundingSourceSubType")
  private String accountFundingSourceSubType = null;

  @SerializedName("cardProduct")
  private String cardProduct = null;

  @SerializedName("messageType")
  private String messageType = null;

  @SerializedName("acceptanceLevel")
  private String acceptanceLevel = null;

  @SerializedName("cardPlatform")
  private String cardPlatform = null;

  @SerializedName("comboCard")
  private String comboCard = null;

  @SerializedName("corporatePurchase")
  private Boolean corporatePurchase = null;

  @SerializedName("healthCard")
  private Boolean healthCard = null;

  @SerializedName("sharedBIN")
  private Boolean sharedBIN = null;

  @SerializedName("posDomesticOnly")
  private Boolean posDomesticOnly = null;

  @SerializedName("gamblingAllowed")
  private Boolean gamblingAllowed = null;

  @SerializedName("commercialCardLevel2")
  private Boolean commercialCardLevel2 = null;

  @SerializedName("commercialCardLevel3")
  private Boolean commercialCardLevel3 = null;

  @SerializedName("exemptBIN")
  private Boolean exemptBIN = null;

  @SerializedName("accountLevelManagement")
  private Boolean accountLevelManagement = null;

  @SerializedName("onlineGamblingBlock")
  private Boolean onlineGamblingBlock = null;

  @SerializedName("autoSubstantiation")
  private Boolean autoSubstantiation = null;

  @SerializedName("flexCredential")
  private Boolean flexCredential = null;

  public TmsBinLookupPaymentAccountInformationFeatures accountFundingSource(String accountFundingSource) {
    this.accountFundingSource = accountFundingSource;
    return this;
  }

   /**
   * This field contains the account funding source. Possible values:   - `CREDIT`   - `DEBIT`   - `PREPAID`   - `DEFERRED DEBIT`   - `CHARGE` 
   * @return accountFundingSource
  **/
  @ApiModelProperty(value = "This field contains the account funding source. Possible values:   - `CREDIT`   - `DEBIT`   - `PREPAID`   - `DEFERRED DEBIT`   - `CHARGE` ")
  public String getAccountFundingSource() {
    return accountFundingSource;
  }

  public void setAccountFundingSource(String accountFundingSource) {
    this.accountFundingSource = accountFundingSource;
  }

  public TmsBinLookupPaymentAccountInformationFeatures accountFundingSourceSubType(String accountFundingSourceSubType) {
    this.accountFundingSourceSubType = accountFundingSourceSubType;
    return this;
  }

   /**
   * This field contains the type of prepaid card. Possible values:   - `Reloadable`   - `Non-reloadable` 
   * @return accountFundingSourceSubType
  **/
  @ApiModelProperty(value = "This field contains the type of prepaid card. Possible values:   - `Reloadable`   - `Non-reloadable` ")
  public String getAccountFundingSourceSubType() {
    return accountFundingSourceSubType;
  }

  public void setAccountFundingSourceSubType(String accountFundingSourceSubType) {
    this.accountFundingSourceSubType = accountFundingSourceSubType;
  }

  public TmsBinLookupPaymentAccountInformationFeatures cardProduct(String cardProduct) {
    this.cardProduct = cardProduct;
    return this;
  }

   /**
   * This field contains the type of issuer product. Example values:   - Visa Classic   - Visa Signature   - Visa Infinite 
   * @return cardProduct
  **/
  @ApiModelProperty(value = "This field contains the type of issuer product. Example values:   - Visa Classic   - Visa Signature   - Visa Infinite ")
  public String getCardProduct() {
    return cardProduct;
  }

  public void setCardProduct(String cardProduct) {
    this.cardProduct = cardProduct;
  }

  public TmsBinLookupPaymentAccountInformationFeatures messageType(String messageType) {
    this.messageType = messageType;
    return this;
  }

   /**
   * This field contains the type of BIN based authentication. Possible values:   - `S`: Single Message   - `D`: Dual Message 
   * @return messageType
  **/
  @ApiModelProperty(value = "This field contains the type of BIN based authentication. Possible values:   - `S`: Single Message   - `D`: Dual Message ")
  public String getMessageType() {
    return messageType;
  }

  public void setMessageType(String messageType) {
    this.messageType = messageType;
  }

  public TmsBinLookupPaymentAccountInformationFeatures acceptanceLevel(String acceptanceLevel) {
    this.acceptanceLevel = acceptanceLevel;
    return this;
  }

   /**
   * This field contains the acceptance level of the PAN. Possible values:   - `0` : Normal   - `1` : Monitor   - `2` : Refuse   - `3` : Not Allowed   - `4` : Private   - `5` : Test 
   * @return acceptanceLevel
  **/
  @ApiModelProperty(value = "This field contains the acceptance level of the PAN. Possible values:   - `0` : Normal   - `1` : Monitor   - `2` : Refuse   - `3` : Not Allowed   - `4` : Private   - `5` : Test ")
  public String getAcceptanceLevel() {
    return acceptanceLevel;
  }

  public void setAcceptanceLevel(String acceptanceLevel) {
    this.acceptanceLevel = acceptanceLevel;
  }

  public TmsBinLookupPaymentAccountInformationFeatures cardPlatform(String cardPlatform) {
    this.cardPlatform = cardPlatform;
    return this;
  }

   /**
   * This field contains the type of card platform. Possible values:   - `BUSINESS`   - `CONSUMER`   - `CORPORATE`   - `COMMERCIAL`   - `GOVERNMENT` 
   * @return cardPlatform
  **/
  @ApiModelProperty(value = "This field contains the type of card platform. Possible values:   - `BUSINESS`   - `CONSUMER`   - `CORPORATE`   - `COMMERCIAL`   - `GOVERNMENT` ")
  public String getCardPlatform() {
    return cardPlatform;
  }

  public void setCardPlatform(String cardPlatform) {
    this.cardPlatform = cardPlatform;
  }

  public TmsBinLookupPaymentAccountInformationFeatures comboCard(String comboCard) {
    this.comboCard = comboCard;
    return this;
  }

   /**
   * This field indicates the type of combo card. Possible values:   - 0 (Not a combo card)   - 1 (Credit and Prepaid Combo card)   - 2 (Credit and Debit Combo card) 
   * @return comboCard
  **/
  @ApiModelProperty(value = "This field indicates the type of combo card. Possible values:   - 0 (Not a combo card)   - 1 (Credit and Prepaid Combo card)   - 2 (Credit and Debit Combo card) ")
  public String getComboCard() {
    return comboCard;
  }

  public void setComboCard(String comboCard) {
    this.comboCard = comboCard;
  }

  public TmsBinLookupPaymentAccountInformationFeatures corporatePurchase(Boolean corporatePurchase) {
    this.corporatePurchase = corporatePurchase;
    return this;
  }

   /**
   * This field indicates if the instrument can be used for corporate purchasing. This field is only applicable for American Express cards. Possible values:   - `true`   - `false` 
   * @return corporatePurchase
  **/
  @ApiModelProperty(value = "This field indicates if the instrument can be used for corporate purchasing. This field is only applicable for American Express cards. Possible values:   - `true`   - `false` ")
  public Boolean CorporatePurchase() {
    return corporatePurchase;
  }

  public void setCorporatePurchase(Boolean corporatePurchase) {
    this.corporatePurchase = corporatePurchase;
  }

  public TmsBinLookupPaymentAccountInformationFeatures healthCard(Boolean healthCard) {
    this.healthCard = healthCard;
    return this;
  }

   /**
   * This field indicates if the BIN is for healthcare (HSA/FSA). Currently, this field is only supported for Visa BINs. Possible values:     - `true`     - `false` 
   * @return healthCard
  **/
  @ApiModelProperty(value = "This field indicates if the BIN is for healthcare (HSA/FSA). Currently, this field is only supported for Visa BINs. Possible values:     - `true`     - `false` ")
  public Boolean HealthCard() {
    return healthCard;
  }

  public void setHealthCard(Boolean healthCard) {
    this.healthCard = healthCard;
  }

  public TmsBinLookupPaymentAccountInformationFeatures sharedBIN(Boolean sharedBIN) {
    this.sharedBIN = sharedBIN;
    return this;
  }

   /**
   * This field indicates if the BIN is shared by multiple issuers Possible values:     - `true`     - `false` 
   * @return sharedBIN
  **/
  @ApiModelProperty(value = "This field indicates if the BIN is shared by multiple issuers Possible values:     - `true`     - `false` ")
  public Boolean SharedBIN() {
    return sharedBIN;
  }

  public void setSharedBIN(Boolean sharedBIN) {
    this.sharedBIN = sharedBIN;
  }

  public TmsBinLookupPaymentAccountInformationFeatures posDomesticOnly(Boolean posDomesticOnly) {
    this.posDomesticOnly = posDomesticOnly;
    return this;
  }

   /**
   * This field indicates if the BIN is valid only for POS domestic usage. Possible values:     - `true`     - `false` 
   * @return posDomesticOnly
  **/
  @ApiModelProperty(value = "This field indicates if the BIN is valid only for POS domestic usage. Possible values:     - `true`     - `false` ")
  public Boolean PosDomesticOnly() {
    return posDomesticOnly;
  }

  public void setPosDomesticOnly(Boolean posDomesticOnly) {
    this.posDomesticOnly = posDomesticOnly;
  }

  public TmsBinLookupPaymentAccountInformationFeatures gamblingAllowed(Boolean gamblingAllowed) {
    this.gamblingAllowed = gamblingAllowed;
    return this;
  }

   /**
   * This field indicates if gambling transactions are allowed on the BIN. Possible values:     - `true`     - `false` 
   * @return gamblingAllowed
  **/
  @ApiModelProperty(value = "This field indicates if gambling transactions are allowed on the BIN. Possible values:     - `true`     - `false` ")
  public Boolean GamblingAllowed() {
    return gamblingAllowed;
  }

  public void setGamblingAllowed(Boolean gamblingAllowed) {
    this.gamblingAllowed = gamblingAllowed;
  }

  public TmsBinLookupPaymentAccountInformationFeatures commercialCardLevel2(Boolean commercialCardLevel2) {
    this.commercialCardLevel2 = commercialCardLevel2;
    return this;
  }

   /**
   * This field indicates if a transaction on the instrument qualifies for level 2 interchange rates. Possible values:     - `true`     - `false` 
   * @return commercialCardLevel2
  **/
  @ApiModelProperty(value = "This field indicates if a transaction on the instrument qualifies for level 2 interchange rates. Possible values:     - `true`     - `false` ")
  public Boolean CommercialCardLevel2() {
    return commercialCardLevel2;
  }

  public void setCommercialCardLevel2(Boolean commercialCardLevel2) {
    this.commercialCardLevel2 = commercialCardLevel2;
  }

  public TmsBinLookupPaymentAccountInformationFeatures commercialCardLevel3(Boolean commercialCardLevel3) {
    this.commercialCardLevel3 = commercialCardLevel3;
    return this;
  }

   /**
   * This field indicates if a transaction on the instrument qualifies for level 3 interchange rates. Possible values:     - `true`     - `false` 
   * @return commercialCardLevel3
  **/
  @ApiModelProperty(value = "This field indicates if a transaction on the instrument qualifies for level 3 interchange rates. Possible values:     - `true`     - `false` ")
  public Boolean CommercialCardLevel3() {
    return commercialCardLevel3;
  }

  public void setCommercialCardLevel3(Boolean commercialCardLevel3) {
    this.commercialCardLevel3 = commercialCardLevel3;
  }

  public TmsBinLookupPaymentAccountInformationFeatures exemptBIN(Boolean exemptBIN) {
    this.exemptBIN = exemptBIN;
    return this;
  }

   /**
   * This field indicates if a transaction on the instrument qualifies for government exempt interchange fee. Possible values:     - `true`     - `false` 
   * @return exemptBIN
  **/
  @ApiModelProperty(value = "This field indicates if a transaction on the instrument qualifies for government exempt interchange fee. Possible values:     - `true`     - `false` ")
  public Boolean ExemptBIN() {
    return exemptBIN;
  }

  public void setExemptBIN(Boolean exemptBIN) {
    this.exemptBIN = exemptBIN;
  }

  public TmsBinLookupPaymentAccountInformationFeatures accountLevelManagement(Boolean accountLevelManagement) {
    this.accountLevelManagement = accountLevelManagement;
    return this;
  }

   /**
   * This field indicates if the BIN participates in Account Level Management (ALM). Possible values:     - `true`     - `false` 
   * @return accountLevelManagement
  **/
  @ApiModelProperty(value = "This field indicates if the BIN participates in Account Level Management (ALM). Possible values:     - `true`     - `false` ")
  public Boolean AccountLevelManagement() {
    return accountLevelManagement;
  }

  public void setAccountLevelManagement(Boolean accountLevelManagement) {
    this.accountLevelManagement = accountLevelManagement;
  }

  public TmsBinLookupPaymentAccountInformationFeatures onlineGamblingBlock(Boolean onlineGamblingBlock) {
    this.onlineGamblingBlock = onlineGamblingBlock;
    return this;
  }

   /**
   * This field indicates if online gambling is blocked on the BIN. Possible values:     - `true`     - `false` 
   * @return onlineGamblingBlock
  **/
  @ApiModelProperty(value = "This field indicates if online gambling is blocked on the BIN. Possible values:     - `true`     - `false` ")
  public Boolean OnlineGamblingBlock() {
    return onlineGamblingBlock;
  }

  public void setOnlineGamblingBlock(Boolean onlineGamblingBlock) {
    this.onlineGamblingBlock = onlineGamblingBlock;
  }

  public TmsBinLookupPaymentAccountInformationFeatures autoSubstantiation(Boolean autoSubstantiation) {
    this.autoSubstantiation = autoSubstantiation;
    return this;
  }

   /**
   * This field indicates if auto-substantiation is enabled on the BIN. Possible values:     - `true`     - `false` 
   * @return autoSubstantiation
  **/
  @ApiModelProperty(value = "This field indicates if auto-substantiation is enabled on the BIN. Possible values:     - `true`     - `false` ")
  public Boolean AutoSubstantiation() {
    return autoSubstantiation;
  }

  public void setAutoSubstantiation(Boolean autoSubstantiation) {
    this.autoSubstantiation = autoSubstantiation;
  }

  public TmsBinLookupPaymentAccountInformationFeatures flexCredential(Boolean flexCredential) {
    this.flexCredential = flexCredential;
    return this;
  }

   /**
   * This field indicates if the instrument is a flex credential. Possible values:     - `true`     - `false` 
   * @return flexCredential
  **/
  @ApiModelProperty(value = "This field indicates if the instrument is a flex credential. Possible values:     - `true`     - `false` ")
  public Boolean FlexCredential() {
    return flexCredential;
  }

  public void setFlexCredential(Boolean flexCredential) {
    this.flexCredential = flexCredential;
  }


  @Override
  public boolean equals(java.lang.Object o) {
    if (this == o) {
      return true;
    }
    if (o == null || getClass() != o.getClass()) {
      return false;
    }
    TmsBinLookupPaymentAccountInformationFeatures tmsBinLookupPaymentAccountInformationFeatures = (TmsBinLookupPaymentAccountInformationFeatures) o;
    return Objects.equals(this.accountFundingSource, tmsBinLookupPaymentAccountInformationFeatures.accountFundingSource) &&
        Objects.equals(this.accountFundingSourceSubType, tmsBinLookupPaymentAccountInformationFeatures.accountFundingSourceSubType) &&
        Objects.equals(this.cardProduct, tmsBinLookupPaymentAccountInformationFeatures.cardProduct) &&
        Objects.equals(this.messageType, tmsBinLookupPaymentAccountInformationFeatures.messageType) &&
        Objects.equals(this.acceptanceLevel, tmsBinLookupPaymentAccountInformationFeatures.acceptanceLevel) &&
        Objects.equals(this.cardPlatform, tmsBinLookupPaymentAccountInformationFeatures.cardPlatform) &&
        Objects.equals(this.comboCard, tmsBinLookupPaymentAccountInformationFeatures.comboCard) &&
        Objects.equals(this.corporatePurchase, tmsBinLookupPaymentAccountInformationFeatures.corporatePurchase) &&
        Objects.equals(this.healthCard, tmsBinLookupPaymentAccountInformationFeatures.healthCard) &&
        Objects.equals(this.sharedBIN, tmsBinLookupPaymentAccountInformationFeatures.sharedBIN) &&
        Objects.equals(this.posDomesticOnly, tmsBinLookupPaymentAccountInformationFeatures.posDomesticOnly) &&
        Objects.equals(this.gamblingAllowed, tmsBinLookupPaymentAccountInformationFeatures.gamblingAllowed) &&
        Objects.equals(this.commercialCardLevel2, tmsBinLookupPaymentAccountInformationFeatures.commercialCardLevel2) &&
        Objects.equals(this.commercialCardLevel3, tmsBinLookupPaymentAccountInformationFeatures.commercialCardLevel3) &&
        Objects.equals(this.exemptBIN, tmsBinLookupPaymentAccountInformationFeatures.exemptBIN) &&
        Objects.equals(this.accountLevelManagement, tmsBinLookupPaymentAccountInformationFeatures.accountLevelManagement) &&
        Objects.equals(this.onlineGamblingBlock, tmsBinLookupPaymentAccountInformationFeatures.onlineGamblingBlock) &&
        Objects.equals(this.autoSubstantiation, tmsBinLookupPaymentAccountInformationFeatures.autoSubstantiation) &&
        Objects.equals(this.flexCredential, tmsBinLookupPaymentAccountInformationFeatures.flexCredential);
  }

  @Override
  public int hashCode() {
    return Objects.hash(accountFundingSource, accountFundingSourceSubType, cardProduct, messageType, acceptanceLevel, cardPlatform, comboCard, corporatePurchase, healthCard, sharedBIN, posDomesticOnly, gamblingAllowed, commercialCardLevel2, commercialCardLevel3, exemptBIN, accountLevelManagement, onlineGamblingBlock, autoSubstantiation, flexCredential);
  }


  @Override
  public String toString() {
    StringBuilder sb = new StringBuilder();
    sb.append("class TmsBinLookupPaymentAccountInformationFeatures {\n");
    
    if (accountFundingSource != null) sb.append("    accountFundingSource: ").append(toIndentedString(accountFundingSource)).append("\n");
    if (accountFundingSourceSubType != null) sb.append("    accountFundingSourceSubType: ").append(toIndentedString(accountFundingSourceSubType)).append("\n");
    if (cardProduct != null) sb.append("    cardProduct: ").append(toIndentedString(cardProduct)).append("\n");
    if (messageType != null) sb.append("    messageType: ").append(toIndentedString(messageType)).append("\n");
    if (acceptanceLevel != null) sb.append("    acceptanceLevel: ").append(toIndentedString(acceptanceLevel)).append("\n");
    if (cardPlatform != null) sb.append("    cardPlatform: ").append(toIndentedString(cardPlatform)).append("\n");
    if (comboCard != null) sb.append("    comboCard: ").append(toIndentedString(comboCard)).append("\n");
    if (corporatePurchase != null) sb.append("    corporatePurchase: ").append(toIndentedString(corporatePurchase)).append("\n");
    if (healthCard != null) sb.append("    healthCard: ").append(toIndentedString(healthCard)).append("\n");
    if (sharedBIN != null) sb.append("    sharedBIN: ").append(toIndentedString(sharedBIN)).append("\n");
    if (posDomesticOnly != null) sb.append("    posDomesticOnly: ").append(toIndentedString(posDomesticOnly)).append("\n");
    if (gamblingAllowed != null) sb.append("    gamblingAllowed: ").append(toIndentedString(gamblingAllowed)).append("\n");
    if (commercialCardLevel2 != null) sb.append("    commercialCardLevel2: ").append(toIndentedString(commercialCardLevel2)).append("\n");
    if (commercialCardLevel3 != null) sb.append("    commercialCardLevel3: ").append(toIndentedString(commercialCardLevel3)).append("\n");
    if (exemptBIN != null) sb.append("    exemptBIN: ").append(toIndentedString(exemptBIN)).append("\n");
    if (accountLevelManagement != null) sb.append("    accountLevelManagement: ").append(toIndentedString(accountLevelManagement)).append("\n");
    if (onlineGamblingBlock != null) sb.append("    onlineGamblingBlock: ").append(toIndentedString(onlineGamblingBlock)).append("\n");
    if (autoSubstantiation != null) sb.append("    autoSubstantiation: ").append(toIndentedString(autoSubstantiation)).append("\n");
    if (flexCredential != null) sb.append("    flexCredential: ").append(toIndentedString(flexCredential)).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(java.lang.Object o) {
    if (o == null) {
      // return "null";
    }
    return o.toString().replace("\n", "\n    ");
  }
  
}





© 2015 - 2025 Weber Informatics LLC | Privacy Policy