Decimal money, always.
Every rupee is stored to the paisa — no rounding drift, no half-a-rupee ghosts. Rounding rules are set up front per currency. A rupee lost to precision is a rupee lost to trust.
About
The selling already works. Photos get forwarded, orders happen in DMs, money lands in UPI. What nobody could ever answer afterwards was the simple question — who sold what, and did anyone get paid the right amount?
Boxstory is the ledger underneath the chat. Every order that lands, lands somewhere.
What we hold
Every rupee is stored to the paisa — no rounding drift, no half-a-rupee ghosts. Rounding rules are set up front per currency. A rupee lost to precision is a rupee lost to trust.
Every stock change — reseller sale, provider bulk update, return — locks the unit in place before it moves. Two people can't accidentally sell the same last item.
One shared database, but every row carries a tag saying which provider owns it. Nothing from one provider can be accidentally read by another — even if someone tries.
Every rule about money and stock lives in one place, per feature. Pages just display things. Nobody hides a stock decrement in a template tag or a form widget.
Build state
20 Django apps. 239 automated tests. Tenant-scoped throughout. Fully auditable ledger for every sale, payment, refund and dispatch, end to end.