class Promisepay::ChargeResource

Resource for the Charges API

Public Instance Methods

create(attributes) click to toggle source

Create a new charge for a marketplace

@see reference.promisepay.com/#create-charge

@param attributes [Hash] Charge's attributes.

@return [Promisepay::Charge]

# File lib/promisepay/resources/charge_resource.rb, line 42
def create(attributes)
  response = JSON.parse(@client.post('charges', attributes).body)
  Promisepay::Charge.new(@client, response['charges'])
end
find(id) click to toggle source

Get a single charge

@see reference.promisepay.com/#show-charge

@param id [String] Charge ID.

@return [Promisepay::Charge]

# File lib/promisepay/resources/charge_resource.rb, line 30
def find(id)
  response = JSON.parse(@client.get("charges/#{id}").body)
  Promisepay::Charge.new(@client, response['charges'])
end
find_all(options = {}) click to toggle source

List all charges

@see reference.promisepay.com/#list-charges

@param options [Hash] Optional options. @option options [Integer] :limit Can ask for up to 200 charges. default: 10 @option options [Integer] :offset Pagination help. default: 0

@return [Array<Promisepay::Charge>] List all charges.

# File lib/promisepay/resources/charge_resource.rb, line 17
def find_all(options = {})
  response = JSON.parse(@client.get('charges', options).body)
  charges = response.key?('charges') ? response['charges'] : []
  charges.map { |attributes| Promisepay::Charge.new(@client, attributes) }
end
model() click to toggle source
# File lib/promisepay/resources/charge_resource.rb, line 4
def model
  Promisepay::Charge
end