- Home
- Apps
- SaaS Tools
- Customer-Facing Display (CFD) for ERPNext POS
Illustrative previewA second-screen customer display that mirrors the live ERPNext POS cart,
running totals, tax/discount breakdown, promotions and a digital receipt QR. Built to order by
ECOSIRE for ERPNext v15/v16, then installed and supported.
What is Customer-Facing Display (CFD) for ERPNext POS?
A second-screen customer display that mirrors the live ERPNext POS cart, running totals, tax/discount breakdown, promotions and a digital receipt QR. Built to order by ECOSIRE for ERPNext v15/v16, then installed and supported. Built to order by ECOSIRE for ERPNext v15, v16 — indicative price from $999.00 USD; request a quote for a scoped proposal.
Key Features
Built to order, done for you
No DIY setup — a working app, built, installed and supported by ECOSIRE.
- 1
You order
Start with a one-time build price. We scope it with you at kickoff.
- 2
We build & install
ECOSIRE builds, configures and installs it on your ERPNext.
- 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
At the counter, ERPNext POS shows the cashier a full cart, but the customer sees nothing until the receipt prints. That opacity costs trust: shoppers can't confirm items and prices as they're scanned, disputes surface after payment, and the idle second screen every retailer already owns shows a Windows desktop instead of your promotions. ERPNext core has no customer-facing display surface — the POS Awesomebar and cart live entirely inside the cashier's Point of Sale page, there's no read-only mirrored view, and nothing publishes cart state to an external screen in real time. This is where a native ERPNext build, rather than a bolt-on kiosk, pays off.
We build a proper Frappe app (ecosire_cfd) installed onto your bench alongside ERPNext, not a scraped overlay. The core is a lightweight public display route served by the Frappe web framework that subscribes to POS events over the built-in socket.io realtime channel. A client script injected into the Point of Sale page publishes cart mutations — item add/remove, quantity change, applied Pricing Rule discounts, coupon codes, and net/tax/grand totals — via frappe.realtime.publish scoped to a per-terminal room derived from the POS Profile. The display route renders the itemized cart, a running total with a full tax and discount breakdown computed from the same Sales Taxes and Charges logic ERPNext uses, and swaps to promotional/ad content between sales when the terminal is idle. Nothing is duplicated or re-keyed: the display reflects exactly what the cashier's POS state holds.
On checkout, hooks.py doc events on POS Invoice (on_submit) generate a digital receipt and render a QR code on the customer screen — linking to a hosted receipt or feeding a loyalty enrolment flow — plus an optional tip-prompt and a short feedback capture (rating/comment) written back to a custom DocType so the data stays queryable inside ERPNext. Content, ad rotation, per-terminal pairing and idle timeouts are governed by a CFD Settings DocType with its own permissions, and a scheduler event housekeeps stale display sessions. Everything is exposed through whitelisted methods and the standard Frappe REST API, guarded by role profiles so only the POS terminal role can drive a given display. It runs on ERPNext v15 and v16.
Because this is build-to-order, we start from your actual checkout flow rather than shipping a fixed product. After a short scoping call we confirm the terminal hardware, branding, promo/loyalty and tip requirements, then build against your scope. Typical delivery is one working week from confirmed scope. You get the installable source for your version, staged UAT on a copy of your site with a rollback plan, install and configuration on your environment, documentation, a training session, a git repo handover, and a post-go-live support window. No instant download, no generic template — a display built for your ERPNext POS and supported by the team that wrote it.
What you get
- Installable source code for your ERPNext version (v15 or v16), delivered as a proper bench-installable Frappe app
- Installation and configuration on your environment, including per-terminal `POS Profile` pairing and role setup
- Technical documentation: DocTypes, hooks, whitelisted methods, realtime channels and configuration reference
- End-user guide plus a live training session for cashiers and store managers
- UAT on a staging copy of your site with a documented rollback plan before any production change
- Post-go-live support window for defect fixes and configuration adjustments
- Git repository handover with full commit history and setup instructions
- Handover call covering deployment, updates and how to extend the app in future
Who this is for
Independent retail store owner
Runs one or a few ERPNext POS lanes and wants shoppers to see each item and price as it's scanned, cutting checkout disputes and building trust at the counter without buying separate kiosk software.
Restaurant or QSR operator
Needs a customer-facing screen that shows the live order, applied combo/discount rules and a tip-prompt at payment, plus a feedback capture — all tied back into the same ERPNext POS the staff already use.
Multi-branch retail IT manager
Standardizes on ERPNext across locations and needs a per-terminal, role-gated display app that deploys consistently on the bench for v15/v16, with clean source and a git handover rather than an opaque third-party binary.
Marketing or store-experience lead
Wants the idle second screen to run branded promotions and loyalty/receipt QR flows between sales, driving enrolment and repeat visits directly from the checkout moment.
How Customer-Facing Display (CFD) for ERPNext POS Compares
| Criterion | ECOSIRE | Custom Build | Competitor | ERPNext Native |
|---|---|---|---|---|
| Fit to your POS flow | Built against your actual checkout, terminals and rules | Fully bespoke but you own the build effort | Generic layout, limited to the vendor's assumptions | No customer-facing display exists at all |
| Realtime cart mirroring | Native socket.io per-terminal rooms, no re-keying | Possible, but you design the channel yourself | Often polling-based or partial mirroring | Cart is visible only on the cashier screen |
| Tax & discount breakdown | Uses ERPNext's own Sales Taxes and Pricing Rule logic | Must be reimplemented and kept in sync | May recompute totals and drift from POS | Shown only inside the cashier POS page |
| Promos, loyalty QR & tips | Idle ad rotation, receipt/loyalty QR, tip-prompt included | Each feature built from scratch on your budget | Some included, often as paid add-ons or fixed | Not available |
| ERPNext v15/v16 support | Delivered and tested for your exact version | Depends on your team's version discipline | Version support varies; upgrades can break it | N/A |
| Source & handover | Full source, git repo handover, you own it | You own it, but also the maintenance overhead | Usually closed-source binary or licensed | N/A |
| Install & UAT | Installed on your env, staged UAT + rollback plan | Your team plans and runs deployment | Self-serve install, limited hand-holding | N/A |
| Support after launch | Post-go-live support window from the builders | In-house only, no external safety net | Ticket queue, generic and impersonal | Community forums only |
Frequently Asked Questions about Customer-Facing Display (CFD) for ERPNext POS
Is this a ready-made app I can download and install today?
No. This is a build-to-order engagement. ECOSIRE builds the customer-facing display against your specific POS flow, terminals and branding, then installs and supports it. There is no instant download or off-the-shelf marketplace binary.
How long does delivery take?
Typical delivery is one working week from confirmed scope. After a short scoping call we lock the requirements — terminal hardware, promo/loyalty and tip needs, branding — and the timeline runs from that agreed scope, not from first contact.
Which ERPNext versions are supported?
We build for ERPNext v15 and v16 as a proper bench-installable Frappe app. During scoping we confirm your exact version and bench setup so the delivered source matches your environment.
How does the display stay in sync with the cashier's POS in real time?
A client script on the `Point of Sale` page publishes cart mutations over Frappe's built-in socket.io realtime channel to a per-terminal room. The display route subscribes to that room, so items, discounts and totals update the instant the cashier acts — no polling, no re-keying.
Does it need a separate server or third-party service?
No. It runs entirely inside your existing ERPNext bench — DocTypes, hooks, whitelisted methods, realtime and scheduler are all native Frappe. The display is just an additional route served by your site; you only need a second screen at each lane.
What about updates and support after go-live?
Every engagement includes a post-go-live support window for defect fixes and configuration adjustments, plus a git repository handover so you own the source. Ongoing enhancements or an extended support/maintenance retainer can be scoped separately.
Can it handle promotions, loyalty and tips, not just the cart?
Yes. Between sales the idle screen rotates branded promotional content; at checkout it renders a receipt/loyalty QR on `POS Invoice` submit, can show a configurable tip-prompt, and captures a post-sale rating/comment into a custom DocType that stays queryable inside ERPNext.
Related Modules

