class CyberSource::PtsV2PaymentsPost201ResponsePaymentInformationAccountFeatures

Attributes

account_status[RW]

Possible values: - `N`: Nonregulated - `R`: Regulated Returned by PIN debit credit or PIN debit purchase. Note This field is returned only for CyberSource through VisaNet.

account_type[RW]

Type of account. This value is returned only if you requested a balance inquiry. Possible values: - `00`: Not applicable or not specified - `10`: Savings account - `20`: Checking account - `30`: Credit card account - `40`: Universal account #### PIN debit Type of account. This value is returned only if you requested a balance inquiry. Possible values: - `00`: Not applicable or not specified - `10`: Savings account - `20`: Checking account - `40`: Universal account - `96`: Cash benefits account - `98`: Food stamp account Returned by PIN debit purchase.

affluence_indicator[RW]

**Chase Paymentech Solutions** Indicates whether a customer has high credit limits. This information enables you to market high cost items to these customers and to understand the kinds of cards that high income customers are using. This field is supported for Visa, Mastercard, Discover, and Diners Club. Possible values: - `Y`: Yes - `N`: No - `X`: Not applicable / Unknown #### Litle Flag that indicates that a Visa cardholder or Mastercard cardholder is in one of the affluent categories. Possible values: - `AFFLUENT`: High income customer with high spending pattern (>100k USD annual income and >40k USD annual card usage). - `MASS AFFLUENT`: High income customer (>100k USD annual income). Maximum length is 13. #### Chase Paymentech Solutions Maximum length is 1.

balance_amount[RW]

Remaining balance on the account. Returned by authorization service. #### PIN debit Remaining balance on the prepaid card. Returned by PIN debit purchase.

balance_amount_type[RW]

Type of amount. This value is returned only if you requested a balance inquiry. The issuer determines the value that is returned. Possible values for deposit accounts: - `01`: Current ledger (posted) balance. - `02`: Current available balance, which is typically the ledger balance less outstanding authorizations. Some depository institutions also include pending deposits and the credit or overdraft line associated with the account. Possible values for credit card accounts: - `01`: Credit amount remaining for customer (open to buy). - `02`: Credit limit.

balance_sign[RW]

Sign for the remaining balance on the account. Returned only when the processor returns this value. Possible values: Possible values: - `Positive` - `Negative` #### PIN debit Sign for the remaining balance on the prepaid card. Returned only when the processor returns this value. Returned by PIN debit purchase.

balances[RW]

This is an array of multiple balances information an issuer can return for a given card.

category[RW]

GPX Mastercard product ID associated with the primary account number (PAN). Returned by authorization service. #### CyberSource through VisaNet Visa or Mastercard product ID that is associated with the primary account number (PAN). For descriptions of the Visa product IDs, see the Product ID table on the [Visa Request & Response Codes web page.](developer.visa.com/guides/request_response_codes) Data Length: String (3) #### GPN Visa or Mastercard product ID that is associated with the primary account number (PAN). For descriptions of the Visa product IDs, see the Product ID table on the [Visa Request & Response Codes web page.](developer.visa.com/guides/request_response_codes) Data Length: String (3) #### Worldpay VAP Important Before using this field on Worldpay VAP, you must contact CyberSource Customer Support to have your account configured for this feature. Type of card used in the transaction. The only possible value is: - `PREPAID`: Prepaid Card Data Length: String (7) #### RBS WorldPay Atlanta Type of card used in the transaction. Possible values: - `B`: Business Card - `O`: Noncommercial Card - `R`: Corporate Card - `S`: Purchase Card - `Blank`: Purchase card not supported Data Length: String (1)

commercial[RW]

Indicates whether the card is a commercial card, which enables you to include Level II data in your transaction requests. This field is supported for Visa and Mastercard on **Chase Paymentech Solutions**. Possible values: - `Y`: Yes - `N`: No - `X`: Not applicable / Unknown

