Use your custom domain
Custom domains is a paid Checkout feature, and costs 10 USD per month while active.
In this article you’ll learn how to connect your own custom domain to Stripe Checkout by:
- Adding your domain to the Stripe Dashboard
- Creating DNS records to point at Stripe
- Verifying your DNS setup
- Setting your domain as active
Add your custom domain to the Stripe Dashboard
First decide what subdomain to use with your Checkout Sessions.
If your domain is example.com
we recommend you use checkout.example.com
as your custom Checkout subdomain, but you can replace checkout
with whatever you like as long as it’s a valid subdomain. Note that you can’t use a path (like example.com/checkout
), you must specify a subdomain of your existing domain.
After you decide on a subdomain, visit the Custom domains settings page to start the domain connection process.
On the settings page, find the Checkout box, and click Add your own. You now see a form with an input to enter your desired subdomain:
Enter your desired subdomain, and click Connect. You’ll see a Connecting
indicator, and a popup with instructions for setting up your DNS records.
When your domain is in the Connecting...
state, we’re waiting to verify your DNS records that you’ll set up in the next step. After Stripe verifies the DNS records, we create TLS certificates for your subdomain, set up the correct CDN routing, and then your domain is ready
to enable and use.
Identify your DNS Provider
To start, figure out what service is managing your DNS records, so you know exactly where to login and create the new records.
If you already know your DNS provider, you can move on to the next section.
Often, it’s the same place you registered your domain, but sometimes the DNS provider is different from your domain registrar.
If you’re not certain who your DNS provider is, try looking up your domain’s nameservers, replacing stripe.com with your own domain in this command:
nslookup -querytype=NS stripe.com
You’ll see a list of nameservers for your domain in the output. Here’s some example output for stripe.com:
# Looks like AWS is providing our DNS here: stripe.com nameserver = ns-423.awsdns-52.com. stripe.com nameserver = ns-705.awsdns-24.net. stripe.com nameserver = ns-1087.awsdns-07.org. stripe.com nameserver = ns-1882.awsdns-43.co.uk.
If you’re more comfortable using a browser-based tool, go to MXLookup’s DNS Lookup tool and enter your domain. It might be able to tell you who your DNS provider is (but not always).
Create required DNS records
In this section, you’ll create the DNS records you need to connect your domain. As you go through each step, check each checkbox to keep track of where you are in the process.
Select the tab that matches your DNS provider from the tabs below—this gives you specific, guided instructions for creating the required DNS records. If your DNS provider isn’t an option, follow the Standard instructions:
Now that you’ve created your DNS records and verified them, Stripe verifies the connection and provisions your domain on our end. We’ll send you an email and a Dashboard notification when the domain is ready for you to enable it. You can also visit the Dashboard settings at any time to see the current status of your custom domain connection.
Test your domain before switching
Before going live, it’s good to check that your new CNAME is available around the world.
- Open the DNSChecker.org propagation tool.
- Enter your custom domain in the search box.
- Click Search.
If your CNAME is available worldwide, you’ll see success checkmarks next to each DNS server, along with the correct record value (
hosted-checkout.stripecdn.com
):A fully propagated DNS record looks like this example.
If your DNS record hasn’t propagated to every server yet, keep checking back every few hours until every DNS server has a success checkmark next to it.
When you’ve been notified that your custom domain is ready, you can test out the domain if you have an existing Checkout integration:
- Go back to the Dashboard settings.
- Make sure the Dashboard is in test mode.
- Click the radio button next to your custom domain name to enable it in test mode.
- Create a Checkout Session in test mode.
- Visit the
url
for the Checkout Session.
You’ll see your new custom domain in the address bar of your browser.
Switch to your custom domain
Before completing this section, read back through the documentation and make sure you’ve checked off every action item.
To enable your custom domain for your Checkout Sessions:
- Go back to the Dashboard settings
- Make sure the Dashboard is in live mode.
- Click the radio button next to your custom domain name to enable it in live mode:
In this example, click the radio button next to checkout.powdur.me to activate the domain.
After clicking the radio button, your custom domain is now active. To see it live in action, create a Checkout Session in live mode using your existing integration and redirect to it. You’ll see your newly active custom domain in the address bar of your browser.