Files
docker-infrastructure/firefly-iii/DATA-IMPORT.md
T
poprhythm 35a6715f01 Add Firefly III data import plan
Documents FIDI + SimpleFIN approach for Capital One and Citi bank import,
including OFX Direct Connect option for Citi and the FIDI compose snippet.
2026-03-06 20:06:22 +00:00

2.3 KiB

Firefly III Data Import Plan

Bank Accounts

Institution Type Export Format Automation
Capital One Bank/Credit Card CSV only (dropped OFX) SimpleFIN
Citibank Credit Card CSV + QFX/OFX Direct Connect SimpleFIN or OFX

Phase 1: Manual Import via FIDI (Free)

Deploy FIDI as a companion container to Firefly III.

  • Image: fireflyiii/data-importer:latest
  • Needs: FIREFLY_III_URL, FIREFLY_III_ACCESS_TOKEN (generate in Firefly UI under Profile → OAuth)
  • Port: 8383 (internal, no need to expose publicly)
  • Add to firefly-iii/docker-compose.yaml as a second service on the internal network

Workflow:

  1. Log into Capital One → Account → Download transactions → CSV
  2. Log into Citi → Account → Download transactions → QFX or CSV
  3. Go to FIDI UI → upload file → map columns → import

Citi OFX Direct Connect (optional, skips manual download):

  • Server: https://www.citi.com/ofxdirect
  • Requires Quicken-compatible credentials (may need to call Citi to enable)
  • FIDI supports OFX connections natively

Phase 2: Automation via SimpleFIN (Optional, ~$1.50/mo)

SimpleFIN Bridge aggregates US bank data including Capital One and Citi.

Setup:

  1. Sign up at https://bridge.simplefin.org/
  2. Get a SimpleFIN token
  3. Deploy a bridge script (e.g. simplefin-to-firefly community tool) as a cron container
  4. Script polls SimpleFIN → pushes new transactions to Firefly III API

Firefly III API base URL: https://firefly.kolpacksoftware.com/api/v1 Auth: Personal Access Token (Profile → OAuth → Personal Access Tokens)

FIDI Compose Addition

Add to firefly-iii/docker-compose.yaml:

  fidi:
    image: fireflyiii/data-importer:latest
    container_name: firefly-iii-fidi
    restart: unless-stopped
    depends_on:
      - app
    environment:
      - FIREFLY_III_URL=http://app:8080
      - VANITY_URL=https://firefly.kolpacksoftware.com
      - FIREFLY_III_ACCESS_TOKEN=${FIDI_ACCESS_TOKEN}
      - TZ=America/New_York
    ports:
      - 8383:8080
    networks:
      - internal
  • FIDI_ACCESS_TOKEN: Generate in Firefly III UI → Profile → OAuth → Personal Access Tokens
  • FIDI runs on internal network only — access via http://<host-ip>:8383 or add to npm-network if you want a public URL