class NuaPay::Base
Public Instance Methods
get_response(url, additional_options={}, params={})
click to toggle source
# File lib/nua_pay/base.rb, line 3 def get_response(url, additional_options={}, params={}) resource = RestClient::Request.new({ method: additional_options[:request_type] || :get, url: url, user: ENV['NUAPAY_API_KEY'], payload: (params.to_json if params.compact.present?), headers: { content_type: 'application/json'} }) begin response = resource.execute response && JSON.parse( response )["data"] rescue => e puts JSON.parse( e.response ) raise e end end
Protected Instance Methods
base_url()
click to toggle source
# File lib/nua_pay/base.rb, line 40 def base_url NUAPAY_API['SCHEMES'] + ENV['NUAPAY_IDENTIFIER'] end
build_url( url="" )
click to toggle source
# File lib/nua_pay/base.rb, line 23 def build_url( url="" ) ENV['NUAPAY_BASE_URL'] + url end
cancellation( reason )
click to toggle source
# File lib/nua_pay/base.rb, line 44 def cancellation( reason ) {"operationReason": reason } end
mandate_base_url()
click to toggle source
# File lib/nua_pay/base.rb, line 27 def mandate_base_url base_url + NUAPAY_API['MANDATES'] end
mandate_url( id )
click to toggle source
# File lib/nua_pay/base.rb, line 31 def mandate_url( id ) build_url( mandate_base_url + id ) end
validate_mandate_params(data)
click to toggle source
# File lib/nua_pay/base.rb, line 35 def validate_mandate_params(data) data = data.with_indifferent_access.compact data.fetch(:debtorAccount).fetch(:iban) && data.fetch(:creditorAccount).fetch(:iban) && data.fetch(:debtor).fetch(:name) end