class MollieApi::Client

Attributes

api_key[RW]
api_version[RW]

Public Class Methods

new(api_key, api_version = 'v1') click to toggle source
# File lib/mollie_api/client.rb, line 11
def initialize(api_key, api_version = 'v1')
  self.api_key = api_key
  self.api_version = api_version
end

Public Instance Methods

auth_token() click to toggle source
# File lib/mollie_api/client.rb, line 16
def auth_token
  "Bearer " + self.api_key
end
issuers() click to toggle source
# File lib/mollie_api/client.rb, line 36
def issuers
  response = self.class.get("/#{self.api_version}/issuers",
    :headers => {
      'Authorization' => auth_token
    }
  )
  response = JSON.parse(response.body)
  response["data"].map {|issuer| {id: issuer["id"], name: issuer["name"]} }
end
payment_methods(method = nil) click to toggle source
# File lib/mollie_api/client.rb, line 65
def payment_methods(method = nil)
  if method
    url = "/#{self.api_version}/methods/#{method}"
  else
    url = "/#{self.api_version}/methods"
  end

  response = self.class.get(url,
    :headers => {
      'Authorization' => auth_token
    }
  )
  JSON.parse(response.body)
end
payment_status(payment_id) click to toggle source
# File lib/mollie_api/client.rb, line 46
def payment_status(payment_id)
  response = self.class.get("/#{self.api_version}/payments/#{payment_id}",
    :headers => {
      'Authorization' => auth_token
    }
  )
  JSON.parse(response.body)
end
prepare_payment(amount, description, redirect_url, metadata = {}, method=nil, method_params = {}) click to toggle source
# File lib/mollie_api/client.rb, line 20
def prepare_payment(amount, description, redirect_url, metadata = {}, method=nil, method_params = {})
  response = self.class.post("/#{self.api_version}/payments",
    :body => {
      :amount => amount,
      :description => description,
      :redirectUrl => redirect_url,
      :metadata => metadata,
      :method => method
    }.merge(method_params),
    :headers => {
      'Authorization' => auth_token
    }
  )
  JSON.parse(response.body)
end
refund_payment(payment_id, params = {}) click to toggle source
# File lib/mollie_api/client.rb, line 55
def refund_payment(payment_id, params = {})
  response = self.class.post("/#{self.api_version}/payments/#{payment_id}/refunds",
    :query => params,
    :headers => {
      'Authorization' => auth_token
    }
  )
  JSON.parse(response.body)
end