Natural input
An expense can be written as a regular message with an amount, participants and a comment.
Completed product · Telegram bot
A group bot that records shared expenses, calculates who owes whom and exports the ledger to Excel.
Problem
In a group chat, payments appear as short messages, while the actual ledger must remember participants, shares, repayments and removed users. The bot turns chat input into consistent records and keeps the calculation available to every registered member.
An expense can be written as a regular message with an amount, participants and a comment.
Shares are calculated in integer minor units, avoiding floating-point rounding errors.
Removing a participant does not erase earlier expenses or change past balances.
The group owner manages members, corrections and full Excel export.
Implemented scope
The bot creates a group, records and lists expenses, calculates debts and repayments, manages aliases and members, works in group and private chats, and exports transactions. PostgreSQL migrations and containerized startup make the environment reproducible.