Modules
PlaidEx — Production-grade Plaid API client for Elixir/OTP.
Plaid Accounts API — retrieve account and balance information.
Plaid Assets API — generate Asset Reports for income verification.
Plaid Auth API — retrieve ACH account and routing numbers.
Shared aliases for PlaidEx.API.* modules.
Plaid Beacon API — fraud and risk intelligence network.
Plaid Consumer Report API — credit and risk reports.
Plaid Enrich API — transaction enrichment for non-Plaid data sources.
Plaid Identity API — retrieve owner identity information.
Plaid Identity Verification (IDV) API — KYC/AML identity verification.
Plaid Income API — employment and income verification.
Plaid Institutions API — search and retrieve institution metadata.
Plaid Investments API — holdings, transactions, and securities.
Plaid Items API — manage connected financial institution Items.
Plaid Liabilities API — loan, mortgage, and credit card details.
Plaid Link Token API.
Plaid Monitor API — watchlist screening and compliance.
Plaid Payment Initiation API — bank-to-bank payments (UK/EU).
Plaid Processor API — pass-through data to payment processors.
Plaid Sandbox API — sandbox-only test utilities.
Plaid Signal API — ACH return risk scoring.
Plaid Statements API — retrieve bank statements.
Plaid Transactions API.
Plaid Transfer API — ACH and RTP transfer orchestration.
Plaid User API — manage Plaid-hosted user identities.
Plaid Wallet API — e-money wallet management (UK/EU).
Validated runtime configuration for PlaidEx.
ETS-backed registry for multi-tenant Plaid configurations.
Typed Plaid error struct with retry classification, suggested actions, and structured metadata for logging and observability.
Core HTTP client for all Plaid API requests.
Behaviour for the HTTP client. Define a Mox mock against this for testing.
Namespace for PlaidEx HTTP middleware modules.
ETS-backed token bucket rate limiter with per-tenant isolation.
GenServer representing an active tenant context.
DynamicSupervisor managing per-tenant process subtrees.
High-level OAuth flow orchestration for Plaid Link.
PKCE (Proof Key for Code Exchange) implementation for OAuth 2.0.
ETS-backed store for OAuth state parameters.
Bulkhead isolation using bounded process pools.
Per-environment GenServer circuit breaker.
DynamicSupervisor managing per-environment circuit breakers.
Retry classification and scheduling utilities.
Response from /item/public_token/exchange.
A financial account returned by Plaid.
Identity data returned by /identity/get.
A financial institution from Plaid's institution database.
An investment holding (position) from Plaid Investments.
A Plaid Item — represents a user's connection to a financial institution.
Response from /link/token/create.
A security (asset) referenced by investment holdings and transactions.
A financial transaction from Plaid's Transactions product.
A single page from the /transactions/sync endpoint.
A Plaid Transfer object.
Shared boilerplate for :one_for_one DynamicSupervisors that need no
custom init/1 options. Used by PlaidEx.MultiTenant.TenantSupervisor
and PlaidEx.Reliability.CircuitBreakerSupervisor, which are otherwise
identical aside from their child-management functions.
Shared boilerplate for GenServers that own a single named, public ETS
table (:set, :public, :named_table, with read/write concurrency).
Normalizes the return value of a user-supplied handler callback
(webhook handlers, sync page handlers) into a consistent
:ok | {:error, term()} shape.
Broadway pipeline for high-throughput transaction synchronization.
Pluggable store for Plaid transaction sync cursors.
Behaviour for pluggable cursor persistence backends.
Default Behaviour implementation — an ETS-backed GenServer that
owns the cursor table. Cursors are LOST on application restart; see
PlaidEx.Sync.CursorStore moduledoc for how to plug in durable
storage instead.
DynamicSupervisor managing transaction sync workers.
Durable cursor-based transaction synchronization worker.
Telemetry event handlers and attachment helpers.
Telemetry.Metrics definitions for PlaidEx.
OpenTelemetry span wrappers for distributed tracing.
ETS-based webhook deduplication with sliding expiry window.
Routes typed webhook events to handler callbacks.
Behaviour for Plaid webhook handlers.
Oban worker for durable webhook processing.
Phoenix Plug for Plaid webhook ingestion.
Typed structs for all Plaid webhook event payloads.
ASSETS webhook payload (PRODUCT_READY, ERROR).
AUTH webhook payload (AUTOMATICALLY_VERIFIED, VERIFICATION_EXPIRED).
BEACON webhook payload.
IDENTITY_VERIFICATION webhook payload.
INCOME.INCOME_VERIFICATION webhook payload.
INVESTMENTS_TRANSACTIONS.DEFAULT_UPDATE webhook payload.
ITEM.ERROR webhook payload — includes structured Plaid error.
Generic ITEM webhook (PENDING_EXPIRATION, USER_PERMISSION_REVOKED, etc.).
LIABILITIES.DEFAULT_UPDATE webhook payload.
PAYMENT_INITIATION.PAYMENT_STATUS_UPDATE webhook payload.
SIGNAL.DEFAULT_UPDATE webhook payload.
STATEMENTS.READY webhook payload.
TRANSACTIONS.INITIAL_UPDATE / HISTORICAL_UPDATE / DEFAULT_UPDATE webhook.
TRANSACTIONS.SYNC_UPDATES_AVAILABLE webhook payload.
TRANSFER.TRANSFER_EVENTS_UPDATE webhook payload.
Plaid webhook signature verification.