Social Personal Finance
Moniager
Personal finance workflows where a transaction can be reviewed and confirmed by the other participant.
Overview
Moniager is a personal and social accounting product. It starts from a familiar problem: many financial records are connected to other people through a shared purchase, a loan, a repayment, or a group expense.
The product links an individual transaction to a counterparty workflow so the other participant can review and confirm the shared record. The purpose is clarity and relationship trust, not replacing formal accounting or banking systems.
Origin and motivation
Most finance applications model transactions as private ledger entries. Shared obligations then live in messages, memory, or spreadsheets, where both sides can disagree about what happened.
The problem
Shared financial records need explicit state transitions, notifications, permission boundaries, and a mutual view of confirmation. A private ledger alone cannot represent the other participant's acknowledgement.
Who it is for
Individuals and small groups who share expenses, debts, loans, or recurring financial commitments and want a clear, mutually visible record.
Vision and objectives
A privacy-conscious social finance layer for personal records, with object-level authorization, explicit invitations, and a shared status that both parties can understand.
Key capabilities
- Accounts and transaction records
- Contacts and counterparties
- Receive, pay, loan, and repayment workflows
- Two-way transaction confirmation and shared links
- Debt and credit tracking, shared expenses, and invitations
- Push, SMS, and email notifications with reminders
- Persian and English interfaces with PWA delivery
- Mobile, email, and Google authentication with TOTP two-factor support
Engineering and architecture
The product repository contains a Django and Django REST Framework backend and a Next.js frontend with MUI. Production guidance targets separate application and API hosts.
Financial values require exact decimal handling and explicit currency semantics. Cross-user interactions require object-level authorization and careful control over what is disclosed in a notification, share link, or public route.
Difficult problems and solutions
Shared state without over-sharing
Invitation, review, confirmation, rejection, and later edits need explicit transitions. Unguessable identifiers are not sufficient access control.
Notification reliability
Notification delivery should be retryable and observable, not the source of truth for transaction state.
Security evidence
The current snapshot has uncommitted authentication and frontend changes. No completed penetration test, production security approval, or comprehensive privacy compliance is claimed.
Current status
Moniager is implemented and live, with genuine consumer workflows. A full current security re-audit and end-to-end authorization assessment were not performed for this portfolio task.
The portfolio uses a public marketing dashboard image rather than authenticated customer data. No bank-level security or production-grade financial protection is claimed.
Discuss Moniager
If this work is relevant to your organization, start with the problem and the context.