← Back to Case Studies
Production Verified 🟢 Lighthouse 100/100 🚀

Multi-Brand SaaS Architecture for Iriscopy & Iris Graphic

Unifying print services and complex reprographic workflows via high-speed interactive portals backed by a centralized NestJS core API and high-availability MySQL storage.

Engineering Specs

Topology Decoupled Monorepo Client-Server SaaS
Client Interfaces
Angular 19 B2C Copy Shop Angular 19 Custom Graphics Angular 19 Administrative Backoffice
Core Technologies NestJS (Node 22), TypeORM, MySQL 8, Dockerised virtualization
Payment Channels Redsys Integration API
Measured Target Sitemap and Catalog Sync in < 500ms

1. The Scenario: Divergent Business Models under One Hood

Our partner's multi-tier printing operations faced severe administrative drag. They managed two entirely separate customer-facing portfolios, each calling for divergent user experiences and inventory workflows:

B2C Fast Self-Service

Hosted at iriscopyshop.app, tailored for rapid standard PDF uploads, custom black/color binding adjustments, and hassle-free instant bank checkout.

B2B Heavy Graphic Configs

Hosted at app.iris-graphic.com, designed for high-end catalog custom-printing ordering (brochures, custom bounding rollers, books, posters) with explicit metadata tracking.

Gonseclabs was tasked to develop a single, performant **Web-to-Print API backend (iris-api)** to act as the single source of truth for both channels, orchestrate price variations, automate WooCommerce synchronization, and power an internal real-time queue dispatcher for production operators.

2. Real-Time Network & Data Architecture

Rather than adopting a complex, fragile monolith structure, we built a fully isolated client-server network inside lightweight Docker configurations:

INTEGRATION FLOW DIAGRAM
  [Self-Service B2C] ---> (iriscopyshop.app) --------\
                                                      \
  [Custom Printing]  ---> (app.iris-graphic.com) ------+---> [NestJS API Core (3001)] ---> [MySQL 8]
                                                      /              |                     (TypeORM)
  [Operator Desk]    ---> Angular Admin Dashboard ---/               +---> [Rust Sidecar]
                                                                           (Mass Color Analysis)
                                                                                   |
                                                                                   +---> Sync (WooCommerce)
  • NestJS Microservice API: Written in clean TypeScript and running on Node 22, managing secure Redsys payments, JWT authentication, user accounts, and fulfillment location queries out of the box.
  • WooCommerce Live Inventory Linker: A custom-designed connector mapping product options and category price rules to and from the core WordPress database cleanly using asynchronous background workers.
  • Operator backoffice engine ("iris-order"): Provides real-time print status tracking across physical facilities via reactive WebSocket channels.

3. Measurable Technical Impact

60% Reduction in wait times as self-checkout is fully streamlined.
< 500ms Catalog refresh latency, keeping stock prices fully accurate.

By separating frontend delivery from core business logic, Iriscopy and Iris Graphic now process thousands of school-season print orders daily with absolute stability, 100% database consistency, and minimal human oversight.