It will not tell you what to do with money
No route in Laxmi's router recommends an investment, a loan or a tax position — a test scans every mounted route path and fails the build if the words advise, recommend, invest, transfer or send appear anywhere in it, so this is not a promise, it is something the codebase cannot merge a violation of.
A ledger entry cannot be edited or deleted — a correction is a new, opposite entry
There is no PATCH or DELETE on the ledger. The only two ledger routes are a read and a reversal, and the reversal writes a new row with the opposite sign that points back at the original — the original is never touched. This is enforced twice: once by the router having no such route at all, and again inside the model layer, where SQLAlchemy event listeners refuse an UPDATE or DELETE against a ledger row even from a script that bypasses the API.
It will not add rupees to dirhams and call it a total
Money is an integer count of minor units beside an explicit currency column, never a float and never implicitly INR. Every position, ageing table and export is reported per currency; there is no route anywhere that sums across currencies into one blended figure, because that figure would be wrong in a way nobody notices until it is too late to fix.
It will not send a reminder, an invoice or an alert on its own
Drafting, the collection-tone gate, the frequency cap and an explicit approval step all run locally with nothing configured. There is deliberately no send route anywhere in Laxmi: getting a reminder, a recurring invoice or a low-balance alert in front of a customer needs a connected WhatsApp number or an email provider, and until one exists the draft sits for a human to act on.
It will not rank your bills, your customers or your scenarios for you
Vendor payables can be sorted by due date, amount or vendor, and the response repeats that the ordering is not a recommendation about which to pay first. Scenario comparisons return every trajectory in the order asked for and never ranked. Customer payment-history reports carry average days-to-pay and overdue counts and nothing that could be mistaken for a score, because a payment score is a credit assessment under another name.