Going Live with Checkout

    Learn how to promote your Checkout integration from test mode to live mode.

    In order to process live payments with Checkout, you will need to promote your integration from test mode to live mode. This process is known as “going live” and varies depending on the type of Checkout integration you are using:

    Going live with a client integration

    Use the following steps to promote your Checkout client integration from test mode to live mode:

    1. Create products and plans in live mode
    2. Use live mode IDs
    3. Use live success and cancel URLs
    4. Use a live publishable API key

    Step 1: Create products and plans in live mode

    The Checkout client integration requires you to create products and plans in the Stripe Dashboard. These are configured separately for test mode and live mode, so you will need to recreate any products and plans in live mode prior to launching your integration.

    To create products and plans in live mode, log into the Stripe Dashboard and ensure that the view test data toggle in the left rail is turned off. Note that you will need to activate your account in order to modify this setting.

    Any products and plans you create going forward will be available to your live mode integration.

    Step 2: Use live mode IDs

    With the Checkout client integration, you pass IDs for the SKUs and plans to be purchased when calling redirectToCheckout. Be sure to update this code to use the product SKUs and plan IDs generated in live mode during Step 1 of this guide.

    You can find product SKUs and plan IDs in the Products section of the Stripe Dashboard.

    Step 3: Use live success and cancel URLs

    When integrating Checkout, you pass success and cancel URLs when calling redirectToCheckout. Be sure to update this code to use the live versions of your success and cancel URLs.

    Step 4: Use a live publishable API key

    You provide a publishable key when initializing Stripe.js on your website. In order to go live with your integration, you must update your integration code to use a live publishable key.

    You can find your live API keys in the Stripe Dashboard. Ensure that you are viewing live API keys by verifying the view test data toggle is turned off and the message “Viewing live API keys” is displayed.

    Next, consider creating webhooks in live mode if you intend to reconcile payments or fulfill purchases by handling webhooks.

    Going live with a server integration

    Use the following steps to promote your Checkout server integration from test mode to live mode:

    1. Use live success and cancel URLs
    2. Use live API keys

    Step 1: Use live success and cancel URLs

    When integrating Checkout, you pass success and cancel URLs when creating a Checkout Session. Be sure to update this code to use the live versions of your success and cancel URLs.

    Step 2: Use live API keys

    You provide a secret key when creating a Checkout Session using the Stripe API, and a publishable key when initializing Stripe.js on your website. In order to go live with your integration, you must update your integration code to use live API keys.

    You can find your live API keys in the Stripe Dashboard. Ensure that you are viewing live API keys by verifying the view test data toggle is turned off and the message “Viewing live API keys” is displayed.

    Optional: Create webhooks in live mode

    If you intend to reconcile payments or fulfill purchases by handling webhooks, you must configure an endpoint in live mode to receive checkout.session.completed events. Webhook endpoints are configured separately for test mode and live mode, so you will need to recreate an endpoint in live mode prior to launching your integration.

    You can configure webhook endpoints in live mode via the Stripe Dashboard. Ensure that you are viewing endpoints in live mode by verifying the view test data toggle is turned off.

    You can confirm that your webhook endpoint is working in live mode as expected by viewing the per-endpoint list of webhook attempts in the Dashboard:

    A view of the Stripe Dashboard displaying successful checkout.session.completed events.

    Questions?

    We're always happy to help with code or other questions you might have. Search our documentation, contact support, or connect with our sales team. You can also chat live with other developers in #stripe on freenode.

    Was this page helpful? Yes No

    Send

    Thank you for helping improve Stripe's documentation. If you need help or have any questions, please consider contacting support.

    On this page