# Agencies & Software Houses — deliver fixed-price faster

Source: https://www.openmercato.com/agencies

# Stop selling hours. Start shipping products.

Clients want fast, working software they own. Open Mercato enables fixed-price projects on a reusable foundation with sensible margins.

## Same client project. Completely different economics.

| A typical CRM/portal project for a mid-market client. Here’s what changes when you stop building from scratch. | svg]:block [&>svg]:size-full size-8">Without Mercato | svg]:block [&>svg]:size-full size-8">With Mercato |
| --- | --- | --- |
| Auth, RBAC, multi-tenancy | 3 weeks | svg]:block [&>svg]:size-full size-5 [&_[stroke-width]]:[stroke-width:var(--icon-stroke)] [&>svg]:[stroke-width:var(--icon-stroke)]" style="--icon-stroke:1.68"> Included |
| CRM core + entities | 4 weeks | svg]:block [&>svg]:size-full size-5 [&_[stroke-width]]:[stroke-width:var(--icon-stroke)] [&>svg]:[stroke-width:var(--icon-stroke)]" style="--icon-stroke:1.68"> Included |
| Design system + UI | 2 weeks | svg]:block [&>svg]:size-full size-5 [&_[stroke-width]]:[stroke-width:var(--icon-stroke)] [&>svg]:[stroke-width:var(--icon-stroke)]" style="--icon-stroke:1.68"> Included |
| Search, events, caching | 2 weeks | svg]:block [&>svg]:size-full size-5 [&_[stroke-width]]:[stroke-width:var(--icon-stroke)] [&>svg]:[stroke-width:var(--icon-stroke)]" style="--icon-stroke:1.68"> Included |
| Client-specific features | 4 weeks | 3 weeks |
| Testing & security audit | 2 weeks | 1 week |
| Total delivery | 17 weeks | 4 weeks |

### 3× the margin.

## Clone → Overlay → Ship → Repeat.

- 01svg]:block [&>svg]:size-full size-5 [&_[stroke-width]]:[stroke-width:var(--icon-stroke)] [&>svg]:[stroke-width:var(--icon-stroke)]" style="--icon-stroke:1.68"> Clone the baseFork Open Mercato for the new client. Auth, CRM, design system — running in 5 minutes.Day 1

- 02svg]:block [&>svg]:size-full size-5 [&_[stroke-width]]:[stroke-width:var(--icon-stroke)] [&>svg]:[stroke-width:var(--icon-stroke)]" style="--icon-stroke:1.68"> Overlay their workflowYour team (or AI agents) drops files in src/apps/. Core never modified. Clean separation.Week 1–3

- 03svg]:block [&>svg]:size-full size-5 [&_[stroke-width]]:[stroke-width:var(--icon-stroke)] [&>svg]:[stroke-width:var(--icon-stroke)]" style="--icon-stroke:1.68"> Ship & handoffClient gets a fully-owned codebase on their infra. No vendor lock-in. No recurring platform fees.Week 4

- 04svg]:block [&>svg]:size-full size-5 [&_[stroke-width]]:[stroke-width:var(--icon-stroke)] [&>svg]:[stroke-width:var(--icon-stroke)]" style="--icon-stroke:1.68"> Maintain & upsellSell ongoing feature development. Each overlay is scoped — easy to estimate, profitable to deliver.Ongoing

## Mid-level devs ship senior-quality output.

The architecture and AI guardrails do the heavy lifting. Your team learns real skills — not workarounds.

### Architecture that enforces quality

OCP overlays mean your devs can’t accidentally break core modules. The structure prevents the mistakes before code review catches them.

### AI agents that follow the rules

AGENTS.md and .ai/specs/ ship with the repo. Claude, Cursor, Copilot — they all generate code that fits the architecture, not fights it.

### Real AI engineering skills

Your team learns spec-driven development and context-first workflows. Skills compound across projects.

### Enterprise security out of the box

Field-level encryption, RBAC, audit trails, GDPR. Stop spending 3 weeks on auth for every client. Pass security reviews on day one.

### Reusable across clients

Build a logistics overlay once. Use it for 5 clients with minor customization. Your IP compounds. Your margins grow.

### No vendor lock-in (for you or them)

MIT licensed. Client gets full source. You’re not reselling someone else’s SaaS — you’re delivering owned software on open infrastructure.

## What changes on your next project.

| Dimension | svg]:block [&>svg]:size-full size-8">T&M / From Scratch | svg]:block [&>svg]:size-full size-8">With Mercato |
| --- | --- | --- |
| Pricing model | 3 weeks | Fixed-price packages |
| Time to first demo | 4 weeks | Day 1 (clone + run) |
| Auth & security | 2 weeks | Pre-built, pre-audited |
| Junior dev effectiveness | 2 weeks | Architecture enforces quality |
| Client ownership | They own the code | svg]:block [&>svg]:size-full size-5 [&_[stroke-width]]:[stroke-width:var(--icon-stroke)] [&>svg]:[stroke-width:var(--icon-stroke)]" style="--icon-stroke:1.68"> They own the code |
| Maintenance revenue | Ad-hoc, hard to scope | Overlay-scoped, predictable |
| IP reuse across clients | Start over each time | Overlays reusable across projects |
| Typical gross margin | 15–25% | 50–65% |

## Case Studies

- ![Senior Care Operations on Open Mercato — manager dashboard demo] ERPMulti-tenancy[Senior Care Operations on Open Mercato](https://www.openmercato.com/case-studies/senior-care-operations)A demo for German non-medical senior care providers — dashboards, scheduling, and signed service-confirmation workflows, built on Open Mercato.Read case studysvg]:block [&>svg]:size-full [&_[stroke-width]]:[stroke-width:var(--icon-stroke)] [&>svg]:[stroke-width:var(--icon-stroke)] mt-0.5 size-3" style="--icon-stroke:2.4">

- ![Open Service ticket intake screen] CRM[Open Service](https://www.openmercato.com/case-studies/open-service)A centralized field service platform replacing scattered tickets, spreadsheets, and tribal knowledge with one system for intake, machine history, and technician scheduling.Read case studysvg]:block [&>svg]:size-full [&_[stroke-width]]:[stroke-width:var(--icon-stroke)] [&>svg]:[stroke-width:var(--icon-stroke)] mt-0.5 size-3" style="--icon-stroke:2.4">

- ![TraceCore customer orders module with kanban board] ERPEnterprise[MRP System](https://www.openmercato.com/case-studies/tracecore)An on-premise MRP system giving food and pharma manufacturers integrated production, warehouse, and sales operations with native LOT traceability and GMP-ready audit trails.Read case studysvg]:block [&>svg]:size-full [&_[stroke-width]]:[stroke-width:var(--icon-stroke)] [&>svg]:[stroke-width:var(--icon-stroke)] mt-0.5 size-3" style="--icon-stroke:2.4">

## Software is about to be built completely differently.
