// the find
plaid/plaid-python
Python bindings for Plaid
The official Python SDK for Plaid's financial data API — bank account linking, transactions, identity verification, asset reports. Auto-generated from Plaid's OpenAPI spec, so it covers the full API surface but the code reads like it. This is the only real option if you're building Python fintech that needs bank connectivity through Plaid.
Generated from the OpenAPI spec, so it's always in sync with the actual API — no undocumented endpoints or missing fields. Typed request/response models (TransactionsSyncRequest, etc.) give you IDE completion and catch field name typos at development time rather than runtime. The migration guide from pre-8.0 is thorough and honest about what broke. Active maintenance — pushed yesterday, monthly release cadence.
No async support in 2026. If you're running FastAPI or any async stack, every Plaid call needs run_in_executor wrapping. Error handling requires parsing json.loads(e.body) to get the actual error code — no typed exceptions per error category, just one ApiException with a raw body. The datetime timezone issue is documented but still a runtime landmine: strptime silently drops timezone info, and Plaid will reject the request with a confusing error rather than a clear validation message. The model directory is 800+ auto-generated files — debugging a serialization failure means tracing through generated code that was never meant to be read.