I Built SETSUZOKU OS: An Operating System to Manage the Entire Client Journey

From First Inquiry to Final Payment.

Most service businesses don't have a problem finding customers. They have a problem managing everything that happens after a customer shows interest.

Think about a typical digital agency or IT services company.

A customer sends an inquiry through a website. Someone records it in a spreadsheet. A quotation is prepared separately. Once the customer approves, the team creates a project in another tool. Deliverables are shared through email or WhatsApp. Feedback gets lost. Invoices are generated somewhere else.

Everything is disconnected.

I started thinking:

What if we could manage this entire journey through one unified system?

That's the idea behind SETSUZOKU OS.

What is SETSUZOKU OS?

SETSUZOKU OS is a multi-tenant business operating system designed for:

  • Digital marketing agencies
  • Software development companies
  • Creative studios
  • IT service providers
  • Consulting businesses

The objective is simple: connect customer management, business operations and financial workflows into one platform.

Instead of managing multiple disconnected tools, businesses can manage their customer journey from a unified workspace.

The Problem We're Trying to Solve

Imagine a software agency receives a new project inquiry.

The typical workflow looks something like this:

  1. Receive an inquiry.
  2. Add customer details to a spreadsheet.
  3. Follow up with the potential client.
  4. Prepare and send a quotation.
  5. Wait for approval.
  6. Create a project.
  7. Assign tasks to employees.
  8. Submit deliverables.
  9. Collect client feedback.
  10. Generate an invoice and track payment.

Each step is connected to the previous one, but businesses often manage them using different applications.

This creates operational friction.

SETSUZOKU OS aims to bring these workflows together.

How the System Works

The platform follows a continuous customer journey:

Inquiry → Lead Management → Client Profile → Quotation → Project → Tasks → Deliverables → Client Approval → Invoicing

Every stage connects to the next.

The goal isn't simply to create another CRM or project management tool. It's to connect the entire business workflow.

Technology Stack

I wanted to build the platform with a modular architecture that could support multiple organizations and different permission levels.

Here's the current technology stack:

Layer Technology
Frontend React 18
Build Tool Vite
Language TypeScript
Styling Tailwind CSS
Backend Node.js + Express
Database PostgreSQL 16
ORM Prisma
Validation Zod
Workspace pnpm Monorepo

The project follows a modular monolith architecture.

The repository is organized into:

  • apps/web – Frontend application
  • apps/api – Backend REST API
  • packages/database – Database schema and Prisma client
  • packages/shared – Shared types, validation contracts and permissions
  • docs – Technical documentation and architecture

Five Engineering Decisions Behind SETSUZOKU OS

1. Multi-Tenant Architecture

Different organizations should be able to use the same platform without accessing one another's business information.

The system uses organization-level scoping, authentication middleware and tenant guards.

The organization context is passed through the X-Organization-Id header.

The goal is to maintain strict data isolation between organizations.

2. Seven-Level Role-Based Access Control

Not everyone should have access to everything.

I implemented a seven-role permission structure:

  • SUPER_ADMIN
  • ORGANIZATION_OWNER
  • ADMIN
  • MANAGER
  • EMPLOYEE
  • FINANCE
  • CLIENT

Each role has a different responsibility and access scope.

For example, an employee can work on assigned tasks, while the finance role manages quotations and invoices.

Clients have access to their dedicated portal rather than internal team operations.

3. Decimal-Safe Financial Calculations

Financial calculations require accuracy.

Using ordinary JavaScript floating-point arithmetic for monetary values can introduce precision issues.

For this reason, the system uses PostgreSQL Decimal(12, 2) for monetary fields.

This is particularly important for quotations, taxes and line-item calculations.

4. Version-Controlled Deliverables

Client feedback and revisions are part of almost every service business.

Instead of simply replacing an old deliverable, SETSUZOKU OS maintains multiple versions.

For example:

  • Deliverable V1 – Initial submission
  • Deliverable V2 – First revision
  • Deliverable V3 – Final revision

Client approval is tracked through an approval workflow.

An approved version should not silently change.

5. Dedicated Client Portal

Internal business operations and client-facing interactions should remain separate.

The dedicated /portal experience allows clients to review deliverables, approve proposals and provide feedback without exposing internal team discussions or operational information.

Current Development Status

This is an actively evolving product.

The current roadmap is:

  • Foundation, authentication and RBAC – Complete
  • CRM, lead pipeline and quotations – Complete
  • Project management, tasks and client portal – Complete
  • Invoicing and automated ledger – In progress
  • Payment gateway webhooks and analytics – Planned

I'm sharing the current implementation and roadmap openly because I believe real product development should be discussed honestly.

What's Next?

There are several areas I want to explore as development continues:

  1. Automated payment reconciliation.
  2. Better business analytics and reporting.
  3. Workflow automation.
  4. Integrations with communication platforms.
  5. More efficient client onboarding.

The bigger vision is to make SETSUZOKU OS a practical operating layer for service-based businesses.

Open Source and Community Feedback

I'm sharing the project publicly because I want developers to explore the architecture, understand the implementation and challenge the technical decisions.

If you're interested in:

  • SaaS architecture
  • Multi-tenant applications
  • React and Node.js
  • PostgreSQL and Prisma
  • Business workflow automation

I'd genuinely appreciate your feedback.

Explore the project:

If you were building an operating system for a digital agency, what feature would you prioritize first?

I'd love to hear your thoughts.

Built by Uma Krishna Kanth | Setsuzoku LLP

SETSUZOKU OS - From First Inquiry to Final Payment.