← All AI systems

Python fintech backend

PayControl

A complete banking and spending-policy backend built from the ground up.

PayControl gives parents real-time visibility and policy control over family spending. Its backend covers authentication, banking synchronization, transaction processing, rule evaluation, live events, reporting and the operational safeguards required around financial data.

PayControl · Policy engine
PLAID WEBHOOK

COFFEE CO

$6.40

ALLOW

POLICY ENGINE

DAILY LIMIT✓
CATEGORY✓
MERCHANT✓
VELOCITY✓

ALLOW

12

NOTIFY

4

REVIEW

2

Live simulation of the system's real behavior. Private product repository. Architecture facts are derived from the Python API, service layer, database migrations and automated backend test suite.

Operating loop

01Plaid webhooks
02Idempotent sync
03Transaction ledger
04Rules evaluation
05Live notifications
06Reports & audit

50

FastAPI endpoints

36

automated tests

6

Alembic migrations

24/7

event-driven backend

System anatomy

Complexity broken into reliable boundaries.

01

Banking synchronization

Plaid transaction sync uses encrypted access tokens, retry behavior and idempotent processing to handle duplicate and partial events safely.

02

Policy engine

Configurable spending rules evaluate transaction behavior and produce violations and notifications without coupling policy logic to the client apps.

03

Live operational events

Server-sent events and scheduled processing keep clients current while preserving a clear backend source of truth.

04

Auditable reporting

PDF and structured JSON reports provide exportable outcomes over a migration-backed PostgreSQL domain model.

Engineering judgment

The decisions behind the build.

Seniority is not the number of technologies in a project. It is the ability to identify failure modes early and choose boundaries that keep the system understandable after launch.

Financial events must be idempotent

Retries and duplicate webhooks cannot create duplicate transactions or violations, so sync state is explicit and recoverable.

Secrets stay encrypted

Plaid access tokens and sensitive configuration are isolated behind the backend rather than exposed to product clients.

Policy belongs in the domain layer

Spending rules are modeled as testable backend behavior so iOS and future clients consume the same decisions.

Production stack

Chosen for the system.

PythonFastAPIPostgreSQLSQLAlchemyAlembicPlaidAPSchedulerSSEDockerRenderPytest

Next system

VoiceVault

→