class TokenizeCard

Public Class Methods

new(app, key, endpoint) click to toggle source
# File lib/redpay/tokenize_card.rb, line 8
def initialize(app, key, endpoint)
  @app      = app
  @key      = key
  @endpoint = endpoint
end

Public Instance Methods

Process(request) click to toggle source
# File lib/redpay/tokenize_card.rb, line 14
def Process(request)
  json_request = JSON.parse(request.to_json, object_class: OpenStruct)
  # TODO Validate request here

  # Create a session with the server
  session = Session.new(@app, @key, @endpoint + "token")

  # Contruct tokenize card packet
  req = 
  {
    "account" => json_request.account,
    "action" => "T",
    "expmmyyyy" => json_request.expmmyyyy,
    "cvv" => json_request.cvv,
    "cardHolderName" => json_request.accountHolder,
    "avsZip" => json_request.zipCode,
    "currency" => json_request.currency ||= "USD",
  }

  return session.Send(req)
end