Stripe
This page contains the setup guide and reference information for the Stripe source connector.
Prerequisites
- Access to the Stripe account containing the data you wish to replicate
Setup Guide
To authenticate the Stripe connector, you need to use a Stripe API key. Although you may use an existing key, we recommend that you create a new restricted key specifically for Airbyte and grant it Read privileges only. We also recommend granting Read privileges to all available permissions, and configuring the specific data you would like to replicate within Airbyte.
Step 1: Set up Stripe
- Log in to your Stripe account.
- In the top navigation bar, click Developers.
- In the top-left corner, click API keys.
- Click + Create restricted key.
- Choose a Key name, and select Read for all available permissions.
- Click Create key. You may be prompted to enter a confirmation code sent to your email address.
For more information on Stripe API Keys, see the Stripe documentation.
Step 2: Set up the Stripe source connector in Airbyte
-
Log in to your Airbyte Cloud account or your Airbyte Open Source account.
-
In the left navigation bar, click Sources. In the top-right corner, click + New source.
-
Find and select Stripe from the list of available sources.
-
For Source name, enter a name to help you identify this source.
-
For Account ID, enter your Stripe Account ID. This ID begins with
acct_
, and can be found in the top-right corner of your Stripe account settings page. -
For Secret Key, enter the restricted key you created for the connection.
-
For Replication Start Date, use the provided datepicker or enter a UTC date and time programmatically in the format
YYYY-MM-DDTHH:mm:ssZ
. The data added on and after this date will be replicated. -
(Optional) For Lookback Window, you may specify a number of days from the present day to reread data. This allows the connector to retrieve data that might have been updated after its initial creation, and is useful for handling any post-transaction adjustments. This applies only to streams that do not support event-based incremental syncs, please see the list below.
- Leaving the Lookback Window at its default value of 0 means Airbyte will not re-export data after it has been synced.
- Setting the Lookback Window to 1 means Airbyte will re-export data from the past day, capturing any changes made in the last 24 hours.
- Setting the Lookback Window to 7 means Airbyte will re-export and capture any data changes within the last week.
-
(Optional) For Data Request Window, you may specify the time window in days used by the connector when requesting data from the Stripe API. This window defines the span of time covered in each request, with larger values encompassing more days in a single request. Generally speaking, the lack of overhead from making fewer requests means a larger window is faster to sync. However, this also means the state of the sync will persist less frequently. If an issue occurs or the sync is interrupted, a larger window means more data will need to be resynced, potentially causing a delay in the overall process.
For example, if you are replicating three years worth of data:
- A Data Request Window of 365 days means Airbyte makes 3 requests, each for a year. This is generally faster but risks needing to resync up to a year's data if the sync is interrupted.
- A Data Request Window of 30 days means 36 requests, each for a month. This may be slower but minimizes the amount of data that needs to be resynced if an issue occurs.
If you are unsure of which value to use, we recommend leaving this setting at its default value of 365 days.
-
Click Set up source and wait for the tests to complete.
Supported sync modes
The Stripe source connector supports the following sync modes:
- Full Refresh
- Incremental
Supported streams
The Stripe source connector supports the following streams:
- Accounts
- Application Fees (Incremental)
- Application Fee Refunds (Incremental)
- Authorizations (Incremental)
- Balance Transactions (Incremental)
- Bank accounts (Incremental)
- Cardholders (Incremental)
- Cards (Incremental)
- Charges (Incremental)
note
The
amount
column defaults to the smallest currency unit. Check the Stripe docs for more details. - Checkout Sessions (Incremental)
- Checkout Sessions Line Items (Incremental)
- Coupons (Incremental)
- Credit Notes (Incremental)
- Customer Balance Transactions (Incremental)
- Customers (Incremental)
- Disputes (Incremental)
- Early Fraud Warnings (Incremental)
- Events (Incremental)
- External Account Bank Accounts (Incremental)
- External Account Cards (Incremental)
- File Links (Incremental)
- Files (Incremental)
- Invoice Items (Incremental)
- Invoice Line Items
- Invoices (Incremental)
- Payment Intents (Incremental)
- Payment Methods
- Payouts (Incremental)
- Promotion Code (Incremental)
- Persons (Incremental)
- Plans (Incremental)
- Prices (Incremental)
- Products (Incremental)
- Refunds (Incremental)
- Reviews (Incremental)
- Setup Attempts (Incremental)
- Setup Intents (Incremental)
- Shipping Rates (Incremental)
- Subscription Items
- Subscription Schedule (Incremental)
- Subscriptions (Incremental)
- Top Ups (Incremental)
- Transactions (Incremental)
- Transfers (Incremental)
- Transfer Reversals
- Usage Records
Data type mapping
The Stripe API uses the same JSON Schema types that Airbyte uses internally (string
, date-time
, object
, array
, boolean
, integer
, and number
), so no type conversions are performed for the Stripe connector.