Key Capabilities
A branded self-service storefront that runs on your live ERP data.
Online Ordering
Customers browse your product catalog, add to cart, and place orders that flow directly into your sales pipeline. No re-keying, no phone tag.
Invoice & Payment History
Customers view all their invoices, check payment status, and download PDF copies. Accounts receivable questions answered without a single email.
Shipment Tracking
Real-time visibility into order status and delivery tracking. Customers see exactly where their order is in the pick → pack → ship workflow.
Multi-Role Access
Four portal roles: Admin, Purchasing, Accounts, Viewer. Your customer's team can divide responsibilities without sharing one login.
How It Works
Invite Customers
Create portal users from your customer records. Each gets their own login credentials — completely separate from your internal ERP users.
They Self-Serve
Customers log in, browse products at their assigned price list, place orders, and check their account — day or night, no staff needed.
Orders Flow In
Portal orders create Sales Orders in your ERP automatically. Your team picks, packs, ships, and invoices as usual — the customer sees updates in real time.
Portal login screenshot
Architecturally Isolated
The portal runs on a completely separate authentication system. Portal users are not Django users — they cannot access any ERP views, even by manipulating URLs. Portal middleware enforces this boundary on every request.
- PortalUser model — entirely separate from Django auth.User
- PortalAuthMiddleware — exclusive to /portal/ routes
- No session sharing between ERP and portal
- Each portal user sees only their own company's data
- Four roles control what each portal user can do
Portal admin settings screenshot
Per-Customer Configuration
Each customer can be assigned a specific warehouse (for stock availability) and a specific price list (for custom pricing). These overrides let you show different products and prices to different customers.
- CustomerPortalOverride: warehouse and price list per customer
- Default fallback to company-wide settings if no override set
- Price list assignment controls what prices customers see
- Warehouse assignment controls stock availability display
Portal order tracking screenshot
Order-to-Delivery Visibility
From the moment a customer places an order, they can track its progress: order confirmed → picking → packed → shipped → delivered. No more "where's my order?" phone calls.
- Live order status synced from Sales Order workflow
- Delivery tracking numbers visible when available
- Invoice PDF download from portal
- Payment status: paid, partially paid, overdue
Works Seamlessly With
Stop Taking Orders by Phone
Give your customers a self-service portal that runs 24/7 — while your team focuses on fulfillment.