Skip to main content
Coupons, Discounts & Promotions Engine for ERPNext — A build-to-order Frappe app that adds coupons, BOGO, tiered discounts, g — 1/1Illustrative preview

A build-to-order Frappe app that adds coupons, BOGO,

tiered discounts, gift cards and segment-specific offers on top of ERPNext sales and POS.

ECOSIRE scopes, builds, installs and supports it for your instance.

What is Coupons, Discounts & Promotions Engine for ERPNext?

A build-to-order Frappe app that adds coupons, BOGO, tiered discounts, gift cards and segment-specific offers on top of ERPNext sales and POS. ECOSIRE scopes, builds, installs and supports it for your instance. Built to order by ECOSIRE for ERPNext v15, v16 — indicative price from $999.00 USD; request a quote for a scoped proposal.

Key Features

`Promotion` DocType with rule type, priority, stacking policy and start/end validity window, evaluated server-side so web, POS and API carts behave identically
Bulk coupon generation into a `Coupon Batch` — single-use, multi-use, or one-per-customer — with cryptographically random codes and DB-enforced usage counters
Whitelisted `validate_coupon(code, customer)` method returning eligibility, remaining uses and reward preview for real-time cart feedback
BOGO, buy-X-get-Y and free-gift rules with configurable qualifying and reward item sets, honoring UOM and item groups
Tiered / threshold discounts ('spend 500 save 10%, spend 1000 save 15%') driven by cart-subtotal condition child tables
Bundle / combo pricing that discounts a defined set of items only when all members are present in the cart
Gift-card issuance with `Gift Card` and `Gift Card Ledger Entry` DocTypes; balance debited atomically inside invoice `before_submit` so it never goes negative
Customer-segment targeting via `Customer Group`, `Territory` and tags, so offers apply only to the intended audience
Time-bound and usage-limited promos enforced by a nightly scheduler event that expires coupons and closes ended campaigns
`hooks.py` doc events on `Sales Order`, `Sales Invoice` and `POS Invoice` that apply rewards, recompute `Sales Taxes and Charges` and stamp the applied promotion for audit
Client Script on the POS screen for live coupon entry, reward preview and error messaging without leaving the cashier flow
Stacking and conflict resolution engine — allow, block or best-of between overlapping promotions based on configurable priority
Perm-level field security and role profiles so cashiers can apply promotions but only marketing can author or edit rules
Frappe REST API endpoints for headless storefronts to validate and apply promotions on externally-built carts
Promotion performance report (redemptions, discount cost, revenue) built as a Query/Script Report over the applied-promotion audit fields

Built to order, done for you

No DIY setup — a working app, built, installed and supported by ECOSIRE.

  1. 1

    You order

    Start with a one-time build price. We scope it with you at kickoff.

  2. 2

    We build & install

    ECOSIRE builds, configures and installs it on your ERPNext.

  3. 3

    Go live + support

    You go live in about one working week, with two weeks of go-live support. Defects in the code we deliver are fixed free of charge.

Technical Specifications

ERPNext Compatibility
—
License
Licence confirmation required
Python Requirement
Python 3.10+
Database
MariaDB 10.6+

About this Product

Retail and e-commerce teams running ERPNext hit a wall the moment marketing gets serious about promotions. ERPNext core ships Pricing Rule and a basic Coupon Code DocType, but they stop short of real campaign mechanics: there is no native buy-one-get-one engine, no tiered "spend more, save more" thresholds, no gift-card issuance and redemption ledger, and no clean way to scope an offer to a specific customer segment. Teams end up hand-keying discounts on each Sales Invoice, reconciling coupon abuse after the fact, and discovering that a promo that worked in the web shop behaves differently at the POS counter. The rules live in people's heads instead of in ERPNext.

