ConvertKit + Stripe = paid content at your fingertips.

You can utilize our integration with Stripe to get paid for your content, while connecting with your fans.

We’ll bring over all your subscribers and purchase history—so you can stay focused on creating and sending them great content.

☝️ This integration uses our Purchases feature, which gives you a lot of information about your subscribers. In this article we'll take a look at how to get set up.

Let's start at the beginning.

Connecting to Stripe

Hooking up this integration will pull in your past purchasers.

In your ConvertKit account, click the Automate tab, and then select Integrations.

Then select Stripe!

Click the button Authorize ConvertKit to access Stripe.

A window will pop up asking you to allow the connection to Stripe. Select the Stripe account that you'd like to connect to ConvertKit.

NOTE: If you aren't already logged in or need to switch Stripe accounts, you can do so by clicking your email address in the top right corner.

After that, you'll be taken back to ConvertKit. Once here, click Next » and you'll see a webhook URL that allows ConvertKit to access information about payments.

To add this webhook to your Stripe account:

  1. Log into your Stripe dashboard.

  2. Click on Developers at the top right.

  3. From the menu on the left, select the Webhooks tab.

  4. Click the + Add endpoint button.

  5. Paste your webhook URL. In the Select events to listen to setting, click Select all events.

  6. Click Add endpoint.

Last but not least, you'll need to perform a test purchase of one of your products in order for Stripe purchases to be an option for your visual automation entry points.

☝️ If a test purchase doesn't seem to be working, you may need to actually purchase the product yourself. (Tip: create a coupon for 100% off and use that at checkout). If someone purchases your product for real, that'll work too!

That's it! You're now integrated with Stripe.

How it works

Let's talk details. Here are a few key takeaways to remember about this integration:

  • When someone purchases from you using Stripe, they'll be added as a subscriber in ConvertKit. From there, you'll be able to track their Stripe payments by going to the Purchases tab in their subscriber profile.

  • This integration supports Stripe subscriptions in addition to one-time purchases—which means users coming from another platform can switch over easily, without the risk of subscriber churn.

  • If you are migrating over from another platform like Substack, you’ll see product tags that correspond to your pricing tiers.

  • This count will always be the number of subscribers who are already paying for your product or newsletter. If one of your subscribers chooses to cancel their paid subscription, they will no longer be included in the count.

  • When it’s time to send your broadcast to your paid subscribers—including those that came with you from another platform, plus any new ones you've gained—you can create a segment that includes both. Then when you're ready, you can send your broadcast to that segment, which will include all purchasers!

Create a visual automation for your customers

Now we're going to take this integration one step further by adding in a visual automation.

To get started, click the Automate tab in the navigation, followed by Visual Automations.

Click + New Automation to start a new visual automation.

Click Start from scratch to build your visual automation from scratch.

To create an entry point for your visual automation, select Purchase. (Click the Start Building button if you don't immediately see the option to select Purchase.)

Set the integration option to Stripe, and Stripe Payment as the product.

NOTE: If you have questions about the Purchase feature, click here to see the Purchases feature setup and FAQ.

From there you can add customers to sequences, tags, and more, to create the perfect post-purchase experience.

Something not working right? Check out our troubleshooting article below for help! 👇

Stripe integration: troubleshooting

Did this answer your question?