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 $249.00 USD; request a quote for a scoped proposal.

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.
今すぐのお支払いはありません。これはチームへの見積もり依頼を送信します。価格と次のステップをメールでご案内します。
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.
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
Applied coupon codes, `Pricing Rule` discounts and item-level price changes reflected the instant the cashier acts
Promotional and ad content rotation between sales, triggered automatically on terminal idle with configurable timeout
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 2-4 weeks 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.
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.
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.
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.
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.
ecosire.com でライセンスを購入し、アカウント ダッシュボードから Customer-Facing Display (CFD) for ERPNext POS アプリの ZIP をダウンロードします。
ZIP をベンチのアプリ フォルダーに抽出するか、抽出されたアプリへのパスを指定して「bench get-app」を実行します。
`bench --site SITE_NAME install-app APP_NAME` を実行し、続いて `bench maigrate` を実行して、Customer-Facing Display (CFD) for ERPNext POS をインストールし、そのスキーマを適用します。
サイトの ECOSIRE ライセンス設定を開き、ライセンス キーをアクティブ化します。無料の ecosire_connect アプリと ecosire_license_client アプリが必要です。
| 基準 | エコシエール | カスタムビルド | 競合他社 | オドゥー ネイティブ |
|---|---|---|---|---|
| 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 | |
| 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 | |
| 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 | |
| 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 | |
| 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 | |
| Source & handover | Full source, git repo handover, you own it | You own it, but also the maintenance overhead | Usually closed-source binary or licensed | |
| Install & UAT | Installed on your env, staged UAT + rollback plan | Your team plans and runs deployment | Self-serve install, limited hand-holding | |
| Support after launch | Post-go-live support window from the builders | In-house only, no external safety net | Ticket queue, generic and impersonal |
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.
Typical delivery is 2-4 weeks 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.
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.
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.
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.
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.
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.
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.