Firefly III CSV Importer Tool.


Packagist License Stargazers Donate


Firefly III CSV importer

A tool to import CSV files into Firefly III
Explore the docs »

View Firefly III demo · Report Bug · Request Feature

About the Firefly III CSV importer

This is a tool to import CSV files into Firefly III. It works by using a personal access token to access your Firefly III installation's API. It will then create transactions based upon the CSV files you upload.


Use this tool to (automatically) import your bank's CSV files into Firefly III. If you're a bit of a developer, feel free to use this code to generate your own import tool.


  • This tool will let you download or generate a configuration file, so the next import will go faster.

Who's it for?

Anybody who uses Firefly III and wants to automatically import files.

Getting Started

You can use this tool in several ways.

  1. Install it on your server using composer.
  2. Use the Docker-image.

Generally speaking, it's easiest to use and install this tool the same way as you use Firefly III. And although it features an excellent web-interface, you can also use the command line to import your data. There are upgrade instructions for both methods of installation.

The full usage instructions can be found in the documentation. Basically, this is the workflow:

Using the web interface

  1. Set up and configure your Personal Access Token and Firefly III URL.
  2. Upload your CSV file.
  3. Tell the importer what your CSV file looks like..
  4. Set each column's role and data type.
  5. Map values in the CSV file to existing values in your database.
  6. Enjoy the result in Firefly III.

Using the auto-import

  1. Import at least once so you'll have a configuration file.
  2. Or, get a configuration file from the repository.
  3. Run the Docker inline import command

Known import challenges

Most people run into the same problems when importing data into Firefly III. Read more about those on the following pages:

  1. Issues with your Personal Access Token
  2. Often seen errors and issues.
  3. Frequently asked questions.
  4. My bank delivers bad CSV files, what do I do now?

Other stuff


Your help is always welcome! Feel free to open issues, ask questions, talk about it and discuss this tool. You can also join reddit or follow me on Twitter.

Of course, there are some contributing guidelines and a code of conduct, which I invite you to check out.

For all other contributions, see below.

Support the development of Firefly III

If you like this tool and if it helps you save lots of money, why not send me a dime for every dollar saved!

OK that was a joke. You can donate using PayPal, Patreon or the GitHub Sponsors Program.

This work is licensed under the GNU Affero General Public License v3.


You can contact me at, you may open an issue or contact me through the various social media pages there are: reddit and Twitter.

Scrutinizer Requires PHP7.3 Quality Gate Status