currency[RW]

Currency of the remaining balance on the account. For the possible values, see the [ISO Standard Currency Codes.](apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf) Returned by authorization service. #### PIN debit Currency of the remaining balance on the prepaid card. Returned by PIN debit purchase.

group[RW]

Type of commercial card. This field is supported only for CyberSource through VisaNet. Possible values: - `B`: Business card - `R`: Corporate card - `S`: Purchasing card - `0`: Noncommercial card Returned by authorization service.

health_care[RW]

Indicates whether the card is a healthcare card. This field is supported for Visa and Mastercard on **Chase Paymentech Solutions**. Possible values: - `Y`: Yes - `N`: No - `X`: Not applicable / Unknown

level3_eligible[RW]

Indicates whether the card is eligible for Level III interchange fees, which enables you to include Level III data in your transaction requests. This field is supported for Visa and Mastercard on **Chase Paymentech Solutions**. Possible values: - `Y`: Yes - `N`: No - `X`: Not applicable / Unknown

payroll[RW]

Indicates whether the card is a payroll card. This field is supported for Visa, Discover, Diners Club, and JCB on **Chase Paymentech Solutions**. Possible values: - `Y`: Yes - `N`: No - `X`: Not applicable / Unknown

pinless_debit[RW]

Indicates whether the card is a PINless debit card. This field is supported for Visa and Mastercard on **Chase Paymentech Solutions**. Possible values: - `Y`: Yes - `N`: No - `X`: Not applicable / Unknown

prepaid[RW]

Indicates whether the card is a prepaid card. This information enables you to determine when a gift card or prepaid card is presented for use when establishing a new recurring, installment, or deferred billing relationship. This field is supported for Visa, Mastercard, Discover, Diners Club, and JCB on Chase Paymentech Solutions. Possible values: - `Y`: Yes - `N`: No - `X`: Not applicable / Unknown

regulated[RW]

Indicates whether the card is regulated according to the Durbin Amendment. If the card is regulated, the card issuer is subject to price caps and interchange rules. This field is supported for Visa, Mastercard, Discover, Diners Club, and JCB on Chase Paymentech Solutions. Possible values: - `Y`: Yes - `N`: No - `X`: Not applicable / Unknown

signature_debit[RW]

Indicates whether the card is a signature debit card. This information enables you to alter the way an order is processed. For example, you might not want to reauthorize a transaction for a signature debit card, or you might want to perform reversals promptly for a signature debit card. This field is supported for Visa, Mastercard, and Maestro (International) on Chase Paymentech Solutions. Possible values: - `Y`: Yes - `N`: No - `X`: Not applicable / Unknown

Public Class Methods

attribute_map() click to toggle source

Attribute mapping from ruby-style variable name to JSON key.

# File lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_account_features.rb, line 72
def self.attribute_map
  {
    :'account_type' => :'accountType',
    :'account_status' => :'accountStatus',
    :'balances' => :'balances',
    :'balance_amount' => :'balanceAmount',
    :'balance_amount_type' => :'balanceAmountType',
    :'currency' => :'currency',
    :'balance_sign' => :'balanceSign',
    :'affluence_indicator' => :'affluenceIndicator',
    :'category' => :'category',
    :'commercial' => :'commercial',
    :'group' => :'group',
    :'health_care' => :'healthCare',
    :'payroll' => :'payroll',
    :'level3_eligible' => :'level3Eligible',
    :'pinless_debit' => :'pinlessDebit',
    :'signature_debit' => :'signatureDebit',
    :'prepaid' => :'prepaid',
    :'regulated' => :'regulated'
  }
end
new(attributes = {}) click to toggle source

Initializes the object @param [Hash] attributes Model attributes in the form of hash

