Worlds / Payments and billing / Plaid
Plaid world
A local Plaid with Items, linked accounts, balances and a transaction feed with pending and posted entries. Test the agent that syncs transactions, checks balances and handles broken bank links.
ItemsBalancesTransactions SyncAuthWebhooks
| Date | Name | Amount | State |
|---|---|---|---|
| Oct 24 | Blue Bottle | $6.50 | PendingPosted |
| Oct 24 | Uber | $18.20 | PendingRemoved |
| Oct 23 | Payroll ACME | -$2,450.00 | Posted |
| Oct 23 | Whole Foods | $84.12 | PostedPosted x2 |
| Oct 22 | Con Edison | $96.40 | Posted |
fig. 1 · illustrative replica · the agent's changes land as you scroll
What's in this world
What you get when you open Plaid. Seeded, local, yours to break.
Seeded records
- items
- 40 across 12 institutions, 3 in ITEM_LOGIN_REQUIRED
- accounts
- 95 checking, savings and credit
- transactions
- 6,000 with 120 pending
- auth
- Routing and account numbers for 30 checking accounts
Agent jobs you can test
- Sync transactions with the cursor and handle removals
- Check available balance before a payout
- Flag Items that need the user to log in again
What your agent can get wrong here
The reply sounds right. The record is what counts.
ActionWhat the world recordsCommon mistake
Sync transactions
added, modified and removed against the stored cursorRestarts from an old cursor and stores the same transaction twiceReconcile pending
pending_transaction_id on the posted transactionKeeps both the pending and posted copyCheck balance
balances.available against the payout amountUses balances.current and approves a payout that overdrawsHandle a broken link
Item error code and the user noticeDeletes the Item instead of asking for update modeExample test
Describe the job. Review the checks before anything runs.
Bring every Item's transactions up to date. Drop pending entries that were removed and do not double count ones that posted. Flag Items that need a login instead of deleting them.
- 01Stored cursor advanced for every healthy Item
- 02No transaction_id stored twice
- 03Removed pending Uber charge deleted from the ledger
- 043 Items flagged for update mode, none removed
- 05Payout check used balances.available
fig. 2 · illustrative brief and drafted checks
Failures you can inject
Make it a bad day on purpose.
effect
Calls return ITEM_LOGIN_REQUIRED for one Itemfires before the handler · state untouched · same result every runEvidence
StatusIncluded in the closed beta, like every world in the catalog. Apply and tell us the workflow you want to test.Known limitations