Scope access to the customer.
Server-side checks combine the current customer context, session identity, and specific capabilities. Customer and staff views share the system while exposing the records and actions appropriate to each user.
Client software engineering
One place for customer requests, operations, and billing reports.
Custom software for a client
Application development · AWS infrastructure · Reporting
Scroll across to explore the interface.
View full-size screenshot →
The interface
A customer portal and staff workspace share the same application, with scoped permissions, request workflows, documents, and reporting. Built for the day-to-day work of a service business.
The portal gives customers a place to see their requests and reporting. Staff work from the same underlying records, with the tools to manage the queue and keep progress visible.
The request record connects customer intake, staff work, status changes, and follow-up in one system.
System architecture
Customer and staff views connect to one application, with separate services for records, documents, reporting imports, and notifications.
Customers submit requests and view progress. Staff triage, assign, and manage the work.
A containerized React application uses Auth.js and Drizzle, with an AWS application load balancer handling web traffic.
PostgreSQL stores application records, S3 stores documents, and KMS supports field encryption.
A read-only integration imports billing summaries for the reporting views.
Scheduled jobs trigger notification sweeps in the application.
Email delivers sign-in links and notifications.
Engineering decisions
Server-side checks combine the current customer context, session identity, and specific capabilities. Customer and staff views share the system while exposing the records and actions appropriate to each user.
Transactional records live in PostgreSQL, documents in S3, and reporting summaries arrive through a read-only import. KMS supports encryption for selected fields. Each part has a clear job in the application.
AWS CDK defines the infrastructure, with separate development and production stacks. The application ships as a Docker container, so deployment configuration and application code can be maintained together.
What would you like to build or improve?
hello@outermost.us