# File lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_account_features.rb, line 121
def initialize(attributes = {})
  return unless attributes.is_a?(Hash)

  # convert string to symbol for hash key
  attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }

  if attributes.has_key?(:'accountType')
    self.account_type = attributes[:'accountType']
  end

  if attributes.has_key?(:'accountStatus')
    self.account_status = attributes[:'accountStatus']
  end

  if attributes.has_key?(:'balances')
    if (value = attributes[:'balances']).is_a?(Array)
      self.balances = value
    end
  end

  if attributes.has_key?(:'balanceAmount')
    self.balance_amount = attributes[:'balanceAmount']
  end

  if attributes.has_key?(:'balanceAmountType')
    self.balance_amount_type = attributes[:'balanceAmountType']
  end

  if attributes.has_key?(:'currency')
    self.currency = attributes[:'currency']
  end

  if attributes.has_key?(:'balanceSign')
    self.balance_sign = attributes[:'balanceSign']
  end

  if attributes.has_key?(:'affluenceIndicator')
    self.affluence_indicator = attributes[:'affluenceIndicator']
  end

  if attributes.has_key?(:'category')
    self.category = attributes[:'category']
  end

  if attributes.has_key?(:'commercial')
    self.commercial = attributes[:'commercial']
  end

  if attributes.has_key?(:'group')
    self.group = attributes[:'group']
  end

  if attributes.has_key?(:'healthCare')
    self.health_care = attributes[:'healthCare']
  end

  if attributes.has_key?(:'payroll')
    self.payroll = attributes[:'payroll']
  end

  if attributes.has_key?(:'level3Eligible')
    self.level3_eligible = attributes[:'level3Eligible']
  end

  if attributes.has_key?(:'pinlessDebit')
    self.pinless_debit = attributes[:'pinlessDebit']
  end

  if attributes.has_key?(:'signatureDebit')
    self.signature_debit = attributes[:'signatureDebit']
  end

  if attributes.has_key?(:'prepaid')
    self.prepaid = attributes[:'prepaid']
  end

  if attributes.has_key?(:'regulated')
    self.regulated = attributes[:'regulated']
  end
end
swagger_types() click to toggle source

Attribute type mapping.

# File lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_account_features.rb, line 96
def self.swagger_types
  {
    :'account_type' => :'String',
    :'account_status' => :'String',
    :'balances' => :'Array<PtsV2PaymentsPost201ResponsePaymentInformationAccountFeaturesBalances>',
    :'balance_amount' => :'String',
    :'balance_amount_type' => :'String',
    :'currency' => :'String',
    :'balance_sign' => :'String',
    :'affluence_indicator' => :'String',
    :'category' => :'String',
    :'commercial' => :'String',
    :'group' => :'String',
    :'health_care' => :'String',
    :'payroll' => :'String',
    :'level3_eligible' => :'String',
    :'pinless_debit' => :'String',
    :'signature_debit' => :'String',
    :'prepaid' => :'String',
    :'regulated' => :'String'
  }
end

Public Instance Methods

==(o) click to toggle source

Checks equality by comparing each attribute. @param [Object] Object to be compared

# File lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_account_features.rb, line 319
def ==(o)
  return true if self.equal?(o)
  self.class == o.class &&
      account_type == o.account_type &&
      account_status == o.account_status &&
      balances == o.balances &&
      balance_amount == o.balance_amount &&
      balance_amount_type == o.balance_amount_type &&
      currency == o.currency &&
      balance_sign == o.balance_sign &&
      affluence_indicator == o.affluence_indicator &&
      category == o.category &&
      commercial == o.commercial &&
      group == o.group &&
      health_care == o.health_care &&
      payroll == o.payroll &&
      level3_eligible == o.level3_eligible &&
      pinless_debit == o.pinless_debit &&
      signature_debit == o.signature_debit &&
      prepaid == o.prepaid &&
      regulated == o.regulated
end
_deserialize(type, value) click to toggle source

Deserializes the data based on type @param string type Data type @param string value Value to be deserialized @return [Object] Deserialized data

