class Powercash21::Client
Attributes
secret_key[RW]
Public Class Methods
new(secret_key: nil)
click to toggle source
# File lib/powercash21/client.rb, line 6 def initialize(secret_key: nil) @secret_key = secret_key || Powercash21.secret_key end
Public Instance Methods
connection()
click to toggle source
# File lib/powercash21/client.rb, line 10 def connection @connection ||= begin Faraday.new(:url => 'https://sandbox.powerpay21.com') do |faraday| faraday.request :url_encoded faraday.adapter Faraday.default_adapter end end end
get(url, data = {})
click to toggle source
# File lib/powercash21/client.rb, line 23 def get(url, data = {}) connection.get(url, data) end
post(url, data = {})
click to toggle source
# File lib/powercash21/client.rb, line 19 def post(url, data = {}) connection.post(url, data) end
Private Instance Methods
format_data(data)
click to toggle source
# File lib/powercash21/client.rb, line 29 def format_data(data) sorted_hash = Hash[data.map{|k, v| [k.to_s.downcase, v]}.sort] signature = sorted_hash.map {|kay,val| val}.join("").to_s + @secret_key sorted_hash['signature'] = Digest::SHA1.hexdigest(signature) end