# What is Prism?

URL: https://zerodev.ca/blogs/what-is-prism
Published: 2026-10-17
Updated: 2026-10-17

> Prism is a self-hosted shop for digital products. Run your store site and admin dashboard from one app, take payments and give every buyer a license with downloads.

## Key Takeaways

- Prism runs your public store site and your admin dashboard from one app on your own server.
- It takes payments through Stripe, Polar, PayPal, NOWPayments or Razorpay.
- Every purchase issues a license, and customers download their files from their account.
- The Theme Editor and Page Builder let you design the site without writing code.
- The Kora module issues Kora license keys for linked products and shows them on the customer's licenses.



## What Prism Is

Prism is a shop for digital products that you run on your own server. One app serves your public store at `/`, customer accounts at `/account` and your admin dashboard at `/admin`.

You add products, set prices and upload files. Customers buy, get a license and download what they paid for. Everything lives in your own PostgreSQL, MySQL or MariaDB database, with no platform fee on your sales.

## Selling

A product has a name, price, cover, summary and a description written in BBCode. Then you add:

* **Downloads**, hosted by Prism or stored in an S3 or Cloudflare R2 bucket and handed out as expiring links.
* **Addons**, extras bought on top of the product, each with its own price and download.
* **Links**, buttons for docs, a support server or anything else.
* **Updates**, with a version and changelog for each release.
* **Reviews**, with star ratings from buyers.

A price of `0` makes a product free to claim. Drafts stay hidden until you publish them.

## Checkout

Prism takes payments through **Stripe**, **Polar**, **PayPal**, **NOWPayments** and **Razorpay**. Turn on the cart to let customers buy several products at once, or keep it to **Buy Now**.

* **Coupons** take a percentage or a fixed amount off, with a minimum spend and a use limit.
* **Sales** discount everything, products only or addons only, with an optional banner across the store.
* **Points** reward customers for spending and let them pay with points later.

When a payment completes, Prism issues a license for each product and shows the buyer a success page with their downloads.

## Customer Accounts

Customers sign in with Discord, Google, Apple, GitHub or email and password. Their account has three tabs:

| Tab             | What it has                                                         |
| --------------- | ------------------------------------------------------------------- |
| Account Details | Name, picture, email and points balance.                            |
| Security        | Password, connected providers and signed-in devices.                |
| My Licenses     | Every license with its status, expiry, addons and download buttons. |

## Designing the Store

You do not need to write code to make the store your own.

* The **Theme Editor** sets light or dark mode, the accent colour, corner radius, font, header and footer links, the sign-in page background and the product card style. A live preview shows changes before you save.
* The **Page Builder** lays out the landing page and custom pages from sections of one to four columns, with headings, text, buttons, images, features, FAQs and product showcases.
* **Custom CSS** covers anything else.

Each page has its own title, description, social image and search indexing setting.

## The Dashboard

Sign in with the Discord account on your Prism license and you are the owner. From `/admin` you manage products, licenses, users, roles, coupons, sales, settings and appearance. Give your team roles so support staff only see what they need.

## The Storefront API

Prism has public `/api/v1/` endpoints for the catalog, reviews, updates and checkout, plus a management API for API tokens with scopes. Every response is signed, so your products can check that an answer really came from your shop. See the [Storefront API](/docs/prism/api).

## Modules

Everything past startup is a module. **Core** ships with Prism and holds products, licenses, checkout and users. The **Kora** module connects Prism to [Kora](/blogs/what-is-kora): link a Prism product to a Kora product and every purchase also issues a Kora license, with the key shown on the customer's My Licenses page.

You can write your own modules too. A module can add pages, routes, settings, events, models and fields on other modules' pages. See the [developer docs](/docs/prism/developer-documentation).

## What You Need

* A host that runs Node.js 20 or newer, or Bun.
* An empty PostgreSQL, MySQL or MariaDB database.
* A Discord application for sign-in.
* Your Prism license key from the [Zero Development Discord](https://discord.zerodev.ca).

The first start opens a setup wizard in your browser. It asks for the database, your license and your Discord app, then launches the shop without a restart.

<Resources title="Get Started with Prism">
  <Resource name="Prism Setup Guide" description="Install Prism and run the setup wizard." link="/docs/prism/setup" tag="Docs" image="https://bucket.zerodev.ca/showcase/covers/prism.png" />

  <Resource name="Products" description="Create products, addons, downloads and licenses." link="/docs/prism/products" tag="Docs" image="https://bucket.zerodev.ca/showcase/covers/prism.png" />

  <Resource name="Storefront" description="Design the store with the Theme Editor and Page Builder." link="/docs/prism/storefront" tag="Docs" image="https://bucket.zerodev.ca/showcase/covers/prism.png" />
</Resources>


## Questions

### What is Prism?

Prism is a self-hosted shop for digital products by Zero Development. It runs your store site, customer accounts and admin dashboard from one app and issues a license with downloads to each buyer.

### Which payment gateways does Prism support?

Stripe, Polar, PayPal, NOWPayments and Razorpay. You pick a primary gateway and customers can choose another at checkout.

### How do customers get their files?

Each purchase issues a license. Customers sign in at /account and download the product and any addons they bought from My Licenses.

### Can I change how the store looks?

Yes. The Theme Editor sets the colours, fonts, corners, header, footer and product card style, and the Page Builder lays out the landing page and custom pages.

### What database does Prism use?

Your own PostgreSQL, MySQL or MariaDB database. Prism needs Node.js 20 or newer, or Bun.

### Does Prism work with Kora?

Yes. The Kora module links Prism products to Kora products, issues a Kora license on each purchase and shows the Kora key on the customer's My Licenses page.