We build a proper Frappe app — installed into your bench as its own module with versioned source — that layers a real promotions engine over ERPNext sales and POS. At its core is a Promotion DocType (rule type, priority, stacking policy, validity window) with child tables for conditions and rewards, plus Coupon Batch, Gift Card, and Gift Card Ledger Entry DocTypes. Coupon codes are generated in bulk (single-use, multi-use, or per-customer) with cryptographically random codes and server-side validation; usage limits and expiry are enforced in the database, not just the UI. BOGO, bundle, and tiered rules are evaluated by a whitelisted server-side method so the same logic runs identically whether the cart comes from the POS, a Sales Order, or a headless REST client.

Technically, the engine hooks into the transaction lifecycle through hooks.py doc events — validate and before_submit on Sales Order, Sales Invoice, and POS Invoice — to apply matched rewards, recalculate Sales Taxes and Charges, and stamp the applied promotion and coupon onto the document for audit. A whitelisted apply_promotions(doc) / validate_coupon(code, customer) API is exposed for the POS screen and any storefront, with a Client Script driving live feedback in the POS cart. Gift-card redemption debits the ledger atomically inside the invoice submit so balances can never go negative under concurrency. Segment targeting reuses ERPNext's Customer Group, Territory, and custom tags, and everything respects role permissions and permission-level (perm-level) field security so cashiers can apply but not author promotions. A scheduler event expires stale coupons and closes ended campaigns nightly. The app is built and tested against Frappe/ERPNext v15 and v16.

Because this is build-to-order, nothing is a shrink-wrapped download. We start with a scoping call to map your exact promotion types, stacking rules, POS workflow and reporting needs, then build against your version on a staging bench, run UAT with your team, and deploy to production with a rollback plan. Typical delivery is one working week from confirmed scope. You receive the full source in a git repository, documentation, a training session, and a post-go-live support window.

What you get

  • Installable source code for your commissioned version, built as a proper Frappe app for your ERPNext v15 or v16 bench
  • Installation and configuration on your instance, including hooks.py wiring, scheduler events and POS Client Script setup
  • Technical documentation — DocType schema, whitelisted API reference, doc-event flow and configuration guide
  • End-user guide plus a live training session for your marketing and POS/cashier teams
  • UAT on a staging bench with your real promotion scenarios, sign-off, and a documented rollback plan
  • Post-go-live support window for bug fixes and configuration questions
  • Git repository handover with full commit history and branch/tag for your deployed version
  • Sample promotion, coupon-batch and gift-card fixtures to seed and demonstrate the engine after install

Who this is for

Retail merchant running POS promotions

Operates one or more ERPNext POS counters and needs coupons, BOGO and gift cards to work reliably at the till — with cashiers able to apply offers but not invent them, and balances that reconcile at day close.

E-commerce marketing manager

Runs time-boxed campaigns across a web storefront wired to ERPNext and needs tiered discounts, segment-specific offers and usage-limited coupon batches that a headless cart can validate through the REST API.

ERPNext administrator / implementation lead

Owns the ERPNext instance and wants promotions handled by a clean, versioned Frappe app with proper DocTypes, permissions and doc-event hooks — not by ad-hoc pricing rules and manual invoice edits.

Finance & controls owner

Needs every discount and gift-card movement auditable — applied promotion and coupon stamped on each invoice, an atomic gift-card ledger, and a report tying discount cost back to revenue.

How Coupons, Discounts & Promotions Engine for ERPNext Compares

