Statement
The app's most-used report: the full turnover of one account, voucher by voucher, with a running balance broken down by currency. Whenever a customer asks "what's my balance now?", this is where the answer is — and it can go straight to their WhatsApp with one button.
Where This Page Fits
- From the Customers list, the General Ledger, or the dashboard, one click takes you to any account's statement.
- Open items of the account: if the account has open payment commitments (as payer or receiver), receipts awaiting collection, payment readiness, open deposit requests or open cheques, a small row with their counts appears under the page buttons; clicking each opens that list filtered to this account. If nothing is open, the row does not appear at all.
- WhatsApp buttons: send "account balance" (image), statement PDF, or statement Excel to the account's WhatsApp group.
Filters
| Filter | Description |
|---|---|
| Account | Search by name, number, or phone. |
| From date / to date | The turnover period. |
| Last N vouchers | Defaults to the last 30 vouchers, with a display cap of 1,000. The running balance is calculated over the account's whole history — only the display is trimmed. If the selected date range holds more than 1,000 rows, a message asks you to narrow the range. |
| Currencies | Multi-select: each search adds one currency to the filter (a chip with ×). While filtered, the balance box shows only those currencies and no net line; “All currencies” clears the filter. |
Notes
- "Debit" means the customer owes the exchange; "Credit" is the opposite.
- The Excel/PDF export only has the voucher's public description; the other party of a transfer and any confidential note are never exported.
- If the account is settled, the last two currencies traded are shown with a zero balance and a "Settled" badge.
Reconciliation (Colouring Rows)
To flag rows while matching, click the "Reconcile" button. A four-colour palette (yellow, pink, cyan, purple) and an eraser appear above the table: pick a pen colour and click any row to paint it; clicking again with the same colour (or with the eraser) removes it.
A colour is purely your own internal convention — it has no fixed meaning and is connected to nothing in the program (document editing, funds verification, reports); each time you can assign any colour to any purpose. Colours are shared between users and a painted row stays painted until someone clears it. Above the table you see the sum of each colour's rows per currency — these sums are live and update the moment you paint or clear a row, no page refresh needed —, and you can filter to a single colour (or the uncoloured rows). Colours never appear in the Excel/PDF export.
Unknown-party statement
For the "unknown party" account, only not-yet-identified documents show by default to keep the page clean; the "Show all" button brings back identification and identified documents too.
The double-chevron button next to the results counter collapses the filters and balance panel so the table takes the whole page; click again to bring them back — your choice is remembered in the browser.
The table has its own scrollbar: however long the list, the header and filter row stay fixed while you scroll, and the filters and balances remain visible at the top of the page.
Sending open items as a WhatsApp image
Next to each "open items" chip (open commitments, pending clearance, payment readiness, open deposit requests, open cheques) there is a WhatsApp button. It builds a neat image card of those items and sends it — together with the "open items caption" template text — to the customer's WhatsApp group (or direct chat). You can edit the caption in the WhatsApp message templates page. The button only appears for users with WhatsApp permission.
Statement Excel export
Two Excel versions are available:
- Excel: the customer copy, without the private column; this is the file the WhatsApp button sends.
- Excel (with private): the same file plus a “Private” column right after “Description” (as on the page itself). It only carries what no other column has: the transfer counterparty, the trade’s third-party commission and the document’s private note. If the counterparty was “Unknown” and has since been identified, the real party’s name appears next to “Unknown”.
Both versions have: a dark header with the account and exchange name, an info card (account name/number, report filter — date range or “last N transactions” — and generation date), a cream frozen header row, borders only on cells that contain data (gridlines off), Latin digits, right-to-left text columns, and a Gregorian date column stored as a real Excel date (for sorting and formulas). The Balance column carries no plus/minus sign; the color tells you what it is: red = debit, green = credit — exactly the rule you already see inside the app. The figures are real numbers, so you can total them and write formulas straight on that column. At the bottom there is a “Summary by currency” table: opening balance, total debit, total credit and closing balance per currency.
The PDF export looks exactly the same (dark header, info card, cream header row, the colors and the summary table) with one difference: it has no Gregorian date column — space is tight in a PDF, and the date and time on the row are enough.
- Everywhere in the app, hovering over a Jalali date shows its Gregorian equivalent.
- The table starts at the end (latest transactions); scroll up for older ones.
Pending balance (_PEND)
If the account has pending documents (awaiting manager approval), their effect appears in the balance list as a dimmed "CODE_PEND" row with a ⏳ badge, with the documents listed under the card. Display only — not included in the real balance, net, or exports; it disappears on rejection and becomes real balance automatically on approval.
Customer portal
With the "manage accounts" permission you can issue a secure read-only link per customer (the collapsed "🔗 Customer portal" box at the bottom of this page): the customer sees balances (incl. pending), open items and their last 20 movements without logging in — with no other party names. The link is copyable and revocable at any time; issue/revoke is logged.
Portal link security: these pages are hidden from all search engines, AI crawlers and bots via a noindex meta tag + X-Robots-Tag header + robots.txt, and the address is unguessable — it stays private unless you (or the customer) hand the link to someone. "Revoke link" kills it instantly at any time. The link is issued on the neutral host p.nextofx.com, so your accounting app's own address is never revealed by it.