Enrich Stripe with data from your warehouse to create, manage, and drive revenue analysis from your customers, products, prices, subscriptions, and invoices resources.
Overview
Create and schedule syncs to the supported resources to keep your data up-to-date in Stripe to facilitate the creation of records with associations, or fulfill your business requirements.
- Extract and structure data from your warehouse based on models that you define to fit your Stripe integration needs.
- Sync to supported core resources that are required for Stripe integrations.
Getting Started
Step 1: Connect to Stripe
- Log in to Stripe.
- Visit your Account Dashboard Homepage.
- Copy your Secret key.

Add Stripe as a destination in Hightouch
- Log in to Hightouch or create a free Hightouch account
- Click on Destinations in the left sidebar
- Click on Add destination in the top right corner
- Select Stripe in the destination catalog and click Continue to proceed
- Paste your Secret key into the API key field and click Continue to proceed
- Give your destination a name and unique slug (e.g., Stripe Production” and
Stripe-production
) - Click Finish to create your Stripe destination!
Step 2: Connect to your data source
- Connect to Airtable
- Connect to Amazon Athena
- Connect to Amazon Redshift
- Connect to Clickhouse
- Connect to Databricks
- Connect to Elasticsearch
- Connect to Firebolt
- Connect to Google BigQuery
- Connect to Google Sheets
- Connect to Looker
- Connect to Metabase
- Connect to MySQL
- Connect to Palantir Foundry
- Connect to PostgreSQL
- Connect to Rockset
- Connect to SFTP
- Connect to Snowflake
- Connect to SQL Server
- Connect to Trino
Connect to a sample database instead
users
table with names, emails, locations, and other user attributes. This sample source is available when you log in for the first time—no setup required.Step 3: Create a model
SELECT * FROM users;
- Click on Models in the left sidebar.
- Click on Add model in the top right corner.
- Select Demo Database as your source and click Continue to proceed.
- Select SQL Editor as your modeling method.
- Paste the SQL query from above into the editor on the left side of the page.
- Click Preview to execute the query.
- Click Continue to proceed.
- Give your model a name and unique slug (e.g., "All Users" and
all-users
). - Select id as the primary key for your model.
- Click Finish to create your model! We just created a model using a SQL query that retrieves all our current users. Next, we'll configure our sync to add these users to the Stripe customers resource.
Step 4: Create a sync
- Click on Syncs in the left sidebar.
- Click on Add sync in the top right corner.
- Select All Users as your model and click Continue to proceed.
- Select Stripe as your destination and click Continue to proceed.
- Give your destination a name and unique slug (e.g., "Stripe All Customers Sync" and
stripe-all-customers-sync
) and click Finish to proceed. - Select Customers from the object dropdown.
- Select Upsert from the mode radio options.
- Select
email
and we will map it toCustomer Email
from the external ID mapping field. - Select
first_name
and we will map it toName
in the fields that we'd like to sync to Stripe. - Click Continue to proceed to the last step.
- Select Interval to tell your sync to run on a set interval.
- Configure your sync schedule to run every 5 minutes.
- Click Finish to create your sync!
Things to keep in mind
Sync Configuartion
Object Selection
- Customers
- Products
- Prices
- Subscriptions
- Invoices
Sync Modes
Record Matching
Customers
Customer Email
.Customer ID
or by Customer Email
.Products
Product ID
.Prices
Price ID
.Subscriptions
Subscription ID
.Invoices
Invoice ID
.Field Mapping
Associations
Customer ID
field. After selecting the
Customer ID
Stripe field from mappings, A reference input will be rendered. Similar to the Customer resource, Hightouch can conduct a look-up using a Customer Email
and the respective Customer ID
will be used to in the request to Stripe.

Custom Field Mapping
Delete Records
Customers
- Do Nothing.
- Delete the associated customer record.
Products
- Do Nothing.
- Delete the associated product record.
Prices
Subscriptions
- Do Nothing.
- Cancel the associated subscription.
Invoices
- Do Nothing.
- Delete the associated invoice. Deletion is only support if the associated invoice is a draft.
Troubleshooting
Common errors
- Common errors that we've noticed are mainly Stripe API errors when data from your model is structured incorrectly or expected data is missing.
- For some Stripe resources, certain fields are conditionally required based on values of fields in the record that is being synced, so an error will be thrown if these fields are missing.
- We strongly recommend using Stripe's API documentation as reference while creating your Hightouch configuration form for each of the resources and model your data accordingly.
- You can use the Hightouch debugger to learn about errors that are thrown.
- Reach out to us for assistance. We are here to help!
Use the Hightouch debugger
Set up sync alerts
- Connection issues with your data warehouse?
- Confusing API responses from destination systems?
- Unsupported destination objects or modes?
- Help with complex SQL queries?
Need help?
Our team is relentlessly focused on your success. We're ready to jump on a call to help unblock you.
or
Feature Requests?
If you see something that's missing from our app, let us know and we'll work with you to build it!
We want to hear your suggestions for new sources, destinations, and other features that would help you activate your data.