- Home
- Apps
- SaaS Tools
- Customer Self-Service Portal & Knowledge Base
Illustrative previewA 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.
What is 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. 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
Support teams running on ERPNext hit a wall fast when customers want to help themselves. ERPNext ships a generic website login and a barebones portal that surfaces a customer's Sales Orders and Invoices, but it was never designed as a branded, ticket-driven self-service experience. Customers still email or call to ask "where is my order?", "can I get a copy of that invoice?", or "how do I configure feature X?" — and every one of those becomes a manual touch for an agent. The native Issue DocType exists, but there is no clean, on-brand front door for customers to open a ticket, watch its status, and find an answer before they ever create one. The result is a ticket queue full of questions your documentation could have answered.
This build-to-order app closes that gap as a first-class Frappe application installed on your ERPNext bench (v15 or v16). We build a custom Portal Settings-driven experience plus dedicated DocTypes — for example a Knowledge Article DocType with categories, tags, published/draft workflow and full-text search, and a Portal Ticket layer that maps cleanly onto ERPNext's native Issue so your agents keep working in the desk they already know. Customer-facing pages are delivered as Frappe web pages / portal templates guarded by a dedicated Portal Customer role profile, so a signed-in contact only ever sees rows linked to their own Customer via has_permission hooks and permission query conditions — no data leakage across accounts. Order and invoice history reads live from Sales Order, Sales Invoice and Delivery Note; the download center serves attached files and generated Print Format PDFs.
Under the hood the app is wired the way a Frappe engineer would expect. Document events in hooks.py (on_submit, on_update, after_insert) fire server-side logic to keep ticket status in sync and to trigger notifications; doc_events and controller server scripts enforce validation and status transitions. Whitelisted methods (@frappe.whitelist()) expose a clean, permission-checked surface the portal front-end and the standard Frappe REST API (/api/resource, /api/method) both consume — so the same endpoints power a future mobile or headless client. Notification hooks push updates over email and WhatsApp (via your provider of choice) when a ticket changes state or an agent replies, and scheduler events (scheduler_events in hooks.py) handle digest emails, SLA reminders and knowledge-base re-indexing. Client scripts sharpen the desk side for agents where the standard form isn't enough.
Because this is build-to-order, nothing is a shrink-wrapped download you install blind. We start with a short scoping call, confirm the DocTypes, roles, notification channels and branding you need, and write that into a fixed scope. From confirmed scope, typical delivery is one working week depending on complexity and how many integrations (WhatsApp gateway, SSO, custom Print Formats) are in play. We build against a staging copy of your bench, run UAT with your team, then install on production during a scheduled window with a rollback plan in hand. You receive the full source as an installable Frappe app in a git repository you own, so you are never locked to us for future changes.
What you get
- Installable Frappe app (source code) for your configured version, ready to `bench get-app` / `bench install-app`
- Installation and configuration on your staging and production ERPNext bench, including role profiles, Portal Settings and notification credentials
- Technical documentation covering DocTypes, hooks, whitelisted methods, scheduler events and the permission model
- End-user guide plus a live training session for your support team and admins
- UAT on a staging copy of your bench with a documented, tested production rollback plan
- Post-go-live support window for bug fixes and adjustments after launch
- Handover of the complete git repository so you own and can extend the source
- Notification-channel setup (email templates and WhatsApp gateway wiring) validated against a real test send
Who this is for
Head of Customer Support
Owns the ticket queue and CSAT. Wants self-service deflection — a knowledge base and status tracking that cut repetitive 'where's my order' and 'how do I' tickets so agents focus on real problems.
ERPNext System Manager / Admin
Runs the bench and guards data integrity. Needs a properly built Frappe app with clean DocTypes, role profiles and permission query conditions — not a bolt-on that leaks one customer's data to another.
Operations / Customer Success Lead
Wants customers to self-serve order history, invoices and documents 24/7 without pinging the team, and to be notified over WhatsApp and email when their tickets move.
Founder / COO at a growing product or services business
Scaling support headcount linearly with customers is painful. Wants a branded portal that makes the company look bigger and more professional while keeping support costs flat.
How Customer Self-Service Portal & Knowledge Base Compares
| Criterion | ECOSIRE | Custom Build | Competitor | ERPNext Native |
|---|---|---|---|---|
| How you get it | Built to your scope, installed and supported by ECOSIRE | You hire/assign developers to build from scratch | Download a generic app and self-configure | Enable the built-in ERPNext website portal |
| Knowledge base | Custom `Knowledge Article` DocType with search, tags and workflow | Whatever your team has time to build | Often absent or a basic web page list | None — no first-class KB DocType |
| Customer ticketing | Branded portal ticketing mapped onto native `Issue` with status tracking | Buildable but you design the whole flow | Basic issue form, limited status visibility | Agents use Issue in the desk; no branded customer front door |
| Data isolation | Role profile + `has_permission` + permission query conditions, tested | Depends entirely on your developers getting it right | Varies; often generic and unverified | Standard portal scoping only, not ticket/KB aware |
| Notifications | Email + WhatsApp hooks on state change, configurable templates | Build and wire each channel yourself | Usually email-only | Basic email notifications on documents |
| Branding & UX | Fully branded portal templates on your domain | Design and build it yourself | Limited theming within the app's constraints | Generic Frappe portal look |
| Source & lock-in | Full git repo handover — you own it | You own it but carry all build risk | Closed or licensed; upgrades on their schedule | Core code you can't diverge without a fork |
| Support after launch | Post-go-live support window + optional ongoing engagement | Your team maintains it | Vendor support tiers, variable responsiveness | Community/self-support or your ERPNext partner |
Frequently Asked Questions about Customer Self-Service Portal & Knowledge Base
Is this an app I can download and install myself right now?
No. This is a build-to-order product. ECOSIRE scopes, builds, installs and supports it for you on your own ERPNext bench. It is not an existing Frappe Cloud Marketplace listing you download instantly — we build your version to your confirmed requirements and hand over the source.
How long does delivery take?
Typical delivery is one working week from confirmed scope. After a short scoping call we fix the DocTypes, roles, notification channels and branding, then build against a staging copy of your bench, run UAT, and install on production. Timelines shift with complexity — extra integrations like a WhatsApp gateway, SSO or custom Print Formats add time.
Which ERPNext versions does it support?
We build and test against Frappe/ERPNext v15 and v16, delivered as a standard installable Frappe app on your existing bench. Tell us your exact version during scoping and we target it specifically.
How do you stop one customer from seeing another customer's orders or tickets?
Data isolation is enforced server-side, not in the browser. A dedicated `Portal Customer` role profile combined with `has_permission` hooks and permission query conditions restricts every read to rows linked to the signed-in contact's `Customer`. The portal front-end and the Frappe REST API both go through the same permission-checked whitelisted methods.
How does the knowledge base reduce tickets?
The knowledge base is a custom `Knowledge Article` DocType with categories, tags, a published/draft workflow and full-text search. On ticket creation we surface matching articles so customers can self-resolve before submitting. A scheduler event re-indexes content periodically so search stays fresh.
What about notifications — can customers get WhatsApp updates?
Yes. Notification hooks fire on ticket state changes and agent replies over both email and WhatsApp (via your chosen gateway). Templates are configurable, and scheduler events handle SLA reminders and digest emails. We wire and validate your channels during setup.
What support and updates do we get after launch, and do we own the code?
You receive the full source in a git repository you own, so you're never locked to us. Delivery includes a post-go-live support window for bug fixes and adjustments. Ongoing enhancements, version upgrades and new features are available on request as a separate engagement.
Related Modules

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.

Customer Loyalty & Points Program
A configurable points, tiers and rewards loyalty engine built as a proper Frappe app and wired into your ERPNext sales, POS and customer records. Build-to-order: we design, install and support it for your business.

Direct Booking Engine for Hotels
A commission-free website booking widget that reads live rates and availability from your ERPNext hotel PMS, captures deposits or full payment online, and creates the reservation directly in ERPNext — no OTA commission, no double entry. Built to order, installed, and supported by ECOSIRE.

Distributor & Dealer Portal with Secondary Sales
A self-service ERPNext portal where distributors and dealers place orders, report secondary sales, claim schemes and see their own credit and ledger — built, installed and supported by ECOSIRE as a proper Frappe app on your ERPNext v15/v16 instance.
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.
- Custom `Knowledge Article` DocType with category/tag taxonomy, draft-to-published workflow, and full-text search over the article body
- `Portal Ticket` layer mapped onto ERPNext's native `Issue` DocType so agents keep working in the desk they already use
- Per-customer data isolation via a dedicated `Portal Customer` role profile plus `has_permission` hooks and permission query conditions
- Order & invoice self-service reading live from Sales Order, Sales Invoice and Delivery Note — scoped to the signed-in contact's `Customer`