Skip to content

gowth6m/bank-thing

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Bank Thing

Description

Simple bank application that uses Yapily (open banking provider) to fetch bank accounts, transactions, and balances. The application is with React frontend, NestJS backend, Postgres database and Redis with BullMQ for job queueing.

Links

Bank Connect & Sync Flow

1. FE → BE      : POST /bank/connect  
2. BE → Yapily  : create auth URL  
3. FE            : redirect browser to Yapily  
4. User ↔ Yapily : login & consent  
5. Yapily → BE   : GET /bank/callback?consent=…  
6. BE            : save consent & enqueue “sync-account” jobs  
7. FE            : open SSE → GET /event/sync  
8. Worker        : process jobs → fetch & save transactions  
9. Worker → FE   : emit SSE “transactions-updated” events  
10. FE           : on SSE event → refresh UI 

Running the Application

Run locally using docker compose (localhost:80)

make docker-local-up

Required Environment Variables

  • YAPILY_APP_ID: The application ID for Yapily. This is required for the application to connect to the Yapily API.
  • YAPILY_APP_SECRET: The application secret for Yapily. This is required for the application to connect to the Yapily API.
  • DATABASE_URL: The URL for the database. This is required for the application to connect to the database.
  • REDIS_HOST: The host for the Redis server. This is required for the application to connect to the Redis server.
  • REDIS_PORT: The port for the Redis server. This is required for the application to connect to the Redis server.

About

Open Banking integration platform using NestJS, React, Redis, BullMQ, and Postgres. Connect and sync bank accounts.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors