# SimpleFIN Bridge (/docs/guides/destinations/simplefin-bridge)



# SimpleFIN Bridge [#simplefin-bridge]

The SimpleFIN Bridge lets you expose your Lunch Flow bank accounts via the [SimpleFIN](https://simplefin.org/) protocol. Any app that supports SimpleFIN can sync your accounts and transactions from Lunch Flow without any modification — just paste a setup token and go.

This is ideal if you use an app like [Actual Budget](https://actualbudget.org/) that supports SimpleFIN but not Lunch Flow natively, giving you access to Lunch Flow's bank coverage (including European banks via GoCardless) through a familiar interface.

<iframe className="w-full aspect-video rounded-lg" src="https://www.youtube.com/embed/qTVO8V1FXe0" title="SimpleFIN Bridge Setup" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" />

## Prerequisites [#prerequisites]

* At least one bank account connected in Lunch Flow
* An app that supports SimpleFIN (e.g. Actual Budget)

## Setup [#setup]

<Steps>
  <Step>
    **Create a SimpleFIN Bridge destination**

    In Lunch Flow, go to **Destinations** and click **Add Destination**. Select **SimpleFIN Bridge** and give it a name.
  </Step>

  <Step>
    **Select your accounts**

    On the destination detail page, toggle on the accounts you want to expose through the bridge.
  </Step>

  <Step>
    **Generate a setup token**

    Click **Generate Setup Token**. Copy the token — it's valid for 7 days and can only be used once.
  </Step>

  <Step>
    **Paste into your app**

    In your SimpleFIN-compatible app, go to the bank sync settings and select SimpleFIN. Paste the setup token when prompted.

    For Actual Budget: go to **Settings > Bank Sync > Set up SimpleFIN** and paste the token.
  </Step>

  <Step>
    **Sync your accounts**

    Link the accounts that appear and start syncing. Your app will pull transactions and balances from Lunch Flow whenever you trigger a sync.
  </Step>
</Steps>

## How it works [#how-it-works]

The SimpleFIN Bridge implements the [SimpleFIN protocol](https://simplefin.org/protocol.html):

. **Setup token** — a base64-encoded URL pointing to Lunch Flow's claim endpoint
. **Claim** — your app exchanges the token for a permanent access URL with embedded credentials
. **Sync** — your app fetches accounts and transactions using HTTP Basic Auth

Lunch Flow acts as the SimpleFIN bridge server. Your app doesn't know or care that the data comes from Lunch Flow — it just sees a standard SimpleFIN API.

## FAQ [#faq]

<Accordions>
  <Accordion title="Which apps are supported?">
    Any app that supports the SimpleFIN protocol. This includes Actual Budget, and any other app that can connect to a SimpleFIN bridge.
  </Accordion>

  <Accordion title="Can I connect multiple apps?">
    Yes. Generate a new setup token for each app. Each token creates its own set of credentials.
  </Accordion>

  <Accordion title="What happens if I regenerate the token?">
    Regenerating revokes all previously claimed credentials for that destination. Any app using old credentials will need to be reconnected with a new token.
  </Accordion>

  <Accordion title="Does it support pending transactions?">
    Yes. Apps that request pending transactions (via the `pending=1` query parameter) will receive them.
  </Accordion>

  <Accordion title="Can I limit which accounts an app can see?">
    Yes. Each SimpleFIN Bridge destination has its own account access controls. Toggle accounts on or off from the destination detail page.
  </Accordion>
</Accordions>
