Your own OpenRouter, white-labelled.
One OpenAI-compatible endpoint across every model Relay routes. Your brand, your prices, your margin. A wallet for each of your users, automatic spend caps, and revenue split paid out on Mint — not OpenRouter's.
Launch in five calls
/v1/models reflects it immediately.POST /v1/wallets from your backend, or let the console do it. Each user holds their own Mint balance.curl $VEND/v1/chat/completions \
-H "Authorization: Bearer $VK" -H "Vend-End-User: user_42" \
-H "Content-Type: application/json" \
-d '{"model":"tensorzero::model_name::openai::gpt-4o-mini","messages":[{"role":"user","content":"hi"}]}'
Built for founders OpenRouter does not serve
Your brand, not theirs
Your users never see OpenRouter. The endpoint, the invoice and the dashboard are yours.
Non-US top-ups
Mint checkouts cover iyzico and USDC alongside Stripe, Creem, Polar and PayPal — markets Stripe alone does not reach.
Per-user wallets
Every user gets a prepaid balance with its own daily spend cap, enforced atomically — no shared pool to drain.
Success-only billing
A hold is placed first; only the exact provider cost plus your markup is ever captured. Failures release automatically.
Automatic payouts
Every charge splits into provider cost, your margin and the platform fee on Mint — idempotent, with a reconciler for interrupted legs.
One API, every model
The full OpenAI-compatible surface, streaming included, across whatever Relay routes — no separate integration per provider.
Pricing
| What you pay Vend | |
|---|---|
| Platform fee | a share of your margin on captured charges, set by the operator at launch — not a per-seat or per-request fee |
| Provider cost | passed through exactly; Vend adds no markup of its own on top of what you charge your users |
| Hosting | run it yourself (open path) or on the operator's infrastructure |
Compare that to reselling through a provider's own billing: you do not control the price, the invoice, or when you get paid. On Vend you set the markup and Mint pays you out.