Commission Statements for DMSi Agility
Each rep’s commission computed from the gross profit Agility invoiced, under your plan’s rules for splits, house accounts, returns and paid-only. A statement per rep with every ticket behind it, approved by your controller.
Sales & estimatingUpdated Oct 202620 ERPs
See it work on Agility.
Click through the steps. Fictional data, in Agility’s terms; the real thing runs on Agility.
| Rep | Invoiced GP | Rate | Commission | Status |
|---|---|---|---|---|
| Mike Brennan | $71,420 | 8% · splits applied | $5,713.60 | 1 dispute |
| Counter · Main St | $48,310 | 6% | $2,898.60 | Ready |
| Counter · Route 9 | $39,890 | 6% | $2,393.40 | Ready |
| House accounts | $24,640 | 0% | $0.00 | Excluded by plan |
Invoiced gross profit from Agility, net of returns, under the plan. One dispute waiting.
The problem, as it happens in Agility.
Commissions at a dealer are a spreadsheet the controller builds on the third of the month from the sales-by-rep report in Agility, with a column for the split on one job, a row deleted for the house account, and a note about the return that came back after the statement went out. A paid-only plan means waiting on the cash receipts too.
Every rep checks the number against their own list, and the ones that disagree come to the controller’s door. The dispute is about a ticket from six weeks ago that nobody can find the split agreement for. The plan that was supposed to drive behavior is a monthly argument instead.
How it works.
- 1
The plan is written down once
Rates by category or account, splits by job, house accounts, what happens on a return, whether commission is earned at invoice or at payment. A spec your controller edits in plain English, with history and revert.
- 2
Every ticket, computed
Each invoice from Agility with its cost and gross profit, assigned to the rep on the ticket or the split on the job, with returns and credits netted in the month they hit and paid-only plans waiting on cash. The arithmetic is from Agility; a model is not involved.
- 3
A statement per rep, drafted
The month’s commission with every ticket behind it: invoice, customer, gross profit, rule, rate, amount. A rep opens their statement and sees the ticket, not a total. The controller sees all of them before anyone else does.
- 4
Disputes to the controller, who approves
A rep flags a ticket with a sentence. It lands on the controller with the plan rule beside it. The controller decides, approves the statement, and the payroll figure goes to your payroll system, or to Agility keyed by your team.
How it connects to Agility.
Lunica reads invoiced tickets, credits, cost and the customer master through a read-only login to the Agility database: sold price and cost per line, the rep and job on each ticket, returns and credit memos, and cash receipts where the plan is paid-only. Splits and house accounts come from the plan spec and the customer master.
Nothing lands in Agility without a person and nothing is sent on its own. Statements go to reps when the controller releases them. The approved figures go to payroll or back to Agility as an Agility import or API call where one exists, or keyed by your team from what Lunica prepared; Lunica does not post a journal entry or a payroll line itself.
What a week looks like.
- Every rep’s commission on the first, with every ticket behind it.
- Splits, house accounts and returns handled the way the plan says, every month.
- Disputes that point at a ticket and a rule, not at a spreadsheet.
- A controller who approves statements instead of building them.
Questions
Does it write to Agility?
No. It reads invoices, cost and receipts. The approved figures go to payroll or are keyed into Agility by your team.
Does it pay anyone?
No. It computes and drafts. The controller approves, and payroll runs where you run it.
What about paid-only plans?
Commission on an invoice is held until cash is applied in Agility, and shows on the statement as earned but not yet payable, with the invoice and its balance.
How are splits handled?
By job or account in the plan spec: fifty-fifty on one job, seventy-thirty on a handed-off account, whatever was agreed. A split is written down once and applied every month until it is changed.
What if a rep disagrees?
They flag the ticket from their statement with a sentence. It lands on the controller with the plan rule beside it. The decision is logged against the ticket.
Can reps see each other’s statements?
No. Each rep sees their own. The controller sees all of them.
Does it need a server?
Lunica runs on one Windows server inside your network, or beside DMSi’s hosted Agility, set up and maintained by Lunica. It reads DMSi Agility through a read-only login to the Agility database. There is no inbound connection from outside your network.
What does Lunica read in Agility?
The customer master, open items and terms, purchase orders and receipts, the item master, quotes and order history, as each workflow needs them. Read-only, and only the rows a task is about.
Can it post to Agility?
Nothing lands in Agility without a person. What belongs in Agility goes back as an Agility import or API call where one exists, or keyed by your team from what Lunica prepared.
What about our documents?
Invoice copies and scans keep living in Agility’s document attachments. Lunica reads them when a workflow needs one and never writes to them.
The same workflow, on another ERP.
Commission Statements is written for every system on the list. You’re reading the Agility version.
See it on your Agility data.
Thirty minutes. We walk the workflow on Agility data, then map it to yours.