class GenesisRuby::Api::Requests::Base::Financials::CreditCard

Base Class used for all transaction request containing Credit Card data

def init_field_validations

Request Field validations
def init_field_validations
  super
  required_fields.push *%i[transaction_id amount currency]
  field_values.merge! credential_on_file_field_validations
end

def payment_transaction_structure # rubocop:disable Metrics/MethodLength

rubocop:disable Metrics/MethodLength
Credit Card attributes
def payment_transaction_structure # rubocop:disable Metrics/MethodLength
  credit_card_attributes_structure.merge(
    tokenization_attributes_structure,
    {
      account_owner:                             account_owner_attributes_structure,
      credential_on_file:                        credential_on_file,
      credential_on_file_transaction_identifier: credential_on_file_transaction_identifier,
      credential_on_file_settlement_date:        credential_on_file_settlement_date,
      scheme_tokenized:                          scheme_tokenized,
      tokenization_params:                       tokenization_params_attributes_structure
    }
  )
end

def scheme_tokenized=(value)

Digital Secure Remote Payments (DSRP) for Mastercard.
Visa tokenization for Visa
def scheme_tokenized=(value)
  allowed_options attribute:      __method__,
                  allowed:        [true, false],
                  value:          value,
                  allow_empty:    true,
                  error_message: 'Accepts only boolean values'
end