Comparisons
Compare Openfront's self-hosted operating model with common commerce approaches.
Openfront is an open-source commerce application that combines a Next.js storefront and operator dashboard with a Keystone GraphQL backend and PostgreSQL. Its main difference from a hosted commerce service is operational ownership: you run the application, database, migrations, credentials, and integrations.
Compare operating models
| Approach | What you operate | Customization boundary | Typical tradeoff |
|---|---|---|---|
| Openfront | Application source, database, deployment, and provider configuration | The full application and backend source | More control, with responsibility for upgrades, security, reliability, and operations |
| Hosted commerce service | Store configuration and extensions allowed by the service | Themes, apps, webhooks, and published APIs | Less infrastructure work, but behavior and data access remain bounded by the service |
| Plugin-based commerce | A CMS, commerce plugin, database, and plugin set | Themes, plugins, and custom server code | Broad extension ecosystem, with plugin compatibility and maintenance work |
| Enterprise commerce suite | Vendor platform plus an implementation and integration layer | Vendor extension points and contracted APIs | Broader packaged programs, with higher implementation and operational complexity |
| Custom build | Every selected application and backend component | Whatever the team designs | Maximum design freedom, with no prebuilt Openfront domain model or workflow baseline |
These categories are not feature-for-feature equivalents.
What current Openfront source includes
The E-commerce source currently contains:
- a regional storefront with catalog, cart, checkout, confirmation, and customer-account routes;
- a custom operator dashboard for catalog, orders, fulfillment, markets, payments, shipping, discounts, users, business accounts, API keys, OAuth apps, and settings;
- Keystone models and GraphQL operations backed by PostgreSQL and Prisma migrations;
- Stripe and PayPal payment adapters (a manual provider exists but cannot complete checkout);
- Shippo and ShipEngine shipping modules, plus database-configured local or HTTP adapter operation fields;
- business accounts with credit limits and invoices;
- a dashboard AI assistant and an OAuth-protected MCP endpoint;
- one Store configuration consumed by the current dashboard and storefront.
Where Openfront offers control
Because the application source is available to the operator, a team can change its storefront, dashboard, models, GraphQL operations, and integration adapters. The operator also chooses the hosting and database environment.
That control does not make integration work automatic or unconstrained. A new provider still requires a compatible operation contract, secure credential handling, lifecycle integration, failure recovery, and tests. Current checkout only accepts provider codes with a Stripe, PayPal or manual prefix, and the custom shipping-provider forms do not populate external operation URLs.
Costs and transaction fees
Openfront does not establish the fees charged by payment providers, shipping services, infrastructure vendors, marketplaces, or implementation partners. Self-hosting also carries database, compute, storage, monitoring, maintenance, and engineering costs. Evaluate those costs against the fees and operating work of an alternative platform rather than assuming that access to the source removes operating costs.
Security
Current source contains access-control, session, API-key, OAuth, and provider-integration mechanisms.
When Openfront may fit
Consider Openfront when a team:
- wants to own and modify the commerce application source;
- can operate a Next.js, Keystone, PostgreSQL, and Prisma stack;
- needs workflows that justify source-level customization;
- will maintain its own payment, shipping, tax, identity, and deployment integrations.
Migration expectations
Migration is an implementation project, not a built-in one-click feature. Inventory source-platform exports, map identities and relationships, define money and status semantics, migrate media and secrets separately, reconcile counts and totals, and rehearse rollback before cutover. Build or verify the import tooling required for the exact source and target systems.