CriterionECOSIRECustom BuildCompetitorERPNext Native
BOGO & tiered discount rulesPurpose-built rules engine for BOGO, bundles and spend tiersAchievable but you design the whole engine yourselfVaries; many cover coupons only, not BOGO/tiersNo BOGO or tiered-threshold engine in core
Gift cardsIssuance + atomic redemption ledger DocTypeBuild ledger and concurrency safety from scratchRarely included; often a separate add-onNot available
POS + online parityOne server-side engine via doc events across POS, orders and APIYou must keep POS and web logic in sync yourselfOften web-only or POS-onlyManual per-document; behavior can diverge
Segment targetingCustomer Group, Territory and tag-scoped offersCustom conditions you code and maintainLimited or global-only targetingBasic via Pricing Rule conditions only
Abuse controls & auditDB-enforced limits, perm-level roles, stamped audit fieldsYou implement and test all controlsInconsistent; audit trail often thinMinimal coupon usage controls
Fit to your workflowScoped and built to your exact promotion rulesFully bespoke — highest cost and timelineFixed feature set; you adapt to itWhatever core happens to support
Version supportBuilt and tested on your v15/v16 benchDepends on your team's Frappe expertiseMay lag ERPNext releasesShips with ERPNext
Ownership & deliveryBuild-to-order, one working week, full git handoverLonger timeline; you own and staff itInstant install but no source, hosted lock-in riskIncluded, no delivery needed

Frequently Asked Questions about Coupons, Discounts & Promotions Engine

How long until it's live on our ERPNext instance?

This is build-to-order, so there is no instant download. After a short scoping call to lock the exact promotion types, stacking rules and POS workflow, typical delivery is one working week from confirmed scope. We build against your version on a staging bench, run UAT, then deploy to production with a rollback plan.

Doesn't ERPNext already have Pricing Rules and Coupon Codes?

It does, and where native `Pricing Rule` covers your need we use it. But core ERPNext has no real BOGO engine, no tiered spend thresholds, no gift-card issuance/redemption ledger, and no clean segment-scoped campaign model. This app adds those as proper DocTypes and a server-side rules engine while respecting ERPNext's existing pricing where it fits.

Does it work at the POS as well as online orders?

Yes. The rules are evaluated by a whitelisted server-side method and applied through `hooks.py` doc events on `Sales Order`, `Sales Invoice` and `POS Invoice`, so the same promotion behaves identically at the POS counter, on a Sales Order, and via the REST API for a headless storefront. A POS Client Script gives cashiers live coupon feedback.

Which Frappe/ERPNext versions do you support?

We build and test against Frappe/ERPNext v15 and v16. Tell us your exact bench version during scoping and we target that; the app is delivered as a versioned Frappe app you can upgrade alongside your instance.

What about support and updates after go-live?

Every build includes a post-go-live support window for bug fixes and configuration questions. Because you receive the full git repository, your team (or ours under a support agreement) can maintain and extend it. We also offer ongoing support and version-upgrade retainers separately.

Can we prevent coupon abuse and cashiers creating their own discounts?

Yes. Usage limits, expiry and per-customer restrictions are enforced in the database, not just the UI, and coupon codes are cryptographically random. Perm-level field security and role profiles let cashiers apply promotions while only marketing can author or edit rules. Every applied promotion and coupon is stamped on the invoice for audit.

Do we own the code?

Yes. You receive the full source as a proper Frappe app in a git repository with commit history, handed over on completion. There is no lock-in to a hosted-only marketplace add-on.

Request a quote

Coupons, Discounts & Promotions Engine

A build-to-order Frappe app that adds coupons, BOGO, tiered discounts, gift cards and segment-specific offers on top of ERPNext sales and POS. ECOSIRE scopes, builds, installs and supports it for your instance.

  • `Promotion` DocType with rule type, priority, stacking policy and start/end validity window, evaluated server-side so web, POS and API carts behave identically
  • Bulk coupon generation into a `Coupon Batch` — single-use, multi-use, or one-per-customer — with cryptographically random codes and DB-enforced usage counters
  • Whitelisted `validate_coupon(code, customer)` method returning eligibility, remaining uses and reward preview for real-time cart feedback
  • BOGO, buy-X-get-Y and free-gift rules with configurable qualifying and reward item sets, honoring UOM and item groups

Request a Quotation

Tell us about your Coupons, Discounts & Promotions Engine requirements and we'll send pricing, licensing options and a tailored proposal — usually within one business day.

No payment now. This sends a quote request to our team — we'll follow up by email with pricing and next steps.