Customer Statements for Perfex CRM
by Lumadro
$49
Perfex adds your dollars to your euros
Perfex has a statement of account on the customer profile. Open it for a customer you have invoiced in two currencies and read the closing balance: it sums the totals and prints the result in one currency, which is wrong in both. There is no ageing anywhere in Perfex, no way to send statements to everyone who owes you, and no way to get any of it out as a file.
This module fixes those four things and leaves the rest of Perfex alone.
What you get
A statement of account for any customer over any date range, with opening balance, every invoice, payment and credit, a running balance and a closing balance
Every currency in its own section, never added together
Receivables ageing with buckets you set, on the statement and across every customer, filtered by sale agent or customer group
Credit limits, which Perfex has no concept of, flagged on the ageing report
Scheduled statements once a month, using the Perfex cron you already run
A pay link on every unpaid line, showing what is still owed rather than the original charge
PDF with a tear-off remittance slip, and every statement in one PDF for a print run
Email through your own Perfex email templates, so your SMTP, sender name and queue all apply
CSV export of any statement, the ageing report or the chase list
WhatsApp sharing with the balance and the age of the oldest invoice already written. No API, no account, no per-message fee
A dashboard widget, and a send history so nobody is chased twice in a morning
Supplier statements from the same ledger, if you run a purchasing module
Four things this refuses to get wrong
Currencies never mix. A balance in two currencies is two balances
Drafts and cancelled invoices never appear, and neither do payments recorded against them
What is outstanding is computed, not read from a status field
One tested engine serves both receivables and payables
Tested, not just written
207 assertions across three suites: the arithmetic and exports, the real model against a real database, and the access rules that decide who may read whose statement.
A schema check, because guessing is not a plan
Perfex publishes no schema reference. The module ships a page that reads your database, confirms every table and column it needs, and tells you what to correct if your install differs. Run it once after installing.
Honest about what else exists
Perfex core has a statement. On one currency, with no ageing, no bulk sending and no exports needed, core is enough and you should not buy this. The Accounting and Bookkeeping module does full bookkeeping including ageing, and asks you to map invoices into a chart of accounts first. Two dunning modules chase debtors with cases and promises, which is a workflow rather than a document.
Requirements
Perfex CRM 3.2 or newer, PHP 8.1 or newer. Tested on 3.4.1. No third-party service, no subscription, no external API.
Try it first
Demo: https://crmdemo.lumadro.com/admin
Sign in with demo@lumadro.com and the password demo. The demo account cannot send email or change settings, which is why some buttons are hidden there.