> ## Documentation Index
> Fetch the complete documentation index at: https://docs.pre.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Go live

> Take real payments: connect a Stripe account you own once, then switch any project from test to live.

Every project takes payments in test mode from its first build. Going live is a one-time step per workspace, followed by a per-project switch.

## 1. Connect your Stripe account

Open **Integrations → API Keys** and find the **Payments** card. Click **Go live**. Stripe walks you through your business details, a bank account for payouts, and identity verification. It takes about three minutes and Stripe saves your progress if you leave.

You own this Stripe account. pre.dev creates it for you and connects it as a platform, but the dashboard, the balance, the payouts, and the customers are yours at [dashboard.stripe.com](https://dashboard.stripe.com). If you ever leave pre.dev, the account and its history come with you.

When Stripe finishes verification the card shows **Live**. Verification is usually instant; occasionally Stripe asks for one more document, which the card lists.

## 2. Switch a project to live

Open the project, then its **Connections** tab, and use the **Payments** card at the top to switch from **Test** to **Live**. The preview restarts so the browser-side Stripe key and account match. From then on:

* Checkout in that project charges real cards on your Stripe account.
* Test cards are declined, as they are on any live Stripe account.
* Webhooks still arrive at `POST /api/stripe/webhook`, signed with the same `STRIPE_WEBHOOK_SECRET`.
* The code does not change. The same `STRIPE_SECRET_KEY` and host route to your live account.

Switch back to **Test** at any time. Other projects in the workspace stay in test mode until you switch them too.

## Products and prices

Test-mode products and prices do not exist in live mode; that is how Stripe works. Apps built on pre.dev create their products and prices in code the first time they are needed, looked up by `lookup_key` or metadata, so the live account fills itself in on the first live checkout. If your app hardcodes a test `price_…` id instead, replace it with a lookup or create the price in your Stripe dashboard.

## Fees

Live payments carry Stripe's standard processing fees, paid by your account, plus the pre.dev platform fee shown on the Payments card. Test mode never charges anything.

## Bring your own Stripe account instead

If you already run a Stripe account and would rather not connect through pre.dev, paste your own `sk_live_…` as `STRIPE_SECRET_KEY` in the project's environment variables. pre.dev then steps out of the way: your app talks to Stripe directly, and webhooks for that account are yours to register in your Stripe dashboard.
