CI Status Documentation percentage License: MIT Latest version platforms supported: linux | macOS | iOS | watchOS | tvOS SPM compatible

This project is part for SwiftBeanCount, please check out the main documentation here.


This is a small library to convert downloaded data from Tangerine (via TangerineDownloader) to the Beancount format (via SwiftBeanCountModel).

Beancount meta data

The library relies on meta data in your Beancount file to find your accounts. For Credit Cards, please add importer-type: "tangerine-card" and last-four: "XXXX" with the last four digits of your number to your Credit Card Liability account. For other account types (like Checking, Savings, and LOC), please add importer-type: "tangerine-account" and number: "XXXX" with the account number as meta data to the account in your Beancount file.


1) Load your ledger, e.g. via SwiftBeanCountParser 2) Create an instance of SwiftBeanCountTangerineMapper using the ledger 3) Dowload the accounts and activities you want to convert via the TangerineDownloader 4) Use createBalances and createTransactions on the mapper to convert the downloaded data

Please also check out the complete documentation here.


The library supports the Swift Package Manger, so simply add a dependency in your Package.swift:

.package(url: "https://github.com/Nef10/SwiftBeanCountTangerineMapper.git", .exact(from: "X.Y.Z")),

Note: as per semantic versioning all versions changes < 1.0.0 can be breaking, so please use .exact for now

While my code is licensed under the MIT License, the source repository may include names or other trademarks of Tangerine, Scotiabank or other entities; potential usage restrictions for these elements still apply and are not touched by the software license. Same applies for the API design. I am in no way affilliated with Tangerine other than beeing customer.