# Apps every Startup gets

URL: /products/site/customer-apps · Id: `page:products/site/customer-apps`

> Every Startup gets a public Site, a storefront and a Portal for each Persona it serves, compiled from its definition and shown under its own Brand.

Every [Startup](/business/nouns/startup) gets a public [Site](/business/nouns/site), a storefront and a [Portal](/business/nouns/portal) for each [Persona](/business/nouns/persona) it serves, all compiled from its definition. Its [Customers](/business/nouns/customer) see only the Startup's [Brand](/business/nouns/brand) and [Domain](/business/nouns/domain).

## The set
| Part | Who signs in | Served at | Compiles from |
| --- | --- | --- | --- |
| Site | Nobody | `/` | [Pages](/business/nouns/page), [Offers](/business/nouns/offer) and the Brand |
| Storefront | Nobody until checkout | `/pricing` and checkout | Offers and their [Prices](/business/nouns/price) |
| Portal | A Customer, as one Persona | `/portal` | The Persona's [Roles](/business/nouns/role) and their [Permissions](/business/nouns/permission) |
| `admin` | The Startup's [Workers](/business/nouns/worker) | startups.studio | Every [Noun](/business/nouns/noun) and [Verb](/business/nouns/verb) the Startup owns |

A change to the definition changes every app at once. A Price edited once is the Price on the Site, at checkout, in the Portal and in the API.

A marketplace has two Portals: one for the buyer Persona and one for the seller. An Offer sold with API keys adds developer tools to its Portal: keys, usage against the [Entitlement](/business/nouns/entitlement), and the request log.

## Under the Startup's name
Every app serves on the Startup's own Domain, under its Brand. Sign-in, receipts, emails and error pages carry the Startup's name, and no platform name appears on any of them.

Each Startup is the seller of record. Stripe checkout shows the Startup as the merchant, and the payout lands in the Startup's bank account.

A Customer's developers and [Agents](/business/nouns/agent) reach the same Startup at the same Domain: its API, MCP server, `llms.txt` and `agents.json`. An Agent buys and is served through the same Offers as a person.

## On a phone
Every app installs from the browser on the Startup's Domain. Installed, it keeps a Customer's worklists offline, takes push messages and shows a badge count.

A Startup ships its own app-store app only from its own developer account, under its own legal entity. No Startup's app ships under another Startup's account.

## The same records as the team
A Customer's Portal and the Startup's own Workers in startups.studio read the same records. A Customer sees only their own [Tenant](/business/nouns/tenant), and the team sees what the Customer sees with a preview as that Customer.

When a Customer accepts delivered work in the Portal, the [Order](/business/nouns/order) moves for the Worker who delivered it at the same moment. Nothing syncs, so nothing disagrees.

## Next
- [Storefront and Portal](/products/site/storefront-and-portal): what each kind of [Product](/business/nouns/product) adds to the storefront, and the Portal's steps.
- [Apps and sites](/products/platform/apps-and-sites): hosting, previews and rollback.
- [Customer access](/systems/customer-access): Tenants, sign-in and member directories.
- startups.studio: where the team works.