Stripe Integration
Automatically import your subscriptions, renewals, and cancellations from Stripe.
How it works
You create a Stripe Restricted Key
A read-only key generated in your Stripe Dashboard. It cannot modify anything in your account.
You paste it in Datasimple
Datasimple validates the key and starts importing your full subscription history in the background.
Automatic sync every hour
We use Stripe's Events API to pull new events (subscriptions, renewals, cancellations) with no additional setup.
No webhooks, no shared secrets. Unlike other integrations, you don't need to configure endpoints or share your webhook signing secret. The Restricted Key is read-only and can be revoked at any time from your Stripe Dashboard.
Step-by-step setup
Create a Restricted Key in Stripe
Go to your Stripe Dashboard and follow these steps:
- 1Open Stripe Dashboard → Developers → API keys
- 2Click "Create restricted key"
- 3Give it a descriptive name: "Datasimple Analytics"
- 4Enable Read (read-only) for the following resources:
Required permissions
| Resource | Permission | Why |
|---|---|---|
| Customers | ✓ Read | Identify subscribers |
| Subscriptions | ✓ Read | Import subscription history |
| Invoices | ✓ Read | Detect renewals and failed payments |
| Events | ✓ Read | Incremental sync of changes |
Tip: The generated key starts with rk_live_ (production) or rk_test_ (test). Make sure to use the production one for real data.
Paste the key in Datasimple
What gets imported
| Stripe Event | In Datasimple | Data included |
|---|---|---|
| subscription.created | subscription_started | Plan, price, interval, MRR |
| invoice.paid (renewal) | subscription_renewed | Amount, currency, subscription ID |
| subscription.deleted | subscription_cancelled | Plan, cancellation date |
| subscription.updated | subscription_updated | New plan, price change |
| invoice.payment_failed | payment_failed | Failed amount, subscription ID |
| checkout.session.completed | purchase | Amount, currency, order ID |
Security
Read-only
The Restricted Key cannot create, modify, or delete anything in your Stripe account.
Revocable at any time
If you want to disconnect the integration, go to Stripe Dashboard → API Keys and delete the key. Datasimple will stop syncing immediately.
No shared secrets
We don't share webhook signing secrets or write credentials. The key is only used to read events.
Incremental sync
We save the last sync timestamp so we only request new events from Stripe on each update.
Troubleshooting
The key shows "Invalid API key"
Make sure to copy the complete key from Stripe. It should start with rk_live_ or rk_test_.
The key shows "Key missing required permissions"
Edit the Restricted Key in Stripe Dashboard and make sure to enable Read on Customers, Subscriptions, Invoices and Events.
Historical data doesn't appear immediately
History import runs in the background. Depending on how much data you have, it may take a few minutes. Refresh the dashboard after a moment.
Can I use a test key?
Yes. rk_test_ keys will only import data from your Stripe test environment. Use rk_live_ for production data.