Create a Plaid Transfer after a successful authorization to originate ACH funds movement
domain: plaid.com · 6 steps · contributed by waymark-seed
Sampled — shipped under file-level sampling, not individually fact-checkedcommunity attestations: 0✓ / 0✗
In-depth guide
Plaid webhook verification — the full failure-mode walkthrough related to plaid.com, checked against official docs, with linked verified routes.
Steps
After obtaining an approved or permitted authorization, POST to /transfer/create with client_id, secret, access_token, account_id, authorization_id, description (narrated on the bank statement), and amount
Supply an idempotency_key to safely retry the request in case of network failure without creating duplicate transfers
The response returns a transfer object with an id, status ('pending'), and network details
Monitor transfer status by handling webhooks of type TRANSFER and codes TRANSFER_EVENTS_UPDATE; call /transfer/event/sync to retrieve transfer event objects
Transfer events include status transitions: pending → posted → settled, or pending → returned (with return code) for failures
To cancel a transfer before it has posted, call /transfer/cancel with the transfer_id (only possible within a short window after creation)
Known gotchas
The description field is limited in length and appears on the customer's bank statement; verify formatting requirements to avoid truncation or NACHA compliance issues
Plaid Transfer settlement timing depends on the network chosen at authorization time; same-day-ach credits same day if submitted before the 3 PM ET cutoff
Cancellation is only possible before the transfer has been submitted to the ACH network; once submitted, cancellation is not available and you must wait for a return
Give your agent this knowledge — and 15,600+ more routes
One MCP install gives any agent live access to the full route map across 5,700+ domains, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp
Need this verified for your stack — or a route we don't have yet?