Product catalog
Build your catalog, read a product's full detail page, and archive or delete products you no longer sell.
A ProductAPI is something you sell. It carries a name, an optional description and image, and one or more PricesAPI. The dashboard lists every product you've created in your Product catalog, and each row drills into a detail page that shows the prices, lifetime revenue, and the transactions that closed against it.
This page covers how to find a product, how to create one, what each section of the detail page means, and how to archive, copy, or delete a product. For the pricing model itself (one-time, recurring, customer-set, stock, scheduling, statuses), see Prices.
What you can do
Create a product
A multi-section form covers everything in one screen: image, name, description, default price, currency, stock, and start or end dates.
Read revenue at a glance
The detail page carries a Gross Revenue chart and rolls up successful transactions and active subscriptions per price.
Manage many prices
A product can carry multiple prices side by side (different currencies, different intervals, different stock).
Archive or delete
Archive any product to hide it from new checkouts. Delete is reserved for products that have never been sold.
Find a product
Click Product catalog in the dashboard sidebar. The list shows every product on your account.
The columns:
| Column | What it shows |
|---|---|
| Image | The product image, if you set one. A placeholder icon shows when empty. |
| Name | The product name. |
| Status | Active or Archived. |
| Pricing | The number of prices on this product (1 price / N prices). |
| Created | When the product was first created. |
| Last edited | When the product was most recently updated. |
Click any row to open the product. The bulk-action bar at the top lets you archive or delete several at once when you select rows.
Create a product
Click Create product in the top right of the catalog page. A new screen opens (the form replaces the catalog view; close it with the X in the top left to return).
Name and description
Enter a Name (required, visible to customers at checkout). Add a Description if you want context on the receipt and at checkout. Description is capped at 250 characters.
Image
Upload an Image (JPEG, PNG, or WEBP under 2MB). The image appears at checkout, on the customer's receipt, and on the product detail page in the dashboard. Optional but recommended.
(Optional) More options
Click More options to expand two extra fields:
- Unit label. A noun describing what one unit is (
unit,seat,ticket). Shows on receipts, invoices, and at checkout. - Metadata. Custom key-value pairs you can attach to the product for reporting and search. Each key must be unique.
Pick a price type
Below the divider, pick a price type:
| Type | When to pick it |
|---|---|
| One Time | The customer pays once for this product. The most common choice. |
| Recurring | A subscription-style price. Pick once subscriptions are enabled on your account. |
| Custom | The customer enters the amount themselves at checkout (donations, "pay what you want", tipping). You can set min and max bounds. |
The price type can't be changed after the price is created. To switch a product from one-time to custom (or any other change), add a new price.
Set the amount and currency
For One Time and Recurring prices, enter the Amount in the major unit of the currency (e.g. 100 for 100 EGP). Pick the Currency from the selector to the right.
For Custom prices, the amount field disappears. Set min and max bounds for what the customer can enter.
(Recurring only) Set the billing period
For Recurring prices, pick a Billing period: Daily, Weekly, Monthly, Yearly, or Custom (e.g. every 3 months, every 2 weeks).
(Optional) Stock and scheduling
The form's last section sets inventory and validity:
- Stock. How many units are available at this price. Leave blank for unlimited.
- Start Date. The date this price activates. Before then, the price shows as Scheduled and isn't selectable in checkout.
- Expiration Date. The date the price stops accepting new payments. After then, it shows as Expired.
A live preview on the right shows what customers see at checkout as you fill the form.
Click Add product
In the top right, click Add product. The product is created and you land on its detail page. A "Product created" toast confirms.
Read a product
The detail page is split into a left two-thirds (Pricing) and a right one-third (Insights, Details, Metadata), with the transaction list across the bottom.
Header
The product image, name, and status badge sit at the top, with the price count beneath ("1 price" or "N prices"). To the right are Edit (opens the edit sheet) and the action menu (archive, copy to live mode, delete).
Pricing
A list of every price on the product. Each row shows:
- The formatted price (
100.00 EGP,Customers choose what to pay). - The interval (
One time,Per month,Every 3 months). - A status badge (Active, Archived, Scheduled, Expired, Sold out, Oversold, Unsupported).
- Stock, start date, expiration date, transactions count, active subscriptions count.
The + button next to the section title (a price sheet) lets you add another price to the same product. Each price has its own action menu for editing, archiving, or deleting.
See Prices for what each status means and how stock, scheduling, and types behave.
Insights
A Gross Revenue chart showing this product's lifetime revenue contribution, scoped to your settlement currency.
Details
The metadata fields: Product ID (with one-click copy), Description, Unit Label, Created. The Updated date appears separately when it differs from Created.
Metadata
The custom key-value pairs you set on the product, listed verbatim. Empty when none are set.
Transactions
A table of every successful payment that included this product, with status, amount, customer, payment method, and date. Click a row to open the payment.
Manage a product
The action menu in the top right of the detail page holds three options.
Archive
Archived products are hidden from new checkouts and Payment Links, but they keep all their existing prices, transactions, and revenue history. Archive a product when you stop selling it but want the historical record intact.
You can unarchive at any time. The action toggles between Archive and Unarchive depending on current state.
Copy to live mode
In test mode only, Copy to live mode clones the product (and its prices) into your live database so you don't have to recreate it by hand. The copy is independent of the test version after it's made.
Delete
Delete is reserved for products that have never been used: no successful transactions, no subscriptions, no payment links. The action is disabled with a tooltip when the product has any usage.
For products with usage, archive instead. The full transaction history depends on the product record staying.