This is a simple wrapper for the Telleroo API. API Documentation is available here. This gem uses MultiJson to parse responses which are otherwise returned unadulterated.
Add this line to your application's Gemfile:
gem 'telleroo'And then execute:
$ bundle
Or install it yourself as:
$ gem install telleroo
Telleroo::Client can be configured from an initializer:
Telleroo.configure do |config|
  config.authorization_token = "YOUR_AUTH_TOKEN"
  config.endpoint = 'https://sandbox.telleroo.com'
endor by passing an options block to Telleroo::Client.new
client = Telleroo::Client.new do |config|
  config.authorization_token = "YOUR_AUTH_TOKEN"
  config.endpoint = 'https://sandbox.telleroo.com'
endThe http_adapter option can be used to set the underlying HTTP adapter for Faraday:
config.http_adapter = :typhoeusUse an array to pass further options to the HTTP adapter itself:
config.http_adapter = [:typhoeus, timeout_ms: 100]After configuring a client, the following calls are available to you:
List Accounts
Retrieves all bank accounts assigned to your company
client.accounts()List Recipients
Retrieves all recipients under your company.
client.recipients()Get Recipient
Retrieves a single recipient given a recipient_id.
client.get_recipient("ff17b231-2bc4-485e-967e-231867e15fd6")Create Recipient
Creates a single recipient.
Note: GBP Recipients require account_no and sort_code passed in options while EUR require iban and bic.
client.create_recipient(
  name: 'Nick Lloyd',
  currency_code: 'GBP',
  options: {
    account_no: '72345678',
    sort_code: '623456'
  }
)Delete Recipient
Retrieves a single recipient given a recipient_id.
client.delete_recipient("ff17b231-2bc4-485e-967e-231867e15fd6")Create Bank Transfer to Recipient
Triggers an instantaneous bank transfer to a existing recipient from your account. See docs for additional available params to pass into options.
client.create_transfer(
  account_id: 'a6a2b79c-33b5-4ed5-90fd-bfb8f1d4085a',
  currency_code: 'GBP',
  amount: 10000,
  recipient_id: 'ff17b231-2bc4-485e-967e-231867e15fd6',
  idempotent_key: 'abcd-123456789-efgh',
  options: {
    reference: 'foobar'
  }
)Create an Adhoc Bank Transfer
Send all params required to both create a Recipient and transfer funds in a single call.
client.create_adhoc_transfer(
  account_id: 'a6a2b77c-33b5-4ed5-90fd-bfb8f1d4085a',
  currency_code: 'GBP',
  amount: 10000,
  recipient_name: 'Rick Floyd',
  account_no: 12345678,
  sort_code: 665544,
  idempotent_key: 'abcd-123456789-efgh',
  reference: 'foo',
  tag: 'bar',
  reconciliation: 'baz'
)List Transactions
Returns all activity on a specified bank account. See docs for additional available params to pass into options.
client.transactions(
  account_id: 'a6a2b77c-33b5-4ed5-90fd-bfb8f1d4085a',
  start_date: '09-06-2017',
  end_date: '09-07-2017'
)Get Transaction
Retrieves all relevant data of a single transaction including the transfer status.
client.get_transaction(id)After checking out the repo, run bin/setup to install dependencies. Then, run rake spec to run the tests. You can also run bin/console for an interactive prompt that will allow you to experiment.
To install this gem onto your local machine, run bundle exec rake install. To release a new version, update the version number in version.rb, and then run bundle exec rake release, which will create a git tag for the version, push git commits and tags, and push the .gem file to rubygems.org.
Bug reports and pull requests are welcome on GitHub at https://github.com/playpasshq/telleroo.
The gem is available as open source under the terms of the MIT License.