chaitanya.akula
All projects

Recurring Payments

A recurring payment system built from scratch, with a next-generation version in progress.

GolangEvent-Driven ArchitecturePostgreSQLRedis

Problem

Reliably schedule and execute repeating payments while handling failures, retries, and changing mandates over long time horizons.

Architecture

A scheduler that materializes due payments into a durable queue, with workers executing charges idempotently and updating mandate state.

Technical challenges

Correctly handling retries and backoff, mandate lifecycle changes, and ensuring no payment is skipped or double-charged.

Solution

Durable scheduling with idempotent execution, explicit mandate state, and dead-letter handling for payments that need manual review.

Scale

Handles large volumes of scheduled, repeating transactions.

Lessons learned

Long-lived scheduled work needs the same idempotency discipline as synchronous payments — time just makes the edge cases more likely.

Want to talk through the engineering behind systems like this?

Start a conversation