Cost Center & Project Profitability for ERPNext
A build-to-order ERPNext app that turns your General Ledger dimensions into true per-project, per-job, and per-cost-center profitability — committed costs, overhead allocation, WIP, and dashboards included. ECOSIRE scopes, builds, installs, and supports it.

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.

Customer Review & Reputation Management
A build-to-order ERPNext app that automatically requests reviews from customers over WhatsApp, SMS, and email after a sale, then aggregates your Google and Facebook reviews into ERPNext with sentiment tagging and a negative-feedback interception flow. ECOSIRE scopes, builds, installs, and supports it.

Customer Self-Service Portal & Knowledge Base
A branded ERPNext self-service portal that lets customers view their own orders and invoices, raise and track support tickets, and search a knowledge base — built as a proper Frappe app on top of your ERPNext instance. ECOSIRE scopes, builds, installs and supports it for you.
Customer-Facing Display (CFD) for ERPNext POS
A second-screen customer display that mirrors the live ERPNext POS cart, running totals, tax/discount breakdown, promotions and a digital receipt QR. Built to order by ECOSIRE for ERPNext v15/v16, then installed and supported.
- Read-only second-screen route served by the Frappe web framework, paired per terminal via the `POS Profile` (no cashier UI is exposed to the customer)
- Live itemized cart mirroring driven by a client script on the `Point of Sale` page publishing mutations over the built-in socket.io realtime channel
- Running total with a full tax and discount breakdown computed from the same `Sales Taxes and Charges` and `Pricing Rule` logic ERPNext applies
- Per-terminal realtime rooms via `frappe.realtime.publish` so multiple lanes never cross-talk