Sha256: 11e7f141a2ce58a1e20f9a1602999d7d27f25b25e30de5678661206143ca0d0b
Contents?: true
Size: 1011 Bytes
Versions: 4
Compression:
Stored size: 1011 Bytes
Contents
module BloomRemitClient class Client include Virtus.model attribute :token, String attribute :secret, String attribute :agent_id, String attribute :url, String include ActiveModel::Validations validates :token, :secret, :agent_id, :url, presence: true def billers request = BillersRequest.new(default_opts) raw_response = request.() BillersResponse.new(raw_response: raw_response) end def create_sender(opts) request = CreateSenderRequest.new(default_opts.merge(sender: opts)) raw_response = request.() CreateSenderResponse.new(raw_response: raw_response) end def create_payment(opts) params = default_opts. merge(sender_id: opts.delete(:sender_id)). merge(payment: opts) request = CreatePaymentRequest.new(params) CreatePaymentResponse.new(raw_response: request.()) end private def default_opts attributes.slice(:token, :secret, :url, :agent_id) end end end
Version data entries
4 entries across 4 versions & 1 rubygems