Skip to content


Subversion checkout URL

You can clone with
Download ZIP
A Ruby library to extract bank information
Latest commit 8ea9195 @dontangg Update cacert.pem
Failed to load latest commit information.
spec Update test
.gitignore Update gems and commit Gemfile.lock
.rspec first commit
CHANGELOG.rdoc Bump version to v0.0.14
Gemfile first commit
Gemfile.lock Remove development dependency debugger to work better with Ruby 2.0
README.rdoc Update README to reflect banks supported
Rakefile changed rspec task description
TODO.rdoc Remove note about SSL certificates
syrup.gemspec Remove development dependency debugger to work better with Ruby 2.0



Syrup helps you to extract bank account information and transactions.


# Setup an instance of the bank
zions_bank = Syrup.setup_institution('zions_bank') do |config|
  config.username = 'user'
  config.password = 'pass'
  config.secret_questions = {'What is your secret question?' => "I don't know"}

# List accounts
zions_bank.accounts.each do |account|
  puts "#{} (#{account.current_balance})" # => "Checking (100.0)"

# Get transactions
account = zions_bank.find_account_by_id 123456
transactions = account.find_transactions( - 30) # => an array of Transactions from the last 30 days
transactions = account.find_transactions(Date.parse('2011-01-01'), Date.parse('2011-02-01') - 1) # => an array of Transactions from the month of January


The latest version of Syrup can be installed with Rubygems:

[sudo] gem install "syrup"

In Rails 3, add this to your Gemfile and run the bundle command.

gem "syrup"

In Rails 2, add this to your environment.rb file.

config.gem "syrup"

Supported Institutions

Currently, only Zions Bank, UCCU, and Bank of American Fork are supported. I will be implementing UCCU, USAA, and Wells Fargo (probably in that order). If you would like support for a different bank, you have two options:

  1. Get me the credentials to log into an account with that bank (you'd have to trust me).

  2. Implement it yourself and submit a pull request. See Adding Support For Another Institution

Something went wrong with that request. Please try again.