# File lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_account_features.rb, line 378
def _deserialize(type, value)
  case type.to_sym
  when :DateTime
    DateTime.parse(value)
  when :Date
    Date.parse(value)
  when :String
    value.to_s
  when :Integer
    value.to_i
  when :Float
    value.to_f
  when :BOOLEAN
    if value.to_s =~ /\A(true|t|yes|y|1)\z/i
      true
    else
      false
    end
  when :Object
    # generic object (usually a Hash), return directly
    value
  when /\AArray<(?<inner_type>.+)>\z/
    inner_type = Regexp.last_match[:inner_type]
    value.map { |v| _deserialize(inner_type, v) }
  when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
    k_type = Regexp.last_match[:k_type]
    v_type = Regexp.last_match[:v_type]
    {}.tap do |hash|
      value.each do |k, v|
        hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
      end
    end
  else # model
    temp_model = CyberSource.const_get(type).new
    temp_model.build_from_hash(value)
  end
end
_to_hash(value) click to toggle source

Outputs non-array value in the form of hash For object, use to_hash. Otherwise, just return the value @param [Object] value Any valid value @return [Hash] Returns the value in the form of hash

# File lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_account_features.rb, line 444
def _to_hash(value)
  if value.is_a?(Array)
    value.compact.map { |v| _to_hash(v) }
  elsif value.is_a?(Hash)
    {}.tap do |hash|
      value.each { |k, v| hash[k] = _to_hash(v) }
    end
  elsif value.respond_to? :to_hash
    value.to_hash
  else
    value
  end
end
account_status=(account_status) click to toggle source

Custom attribute writer method with validation @param [Object] account_status Value to be assigned

# File lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_account_features.rb, line 223
def account_status=(account_status)
  @account_status = account_status
end
account_type=(account_type) click to toggle source

Custom attribute writer method with validation @param [Object] account_type Value to be assigned

# File lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_account_features.rb, line 217
def account_type=(account_type)
  @account_type = account_type
end
affluence_indicator=(affluence_indicator) click to toggle source

Custom attribute writer method with validation @param [Object] affluence_indicator Value to be assigned

# File lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_account_features.rb, line 253
def affluence_indicator=(affluence_indicator)
  @affluence_indicator = affluence_indicator
end
balance_amount=(balance_amount) click to toggle source

Custom attribute writer method with validation @param [Object] balance_amount Value to be assigned

# File lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_account_features.rb, line 229
def balance_amount=(balance_amount)
  @balance_amount = balance_amount
end
balance_amount_type=(balance_amount_type) click to toggle source

Custom attribute writer method with validation @param [Object] balance_amount_type Value to be assigned

# File lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_account_features.rb, line 235
def balance_amount_type=(balance_amount_type)
  @balance_amount_type = balance_amount_type
end
balance_sign=(balance_sign) click to toggle source

Custom attribute writer method with validation @param [Object] balance_sign Value to be assigned

# File lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_account_features.rb, line 247
def balance_sign=(balance_sign)
  @balance_sign = balance_sign
end
build_from_hash(attributes) click to toggle source

Builds the object from hash @param [Hash] attributes Model attributes in the form of hash @return [Object] Returns the model itself

# File lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_account_features.rb, line 357
def build_from_hash(attributes)
  return nil unless attributes.is_a?(Hash)
  self.class.swagger_types.each_pair do |key, type|
    if type =~ /\AArray<(.*)>/i
      # check to ensure the input is an array given that the the attribute
      # is documented as an array but the input is not
      if attributes[self.class.attribute_map[key]].is_a?(Array)
        self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
      end
    elsif !attributes[self.class.attribute_map[key]].nil?
      self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
    end # or else data not found in attributes(hash), not an issue as the data can be optional
  end

  self
end
category=(category) click to toggle source

Custom attribute writer method with validation @param [Object] category Value to be assigned

# File lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_account_features.rb, line 259
def category=(category)
  @category = category
