class SaferpayRuby::PaymentGatewayApi
Public Class Methods
new(options = {})
click to toggle source
# File lib/saferpay_ruby.rb, line 11 def initialize(options = {}) options.delete(:endpoint) options.delete_if { |k, v| v.nil? } @options = SaferpayRuby.options.merge(options) @options.each_pair do |key, val| send "#{key}=", val end end
Public Instance Methods
initialize_payment_api(options = {})
click to toggle source
# File lib/saferpay_ruby.rb, line 21 def initialize_payment_api(options = {}) http = Net::HTTP.new(endpoint.host, endpoint.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Post.new(endpoint) request["content-type"] = 'application/json; charset=utf-8' request["accept"] = 'application/json' request["authorization"] = authentication request.body = { "RequestHeader": { "SpecVersion": "1.7", "CustomerId": customer_id, "RequestId": options[:request_id], "RetryIndicator": 0 }, "TerminalId": terminal_id, "Payment": { "Amount": { "Value": options[:amount], "CurrencyCode": options[:currency] }, "OrderId": options[:order_id], "Description": options[:description] }, "PaymentMethods": options[:payment_methods], "ReturnUrls": { "Success": success_url, "Fail": failure_url } }.to_json http.request(request) end
initialize_payment_assert_api(options = {})
click to toggle source
# File lib/saferpay_ruby.rb, line 56 def initialize_payment_assert_api(options = {}) http = Net::HTTP.new(assert_endpoint.host, assert_endpoint.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Post.new(assert_endpoint) request["content-type"] = 'application/json; charset=utf-8' request["accept"] = 'application/json' request["authorization"] = authentication request.body = { "RequestHeader": { "SpecVersion": "1.15", "CustomerId": customer_id, "RequestId": options[:request_id], "RetryIndicator": 0 }, "Token": options[:token] }.to_json http.request(request) end