This project is a tool to sync the balance of your credit cards and a Monzo pot. It allows you to use credit cards for your day-to-day spend, all the while ensuring your Monzo pot has enough funds to pay off bills in full - providing a seamless experience for managing your finances.
- Automatically add and remove funds from a Monzo pot as you spend on your credit cards
- Choose a Monzo pot to keep synced, and change it at any time
- Connect all of your credit card providers to keep your pot up to date
- Clone the repository:
git clone https://github.com/mattgogerly/monzo-credit-card-pot-sync.git
- Navigate to the project directory:
cd monzo-credit-card-pot-sync
- Install Python dependencies:
pip install -r requirements.txt
- Install web dependencies:
npm install
- Build static web assets:
npm run build-css
- Start the application:
npm start
- Open your browser and navigate to
http://localhost:1337
- Log in to the Monzo developer portal at
https://developers.monzo.com
(note you'll need to approve the login in the app) - Create a client, entering the redirect URL as
http://localhost:1337/auth/callback/monzo
and confidentiality asConfidential
- Make a note of the client ID and client secret
- Login to the TrueLayer console at
https://console.truelayer.com
- Create an application
- Switch to the
Live
environment and addhttp://localhost:1337/auth/callback/truelayer
as a redirect URI - Copy the client ID and client secret
- Navigate to
http://localhost:1337/settings
and save the Monzo and TrueLayer client IDs and secrets
You're all set! Head to http://localhost:1337/accounts
to connect your Monzo account and credit cards.
Releases are also published as container images on GitHub Container Registry.
- Start the container:
docker compose up -d
- Open your browser and navigate to
http://localhost:1337
This project is licensed under the MIT License. See the LICENSE file for details.
For any questions or feedback, please open an issue on GitHub.