Setting Up a Customer Portal in a Multi-Tenant WMS
How to give 3PL clients role-safe visibility into their own data — without exposing operational controls, other clients' inventory, or cross-workspace information.
Why customer portals matter
In 2026, brand clients expect real-time visibility into their own inventory, orders, shipments, and invoices. A 3PL without a customer portal looks operationally backward — and burns operations team time on email-and-screenshot status requests that customers should be able to self-serve.
A working customer portal also reduces support volume by 30-60% within the first quarter. The questions that used to come in via email ("where is my inventory?", "did order #1234 ship?", "what's on this invoice?") get answered by the customer looking at their own dashboard.
What clients actually need to see
Real-time inventory: current on-hand by SKU, by location if relevant, with movement history. Filter by date range, lot/serial if applicable.
Order status: open orders, in-fulfillment, shipped, delivered. Tracking links to the carrier. Exceptions surfaced with context.
Shipment history: outbound shipments with date, carrier, tracking number, weight, dimensions. Downloadable as CSV for the client's own reporting.
Invoices: current month's accrued charges (if the platform supports it), historical invoices with line-item detail, payment status. Optional payment integration for direct invoice settlement.
Operational documents: customs documentation, COAs, packing slips, BOLs, any documents the operations team produces during fulfillment.
What clients should not see
Other clients' anything. Any leakage across the workspace boundary is a contractual problem, possibly a regulatory one (depending on what data crosses).
Internal operational controls. Clients should see their own data, not the underlying operational mechanics of how it got there. Operator notes, internal exception comments, and ops team chat should stay internal.
Cost-side data. Carrier costs, internal labor allocations, and your margin structure are commercially sensitive. Clients see what they pay, not what it costs you.
Other clients' rate cards. Even at the schema level, no client should be able to infer the existence or structure of another client's commercial terms.
Role-based access within a client workspace
Even within a single client's workspace, role separation matters. Most 3PL clients designate at least two roles internally:
Operations contact: Full visibility into inventory, orders, and shipments. Can place orders or trigger operational workflows if you allow it.
Finance contact: Visibility into invoices, payment status, and historical billing. Limited or no operational visibility.
Some larger clients want additional read-only access for executives, account managers on the brand side, or auditors. Role granularity should be configurable.
Customer self-service workflows
Beyond visibility, the highest-leverage customer portal capabilities are the ones that let clients self-serve common workflows:
Inbound notification: Client uploads an ASN or creates an inbound expected receipt directly. Operations gets the pre-alert without an email exchange.
Order placement: For B2B 3PL operations (less common in DTC), clients can place outbound orders directly in the portal rather than via email.
Inventory adjustment requests: Client can flag inventory issues or request specific adjustments. Operations reviews and approves rather than receiving an email request and then keying it in.
Document downloads: Self-service access to invoices, BOLs, packing slips, COAs, and customs paperwork without operations team manual delivery.
Continue reading
See Trenvar's customer portal
Built-in customer portal scoped to each workspace. Clients see their inventory, orders, shipments, and invoices in real time — with built-in customer chat for direct operations team contact.