Linking Stripe as a source
The Stripe connector can link charges, customers, invoices, prices, products, subscriptions, and balance transactions to PostHog.
Creating a Stripe API key
You need a Stripe API key to create a connector. Head to your Stripe dashboard > Developers > API keys, under Restricted keys, click + Create a restricted key.
You need to give your API key the following Read permissions in the Permissions column:
| Resource Type | Required Read Permissions |
|---|---|
| Core | Balance transaction sources, Charges, Customers, Disputes, Payouts, Products |
| Billing | Credit notes, Invoices, Prices, Subscriptions |
| Connect | Click Read in the Connect header |
If you aren't concerned with giving us more permissions than necessary, you can also simply click Read on the Core, Billing, and Connect headers to give us the necessary permissions.
If your Stripe account is in a language other than English, we suggest you update it to English before following the steps above to guarantee the correct permissions are set.
Adding a data source
- In PostHog, go to the Data pipeline page select the Sources tab.
- Click + New source button and select Stripe by clicking the Link button.
- In Stripe, get your Account ID by going to Settings > Business, selecting the Account details tab, and clicking your Account ID or pressing
⌘+Ito copy your ID. - Get your API key from the previous section
- Optional: Add a prefix to your table names
- Click Next
For Stripe tables, incremental syncs only sync new records and don't update existing records. This is a limitation of the Stripe API. To get real-time updates including changes to existing records, set up webhooks.
The data warehouse then starts syncing your Stripe data. You can see details and progress in the data pipeline sources tab.
Setting up webhooks for real-time syncing
By default, Stripe data syncs on a schedule. You can set up webhooks to get real-time updates instead, including changes to existing records.
To set up a webhook:
- Go to your Stripe source in the data pipeline sources tab.
- Click the Webhook tab.
- Click Create webhook.
PostHog automatically creates and registers the webhook on your Stripe account. Once set up, you can view the webhook status, including both PostHog's internal status and the Stripe-side webhook status, from the Webhook tab.