Skip to main content

Sales Commission Management for ERPNext

ECOSIRE Sales Commission adds a complete commission engine to ERPNext: slab-based targets per salesperson, automatic accrual the moment a Sales Invoice is submitted, and — the part most commission tools get wrong — commission that becomes payable only in proportion to the customer payment you have actually received.

Version

This app runs on ERPNext v16 / Frappe v16. Everything below describes the modern desk interface with workspaces.

The idea in one paragraph

You define a Sales Commission Plan for a salesperson: which customers (or customer group, or territory) it covers, which items (or item group) it covers, and a table of slabs — rate bands by sales value or by item quantity, measured per fiscal quarter or month. When a Sales Invoice with that salesperson in its Sales Team is submitted, the app creates a Commission Entry in Accrued state with the commission already computed. As the customer pays the invoice, the entry's payable amount follows the payment percentage — 50% collected means 50% of the commission is payable. When you pay the salesperson, you mark it Paid. Nothing is ever payable on money you have not collected.

Where everything lives

Open the Sales Commission workspace from the home screen (the % icon). It contains:

  • Executive Dashboard — accrued / payable / paid totals, entries by status, and a per-salesperson chart.
  • Commission Plans — your targets and slabs.
  • Commission Entries — the accrual ledger (one entry per invoice × plan match).
  • ReportsSales Commission Statement and Sales Commission Target vs Achievement.
  • Setup — Sales Commission Settings and the standard ERPNext Sales Person tree.

Setting up a Commission Plan

Create Sales Commission Plan → Add Sales Commission Plan and fill four sections:

  1. Header — the salesperson, your company, and the Active flag (only active plans accrue).

  2. PeriodQuarterly (default) or Monthly, the Fiscal Year, and a validity window. Quarters follow your company fiscal year — on an April–March year, Q1 is Apr–Jun.

  3. Target — pick the Target Basis:

    • Sales Value: slabs are money bands and the rate is a percent of the sales value.
    • Item Quantity: slabs are quantity bands and the rate is an amount per unit.

    Then pick the Slab Mode:

    • Single Slab: the whole base is paid at the rate of the slab it lands in.
    • Progressive: each slab pays only its own portion, like income-tax brackets.
  4. Scope — choose exactly one party scope (a Customer, a Customer Group, or a Territory) and at most one item scope (an Item or an Item Group). Group and territory scopes are tree-aware: a plan on territory India covers every state under it, and a plan on item group Zippers covers every sub-group. Leaving both item fields empty covers every item.

Finally add the slab rows — From / To / Rate. The app validates that slabs are contiguous and do not overlap.

Example

Salesperson Rakesh Sharma, Customer Group Wholesale, Item Group Metal Zippers, quarterly, Sales Value basis, Single Slab, with slabs 0–2,50,000 @ 2% · 2,50,000–7,50,000 @ 3% · above 7,50,000 @ 4%.

A submitted invoice of ₹3,00,000 for a Wholesale customer buying metal zippers lands in the second slab → commission accrued = ₹9,000 (3%).

What happens on invoice submit

Nothing extra to click. When a Sales Invoice is submitted:

  1. The app reads the invoice's Sales Team (More Info tab) — each salesperson's contribution percentage splits the base.
  2. It finds every active plan that matches the invoice's customer/group/territory AND the invoice lines' items/item groups, within the plan's validity and period.
  3. For each match it creates a Commission Entry in Accrued state, carrying the sales value in scope, the effective rate, the computed commission, and the fiscal period bucket (e.g. 2026-2027-Q2).

A misconfigured plan never blocks invoicing — accrual problems are logged to the Error Log instead of stopping the submit. Cancelling the invoice cancels the entry (the amount is kept for audit, zeroed for payability).

Commission follows the payment

Each Commission Entry tracks its invoice's collection state:

FieldMeaning
Invoice Paid / Payment Received %How much of the invoice the customer has actually paid
Commission Payablecommission × payment % — what you may release now
Commission Paid OutWhat you have already paid the salesperson
OutstandingPayable minus paid out

Statuses move automatically: Accrued (nothing collected) → Partially PayablePayable (fully collected) → Paid. Register a Payment Entry against the invoice and the entry updates on its own; cancel a payment and it walks back down.

With the example above: customer pays ₹1,50,000 of the ₹3,00,000 invoice (50%) → Commission Payable becomes ₹4,500 of the ₹9,000 accrued. Pays the rest → the full ₹9,000 is payable.

A daily scheduled job additionally re-syncs payability, and the Sales Invoice's menu carries Commission → Recompute Commission for an on-demand recalculation, plus Commission → Commission Entries to jump straight to the invoice's entries.

Reports and printing

  • Sales Commission Statement — per salesperson × period: invoices, sales value, accrued, payable, and paid, with company / date / salesperson / status filters.
  • Sales Commission Target vs Achievement — every plan × period with target vs actual and achievement %, so quarterly reviews take minutes.

Both are standard ERPNext query reports: print them, export to Excel/CSV, or save filtered views, exactly like any other report. Sales Invoices and Commission Entries print to PDF with your normal print formats and letterhead.

Roles

The app ships two roles: Sales Commission Manager (create plans, manage entries, run payouts) and Sales Commission User (see their own commission state). Standard ERPNext permissions apply on top.

Frequently asked

Do I have to choose between customer, customer group, and territory? Yes — exactly one per plan, by design. Run several plans per salesperson when you need more than one lens.

What about invoices that existed before I created the plan? Use Recompute Commission from the invoice menu, or ask your implementer to run the accrual backfill — already-submitted invoices can be accrued retroactively.

Can two salespeople share one invoice? Yes — the Sales Team table's contribution percentages (they must total 100) split the commission base.

Is there a mobile app? The desk works in any mobile browser as a progressive web app; there is no separate native app.

Getting the app

Sales Commission Management is a build-to-order ECOSIRE product for ERPNext v16 — contact us or write to [email protected] for a live demo database and a quote for your customizations. Licensing follows the standard ECOSIRE licensing model with lifetime bug-fix support for the purchased version.