class Braintree::CreditCardVerificationGateway

Public Class Methods

_create_signature() click to toggle source
# File lib/braintree/credit_card_verification_gateway.rb, line 47
def self._create_signature
  [
     {:options => [:amount, :merchant_account_id, :account_type]},
     {:credit_card => [
       :cardholder_name, :cvv, :expiration_date, :expiration_month, :expiration_year,
       :number, {:billing_address => AddressGateway._shared_signature}
     ]}
  ]
end
new(gateway) click to toggle source
# File lib/braintree/credit_card_verification_gateway.rb, line 3
def initialize(gateway)
  @gateway = gateway
  @config = gateway.config
  @config.assert_has_access_token_or_keys
end

Public Instance Methods

_fetch_verifications(search, ids) click to toggle source
# File lib/braintree/credit_card_verification_gateway.rb, line 40
def _fetch_verifications(search, ids)
  search.ids.in ids
  response = @config.http.post("#{@config.base_merchant_path}/verifications/advanced_search", {:search => search.to_hash})
  attributes = response[:credit_card_verifications]
  Util.extract_attribute_as_array(attributes, :verification).map { |attrs| CreditCardVerification._new(attrs) }
end
_handle_verification_create_response(response) click to toggle source
# File lib/braintree/credit_card_verification_gateway.rb, line 30
def _handle_verification_create_response(response)
  if response[:verification]
    SuccessfulResult.new(:verification => CreditCardVerification._new(response[:verification]))
  elsif response[:api_error_response]
    ErrorResult.new(@gateway, response[:api_error_response])
  else
    raise UnexpectedError, "expected :verification or :api_error_response"
  end
end
create(params) click to toggle source
# File lib/braintree/credit_card_verification_gateway.rb, line 25
def create(params)
  response = @config.http.post("#{@config.base_merchant_path}/verifications", :verification => params)
  _handle_verification_create_response(response)
end
find(id) click to toggle source
# File lib/braintree/credit_card_verification_gateway.rb, line 9
def find(id)
  raise ArgumentError if id.nil? || id.to_s.strip == ""
  response = @config.http.get("#{@config.base_merchant_path}/verifications/#{id}")
  CreditCardVerification._new(response[:verification])
rescue NotFoundError
  raise NotFoundError, "verification with id #{id.inspect} not found"
end