Ovation

A receipt you’d actually keep.

Every subscription you start generates a receipt you never look at again. Subscribe to an early-stage company through Ovation and you get a numbered, limited-run coin instead. Collections are browsable, which is how the next person finds the company.

Walk it in order. Card 4242 4242 4242 4242, any future expiry, any CVC. The coin is issued by the Stripe webhook, not by the browser — so it appears only once the payment actually lands.

01 · Buy something

Warrick's pricing page

A pre-seed startup selling a $20/mo plan. Two of the three tiers include a coin. Nothing on this page mentions Ovation — that's the point.

Start here →

02 · See what you get

A collection

Numbered, limited-run leather coins from every company you've backed. Right-click one to hide it. Click a face on a seller's page to land in someone else's.

Open a collection →

03 · The seller side

Where coins come from

A founder's Stripe plans, one with a run attached. Attach a coin, retire a run. Add ?role=member to watch permissions disable the buttons.

Open the dashboard →

04 · How it's paid for

Ovation's own plans

Ovation is a seller row in its own schema, so our paid tiers go through the same checkout and the same webhook. We are our own first customer.

See the pricing →

Identity

Auth0, provisioned through the Stripe Projects CLI. Collectors are plain users; sellers are Organizations with roles read off the token.

Payments

Stripe Checkout and webhooks. checkout.session.completed is the only path that issues a coin.

Data

Neon Postgres, also provisioned through Stripe Projects. Serial allocation is one atomic statement, so two buyers can never share a number.

Design system · the swap test ↗