Sha256: f06a608cd7825de9512b29f6f15c4a7eb011c31e05f3b35de7a7c808e53a74eb
Contents?: true
Size: 1.13 KB
Versions: 1
Compression:
Stored size: 1.13 KB
Contents
module PinPayment class Customer < Base attr_reader :token, :email, :created_at, :card_token def self.create options response = post( URI.parse(PinPayment.api_url).tap{|uri| uri.path = '/1/customers' }, options.select{|k| %w(email card_token).include?(k.to_s) } ) new.tap do |customer| customer.instance_variable_set('@card_token', response['card']['token']) if response['card'] %w(token email created_at).each do |key| customer.instance_variable_set("@#{key}", response[key]) end end end def self.update options # PUT /1/customers/cus_XZg1ULpWaROQCOT5PdwLkQ response = put( URI.parse(PinPayment.api_url).tap{|uri| uri.path = "/1/customers/#{options[:token] || options['token']}" }, options.select{|k| %w(email card_token).include?(k.to_s) } ) new.tap do |customer| customer.instance_variable_set('@card_token', response['card']['token']) if response['card'] %w(token email created_at).each do |key| customer.instance_variable_set("@#{key}", response[key]) end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
pin_payment-0.0.5 | lib/pin_payment/customer.rb |