LOLE OS
Shopify runs commerce. LOLE OS runs the operation.
LOLE OS is the staff-only operating layer for LOLE Boutique, connecting online commerce, the physical store, inventory, customers, contribution reporting, AI-assisted workflows, and platform control in one application. Shopify remains the commerce source of truth. LOLE OS turns that data into the workflows staff actually use to run the business.
Built end to end as an independent client engagement.
- Role
- Freelance Software Engineer
- Client
- LOLE Boutique
- Surfaces
- Admin · POS · Developer
- Languages
- English · Spanish
- Delivery
- Feature Freeze v1.0
- Repository
- Private
Stack
- Next.js 16
- React 19
- Supabase
- Shopify GraphQL
- OpenAI
- Railway
What LOLE OS Solves
LOLE Boutique already had Shopify for commerce. What it did not have was one place for staff to operate the business around it.
Orders lived in one workflow. Inventory required additional context. Physical-store sales needed a floor interface. Product costs, contribution, customers, suppliers, invoices, social activity, and platform health each introduced another operational surface.
LOLE OS brings those workflows together without replacing the systems that already own the underlying truth.
Shopify owns commerce. Supabase owns operational state. LOLE OS owns the staff workflow.
Shopify owns commerce. Supabase owns operational state. LOLE OS owns the staff workflow.
Shopify
- Products
- Inventory
- Orders
- Customers
LOLE OS
- Floor
- Operations
- Money
- Clients
- AI
- Platform
One Application. Three Operating Surfaces.
Admin for the back office. POS for the floor. Developer for the platform. Same app — different operating contexts.
Today
Orders waiting 7 Low stock 4 Missing costs 3 Revenue Contribution Clients Collections Invoices
The URL determines the operating shell. Staff move between administration, floor register, and platform control without leaving the application.
From the Floor to the Back Office
Real workflows instead of category cards — how staff actually move work through the system.
Sell in person
- POS
- Select products
- Record payment method
- Create pos_sale
- Deduct inventory
- Optional Shopify write
- Revalidate operational views
Floor sales are recorded directly inside LOLE OS. Staff search the live product mirror, build a sale, record cash/card/Zelle payment, update inventory, and immediately reflect the transaction across store operations.
LOLE records floor payments. It does not process them.
Receive inventory from an invoice
- Invoice image/PDF
- Vision extraction
- Staff review
- Product / SKU match
- Inventory + cost apply
- Revert snapshot
AI extracts. Staff approve. Application code applies.
Understand what the business actually made
- Online orders
- POS sales
- Revenue
- − COGS
- − Shipping absorbed
- Contribution
Finance views calculate contribution deterministically from operational data. Models can explain the result, but they do not produce the number.
Three Operating Planes
Store Floor
For staff actively running the physical location.
- POS register
- Today's sales
- Inventory lookup
- Client lookup
- Sales history
- Finance snapshots
- AI assistant
Business Operations
For managing the broader company.
- Shopify orders
- Inventory and costs
- Providers
- Contribution reporting
- Customers and VIP signals
- Collections
- Marketing
- Subscribers
- Invoice intake
- Staff access
Platform Operations
For operating LOLE OS itself.
- Integration health
- Sync status
- Jobs
- Webhook failures
- Audit trail
- Feature flags
- AI cost
- AI kill switches
- Environment presence
Commerce Truth Without Commerce Coupling
Shopify stays authoritative. LOLE OS mirrors, interprets, and operates — without becoming a shadow storefront.
Shopify
Commerce source of truth
- Products
- Inventory
- Orders
- Customers
Supabase
- Products
- Orders
- Customers
- POS sales
- Costs
- Alerts
- AI history
Authorized write path
- Staff action
- Authorization
- Feature flag
- Shopify mutation
- Mirror update
- Cache invalidation
Fresh by webhook. Correct by reconciliation.
Shopify data reaches LOLE OS through two paths. Webhooks deliver fast, entity-level updates after Shopify changes. A Railway worker periodically catches missed or delayed state and recomputes operational data.
Shopify change
Webhook
Immediate mirror update
Worker
Reconciliation / repair
Mirror update / repair
Webhook deliveries are deduplicated before application.
The store has its own interface
The floor does not need the same interface as the back office. LOLE OS switches into a dedicated POS shell under /pos, retaining the same data and authorization layer while simplifying navigation around the tasks needed during a sale.
Same application, same authorization, same underlying data, different operational context.
Admin
- Today
- Orders
- Inventory
- Finance
- Clients
- Providers
- Collections
- AI
- Settings
POS
- Summary
- New Sale
- Inventory
- Finance
- Clients
- History
- Assistant
AI can help. It cannot redefine the business.
Invoice Vision
- Document
- Extract
- Review
- Apply
Never silently invent unreadable quantity or cost values.
LoleAI
- Staff question
- Read-only business tools
- Supabase mirrors
- Answer
Grounded in live operational data, not a giant business prompt.
Daily Briefs
- Precomputed metrics
- LLM narration
- Today
Code computes. The model explains.
AI control
- Assistant● ON
- Invoice Vision● ON
- Daily Briefs○ OFF
A control room for the platform
LOLE OS includes a developer-facing shell for monitoring the same platform that staff use operationally.
Integrations
- Shopify● healthy
- Supabase● healthy
- OpenAI● healthy
- Instagram● degraded
Jobs
- sync-products✓
- sync-orders✓
- nightly-report✓
- ai-brief✓
Control
- Assistant ChatON
- Invoice VisionON
- Shopify WritesON
- IG SyncOFF
Security & Business Rules
The browser never decides the role
- Owner
- Engineer
- Developer
- Admin
- Pending
- Write stockadmin+
- Authorize costsselected roles
- Dev portalstaff
- AI controlstaff capability
- Supabase session
- getActor()
- Server capability
- Action allowed / denied
Today means today at the store
Operational reporting does not use the browser timezone or Vercel UTC. All business-day calculations run through the configured store timezone.
BUSINESS_TIMEZONE=America/Santiago“Today,” “this week,” POS revenue, and order periods are calculated from the store's operating day.
What LOLE OS is not
- Not a storefront
- Not a Shopify theme
- Not a Shopify Admin clone
- Not a payment processor
It is the operational layer around the business.
Delivery & Engineering Decisions
- 03 shells — Admin · POS · Developer
- 02 languages — English · Spanish
- 02 commerce freshness paths — Webhooks · reconciliation
- 01 commerce source of truth — Shopify
- 01 operational database — Supabase Postgres + RLS
- Global kill switches — AI · sync · Shopify writes · health
- Separate worker plane — Railway background processing
Shopify remains the commerce source of truth.
Rationale: LOLE OS mirrors commerce data and adds internal operational context without replacing Shopify's responsibility for products, inventory, orders, and customers.
Supabase owns operational state.
Rationale: Auth, staff profiles, mirrors, POS sales, costs, alerts, AI history, audit trails, and feature flags live in Postgres with RLS.
Three shells, one application.
Rationale: Admin, POS, and Developer share authorization and data while presenting context-appropriate navigation and density.
Fresh by webhook, correct by reconciliation.
Rationale: Entity webhooks keep mirrors current; a background worker repairs missed or delayed state and recomputes operational data.
Deterministic numbers before AI.
Rationale: Contribution, shipping absorption, stock logic, and period metrics are computed in code. Models explain; they do not invent KPIs.
AI extracts and narrates under human control.
Rationale: Invoice vision requires staff approval before apply. Assistant tools are read-oriented. Kill switches disable AI surfaces without redeploying.
Server-side authorization only.
Rationale: Roles resolve from authenticated server state via getActor(). Client-supplied roles are never trusted.
Business time is a system concern.
Rationale: Store timezone drives “today” and period reporting so floor and finance views match the boutique's operating day.
Technology
Application
- Next.js 16
- React 19
- TypeScript
- Tailwind
- Zod
- next-intl
Data & auth
- Supabase Auth
- PostgreSQL
- Row-Level Security
- Supabase Storage
Commerce
- Shopify Admin GraphQL
- Shopify Webhooks
- Signed deliveries
AI & workers
- OpenAI
- Vercel AI SDK
- Railway worker
- Docker
Status
LOLE OS was delivered as a freelance independent contractor engagement at Feature Freeze v1.0. Platform access and ownership belong to LOLE Boutique.
The production repository remains private because it contains client configuration, integration handling, operational workflows, and internal business logic. This case study describes architecture and engineering responsibility without exposing secrets, customer data, or confidential strategy.
Built by Andres Echeverria as sole engineer. This is not employment at LOLE Boutique.
Planned work — not claimed as completed features.
- Sanitized product screenshots for the public case study
- Expand messaging and operational alerts under existing auth and flags
- Harden reconciliation and webhook failure diagnostics
- Deepen contribution and inventory reporting on deterministic pipelines
- Improve bilingual operator documentation