Checked against the live site on 14 Jul 2026 · clients.plyolab.com/vishal/pilot
Every figure below is a screenshot of the real running app, not a mock-up.
"Groceries, travel and health were undercounting because credit-card entries were missing."
In plain terms: The April ENBD credit-card statement — the one that carried the ~817 groceries line and a month of card spend that was simply absent from May — is now loaded. May used to show bank accounts only; it now shows the card too: AED 87,727 of spend across 273 lines, and it balances to the last fils against the statement's own totals.
So travel, health and groceries in May are no longer undercounting because entries are missing — the entries are in. Travel now carries AED 24,963, health-related heads ~AED 18,200, grocery heads ~AED 4,900 for this cycle.
The honest caveat: the app's first categorisation of these new lines is an AI first pass, and it's a bit fragmented — groceries is spread across "Grocery / Home & Groceries / Food and Groceries", health across "Medical / Health & Wellness / PVM Health & Wellness", and 9 lines are parked as "awaiting Ali". The numbers are all captured and reconcile; the labels need Ali to confirm/remap to his chart. That's the review step below.
"Bank pays one lump sum to Amex/ENBD; the system should split it into expense categories and cardholders, and net the payable to zero each month."
Split into expense categories — done: every card line is booked to a spending head (the category breakdown above).
Split into cardholders — done two ways: a per-cardholder total (below), and a control to split a single line across family members (including Rania & Viraj).
Net the payable to zero — the check is built and live, and it does its job: it shows the payable does not currently zero. AMEX sits at AED 362,616 and ENBD at AED 53,712 unsettled in-window.
Why (honest): the lump-sum payments the bank makes to Amex/ENBD land on bank statements we haven't loaded yet — so the "money paid out" leg of each cycle is out of scope. The check surfaces that gap rather than papering over it. To make it truly zero we load the matching bank statements so each card cycle's charges and its settlement payment line up.