Teleperson
Features

Plaid Purchases

Securely link a bank or card and see your spend with the current company.

The Purchases tab in the side panel shows your spend with the company you're on right now: 30-day, 90-day, and lifetime totals plus a list of recent transactions. To enable it you connect a bank or card through Plaid once; from then on, every Teleperson session has the merchant context.

Plaid Purchases tab on amazon.com showing 30-day $284, 90-day $1,127, and $8,402 lifetime totals plus four recent transactions including a recurring Amazon Prime subscription

How linking works

Plaid runs the entire credential exchange. The flow:

  1. You click Connect a bank in the Purchases tab. The extension opens Plaid Link in a popup window.
  2. You pick your institution, sign in on Plaid's surface (not Teleperson's), and approve the data scopes.
  3. Plaid returns a public token to the extension. The extension forwards it to a Teleperson Edge Function, which exchanges it for an access token server-side.
  4. The access token is encrypted with AES-256-GCM before being written to Postgres. Plaintext access tokens exist only inside the Edge Function for the duration of one request.

Teleperson never sees your bank credentials. Plaid handles them entirely.

Merchant normalization

Bank transactions arrive with messy merchant strings — "AMZN MKTPLACE PMTS", "AMAZON.COM*MK1XJ4...", and so on. Teleperson resolves them to companies in your Hub through a four-tier pipeline:

  1. Plaid entity ID — Plaid's own canonical merchant ID, when present.
  2. Normalized name — strip noise tokens, match against the catalog.
  3. Fuzzy match — Levenshtein-based fallback for common variants.
  4. Admin review queue — anything still unresolved goes to a human review queue. Once an admin maps it, every Teleperson user retroactively benefits from the resolution.

What you see

For the company on the current tab:

  • Spend totals — 30-day, 90-day, and lifetime sums.
  • Recent transactions — date, amount, normalized merchant string, raw Plaid description, account.
  • Subscription detection — recurring charges flagged with a 🔁 chip and a "next charge" estimate.

Disconnecting

The Purchases tab has a Disconnect button next to each linked institution. Disconnecting:

  1. Calls Plaid's /item/remove to invalidate the access token at Plaid.
  2. Deletes every row scoped to that connection in Postgres — transactions, accounts, the encrypted access token itself.
  3. Appends an audit-log entry.

It is not a soft delete. The data is gone.

Multiple connections

You can link multiple institutions. Each one is its own user_plaid_connection row, and the Purchases tab unions transactions across them when computing totals.

On this page