Sha256: 5c5830ee652082e7a37535efbbfc325b3958c8f790298c77fd650ab2efb1bf43

Contents?: true

Size: 1.17 KB

Versions: 3

Compression:

Stored size: 1.17 KB

Contents

module Balanced
  # A BankAccount is both a source, and a destination of, funds. You may
  # create Debits and Credits to and from, this funding source.
  #
  # *NOTE:* The BankAccount resource does not support creating a Hold.
  #
  class BankAccount
    include Balanced::Resource

    def initialize attributes = {}
      Balanced::Utils.stringify_keys! attributes
      unless attributes.has_key? 'uri'
        attributes['uri'] = Balanced::Marketplace.my_marketplace.send(self.class.collection_name + '_uri')
      end
      super attributes
    end

    # Creates a Debit of funds from this BankAccount to your Marketplace.
    #
    # @param [String] appears_on_statement_as If nil then Balanced will use
    #    the +domain_name+ property from your Marketplace.
    # @return [Debit]
    def debit amount, appears_on_statement_as=nil, meta={}, description=nil
      self.account.debit(amount, appears_on_statement_as, meta, description, self.uri)
    end

    # Creates a Credit of funds from your Marketplace to this Account.
    #
    # @return [Credit]
    def credit amount, description=nil, meta={}
      self.account.credit(amount, description, meta, self.uri)
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
balanced-0.3.2 lib/balanced/resources/bank_account.rb
balanced-0.3.1 lib/balanced/resources/bank_account.rb
balanced-0.3.0 lib/balanced/resources/bank_account.rb