DatriseAI-first ETL

Source connector

Plaid connector

Plaid integration for databases, warehouses and BI tools

Bank account connectivity and transaction feeds. Datrise captures Plaid entities such as accounts, transactions, balances, items, institutions and account holders, then lands normalized and typed models for warehouse reporting, attribution, and AI workflows.

The Plaid API (Plaid-Version 2020-09-14) authenticates with API key, incremental runs key on cursor, and Plaid caps calls at Limits are per endpoint and per Item/client, not account-wide, e.g. /accounts/get is 15 requests/minute per Item and 15,000/minute per client in Production, while /transactions/refresh is capped at 2/minute and 120/hour per Item.

Of the 6 objects, 5 sync as upserts keyed on the primary key and 1 as append-only streams, so each incremental run moves only what changed since the last watermark. Every object lands in its own table (for example `plaid_accounts`) with a schema derived from the Plaid API rather than a flattened CSV, in any of the 43 supported destinations.

Datrise is in early access: pick a destination below to open the Plaid pipeline page, and join the waitlist to get the Plaid connector with guided onboarding.

Incremental syncSchema-aware mapping43 destinations available

What Plaid data Datrise extracts

Each object lands in its own typed table. Sync mode is derived from the object: history-style objects append, everything else upserts.

ObjectLanding tableSync mode
accountsplaid_accountsUpsert by primary key, incremental on updated-at
transactionsplaid_transactionsAppend-only, incremental by timestamp
balancesplaid_balancesUpsert by primary key, incremental on updated-at
itemsplaid_itemsUpsert by primary key, incremental on updated-at
institutionsplaid_institutionsUpsert by primary key, incremental on updated-at
account holdersplaid_account_holdersUpsert by primary key, incremental on updated-at

Plaid API: setup facts for the connector

Verified against the vendor documentation on 2026-09-02. Unknown values are left blank rather than guessed.

APIPlaid API (Plaid-Version 2020-09-14)
AuthenticationAPI key — Every call needs a client_id + secret (request body or PLAID-CLIENT-ID/PLAID-SECRET headers) plus a per-Item access_token obtained by exchanging a Link public_token; the bank-side OAuth redirect inside Link authenticates the end user to their institution, not the ETL client to the Plaid API.
Paginationcursor — The recommended /transactions/sync endpoint pages with a `cursor`/`next_cursor` and `has_more` flag; the older /transactions/get endpoint instead uses `count`/`offset` against `total_transactions`.
Rate limitLimits are per endpoint and per Item/client, not account-wide, e.g. /accounts/get is 15 requests/minute per Item and 15,000/minute per client in Production, while /transactions/refresh is capped at 2/minute and 120/hour per Item.
Incremental cursorcursor — Call /transactions/sync with the `cursor` from the prior response to get only added/modified/removed transactions; Plaid now recommends triggering this only from the SYNC_UPDATES_AVAILABLE webhook, not the legacy DEFAULT_UPDATE/INITIAL_UPDATE/HISTORICAL_UPDATE webhooks.
WebhooksYes — Item and product webhooks (e.g. SYNC_UPDATES_AVAILABLE, TRANSACTIONS_REMOVED, ITEM_ERROR)
Bulk exportNo
Deletes detectableYes — Removed transactions are returned by transaction_id in the `removed` array of each /transactions/sync response.

Official API reference

What bites when replicating Plaid

  • The `/transactions/sync` endpoint replaces the legacy `DEFAULT_UPDATE`, `INITIAL_UPDATE`, and `HISTORICAL_UPDATE` webhooks with a single `SYNC_UPDATES_AVAILABLE` event, so a connector still listening for the old webhook names silently stops seeing updates.
  • `/transactions/refresh` is separately rate-limited to 2 requests per minute and 120 per hour per Item in Production, on top of the general per-endpoint limits.
  • Every request needs both a `client_id`/`secret` pair and a per-Item `access_token`; the `access_token` alone is rejected with an authentication error if the client credentials are missing.
  • Webhook payloads are signed as a JWT in the `Plaid-Verification` header, and Plaid's verification steps require rejecting any webhook whose `iat` claim is more than 5 minutes old.

Compare this against every other documented API

Popular destinations for Plaid

Choose a destination below to open the ready pipeline page.

  • A
    Airtable

    Relational spreadsheet destination for ops and go-to-market teams.

    View pipeline
  • A
    Amazon Athena

    Serverless SQL over S3 data lake tables.

    View pipeline
  • A
    Amazon DynamoDB

    Serverless key-value and document store on AWS.

    View pipeline
  • A
    Amazon QuickSight

    AWS serverless BI with SPICE and embedded analytics.

    View pipeline
  • A
    Amazon Redshift

    AWS petabyte-scale warehouse with Spectrum.

    View pipeline
  • A
    Amazon S3 Data Lake

    Object storage landing zone for parquet and snapshots.

    View pipeline
  • A
    Apache Superset

    Open-source BI for SQL exploration, charts, and dashboard publishing.

    View pipeline
  • A
    Azure Data Lake Storage

    ADLS Gen2 object storage for analytics workloads.

    View pipeline
  • A
    Azure Synapse

    Microsoft analytics workspace with SQL pools.

    View pipeline

Plaid connector FAQ

What Plaid data does the connector extract?
6 objects: accounts, transactions, balances, items, institutions and account holders. Each lands in its own table with types preserved; history-style objects (1: transactions) load as append-only streams.
Is the Plaid integration incremental?
Yes. After the initial full load, every run reads only records changed since the last watermark (updated-at or event timestamp) and applies an upsert or an append depending on the object.
Where can I load Plaid data?
Into 43 destinations: relational databases, cloud warehouses, data lakes, spreadsheets and BI tools. Each Plaid → destination pair has its own page with the object-to-table mapping.

Related sources

Other sources in the same category, each with its own connector page.

Early access

Launch your Plaid pipeline with guided onboarding

Join the waitlist to get priority access for Plaid integrations with guided setup, schema-aware mapping, and production-grade incremental sync.