end
commercial=(commercial) click to toggle source

Custom attribute writer method with validation @param [Object] commercial Value to be assigned

# File lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_account_features.rb, line 265
def commercial=(commercial)
  @commercial = commercial
end
currency=(currency) click to toggle source

Custom attribute writer method with validation @param [Object] currency Value to be assigned

# File lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_account_features.rb, line 241
def currency=(currency)
  @currency = currency
end
eql?(o) click to toggle source

@see the `==` method @param [Object] Object to be compared

# File lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_account_features.rb, line 344
def eql?(o)
  self == o
end
group=(group) click to toggle source

Custom attribute writer method with validation @param [Object] group Value to be assigned

# File lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_account_features.rb, line 271
def group=(group)
  @group = group
end
hash() click to toggle source

Calculates hash code according to all attributes. @return [Fixnum] Hash code

# File lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_account_features.rb, line 350
def hash
  [account_type, account_status, balances, balance_amount, balance_amount_type, currency, balance_sign, affluence_indicator, category, commercial, group, health_care, payroll, level3_eligible, pinless_debit, signature_debit, prepaid, regulated].hash
end
health_care=(health_care) click to toggle source

Custom attribute writer method with validation @param [Object] health_care Value to be assigned

# File lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_account_features.rb, line 277
def health_care=(health_care)
  @health_care = health_care
end
level3_eligible=(level3_eligible) click to toggle source

Custom attribute writer method with validation @param [Object] level3_eligible Value to be assigned

# File lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_account_features.rb, line 289
def level3_eligible=(level3_eligible)
  @level3_eligible = level3_eligible
end
list_invalid_properties() click to toggle source

Show invalid properties with the reasons. Usually used together with valid? @return Array for valid properties with the reasons

# File lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_account_features.rb, line 204
def list_invalid_properties
  invalid_properties = Array.new
  invalid_properties
end
payroll=(payroll) click to toggle source

Custom attribute writer method with validation @param [Object] payroll Value to be assigned

# File lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_account_features.rb, line 283
def payroll=(payroll)
  @payroll = payroll
end
pinless_debit=(pinless_debit) click to toggle source

Custom attribute writer method with validation @param [Object] pinless_debit Value to be assigned

# File lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_account_features.rb, line 295
def pinless_debit=(pinless_debit)
  @pinless_debit = pinless_debit
end
prepaid=(prepaid) click to toggle source

Custom attribute writer method with validation @param [Object] prepaid Value to be assigned

# File lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_account_features.rb, line 307
def prepaid=(prepaid)
  @prepaid = prepaid
end
regulated=(regulated) click to toggle source

Custom attribute writer method with validation @param [Object] regulated Value to be assigned

# File lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_account_features.rb, line 313
def regulated=(regulated)
  @regulated = regulated
end
signature_debit=(signature_debit) click to toggle source

Custom attribute writer method with validation @param [Object] signature_debit Value to be assigned

# File lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_account_features.rb, line 301
def signature_debit=(signature_debit)
  @signature_debit = signature_debit
end
to_body() click to toggle source

to_body is an alias to to_hash (backward compatibility) @return [Hash] Returns the object in the form of hash

# File lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_account_features.rb, line 424
def to_body
  to_hash
end
to_hash() click to toggle source

Returns the object in the form of hash @return [Hash] Returns the object in the form of hash

# File lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_account_features.rb, line 430
def to_hash
  hash = {}
  self.class.attribute_map.each_pair do |attr, param|
    value = self.send(attr)
    next if value.nil?
    hash[param] = _to_hash(value)
  end
  hash
end
to_s() click to toggle source

Returns the string representation of the object @return [String] String presentation of the object

# File lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_account_features.rb, line 418
def to_s
  to_hash.to_s
end
valid?() click to toggle source

Check to see if the all the properties in the model are valid @return true if the model is valid

# File lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_account_features.rb, line 211
def valid?
  true
end