Build on top of your digital product workspace.
Learn the core model, publish products, authenticate API requests, verify signed webhooks, and connect billing without fighting the platform.
curl https://koza.app/api/v1/products \
-H "Authorization: Bearer koza_live_xxx"
{
"products": [
{ "name": "Design System Kit", "price_cents": 4900 }
]
}Setup time
< 5 min
Auth model
API keys
Webhook signing
HMAC-SHA256
Start here
A quick path from empty account to integrated workspace.
Create workspace
Sign in, create your organization, and choose the public storefront slug.
Publish product
Create a product with pricing, images, metadata, and publish state.
Automate
Create an API key and webhook endpoint to connect Koza to your stack.
Architecture
How data and security boundaries are structured.
Products
Model, publish, and display digital goods.
Draft vs published
Keep products private while editing, then publish them to the storefront when ready.
Storefront URLs
Published products appear under the organization storefront route at /s/[slug].
Images and metadata
Upload product imagery and describe the asset so customers understand what they are buying.
Pricing
Prices are stored in cents for reliable currency formatting and API consistency.
API
Use API keys to access organization data from your own systems.
/api/v1/pingValidate an API key and inspect the active organization.
/api/v1/productsList products for the organization attached to the API key.
/api/v1/productsCreate products from external systems and automation flows.
/api/v1/ordersList orders placed through the storefront, newest first.
/api/v1/ordersRecord orders from external checkout flows.
/api/v1/customersList customers associated with the organization.
/api/v1/customersUpsert a customer record by email.
List products
GET /api/v1/products
Authorization: Bearer koza_live_xxx
HTTP/1.1 200 OK
{
"products": []
}Create API keys in Settings → API keys. Keep keys server-side and rotate them if they are exposed.
Webhooks
Receive product and billing events on your own endpoint.
Signed payloads
Every delivery includes a signature header that your server can verify with the endpoint secret.
Retry support
Failed deliveries can be retried through the Supabase Edge Function worker.
Webhook payload
POST https://your-app.com/webhooks/koza
X-Koza-Signature: sha256=...
{
"event": "product.created",
"data": { "id": "prod_..." }
}Billing
Stripe handles checkout, subscriptions, customer portal, and billing webhooks.
Checkout
Users can upgrade to paid plans through hosted Stripe Checkout sessions.
Customer portal
Paid customers can manage payment methods, invoices, and cancellations in Stripe.
Plan sync
Stripe webhooks update subscription status and plan data in the organization record.
Safe keys
Stripe secrets stay server-side and should never be exposed to client components.
Ready to build?
Create a workspace, publish a product, and wire your first integration using API keys and webhooks.
Open Koza