Skip to content

CashPro API Integration

Problem / Motivation

Bank of America commercial accounts are not supported by Plaid. CashPro API provides access to these accounts. Developing for a single client that needs it now, but should be generally available.

Scope

Included:

  • Connect to BofA accounts via CashPro as an alternative to Plaid
  • Import transaction data using CashPro "Account Information" API
  • Store credentials in AWS Secrets Manager
  • Self-service credential update in management interface (low friction - CashPro rotates frequently)
  • Credential validation via API call (on save and/or manual test button - TBD)
  • UX should appear similar to Plaid connections from end-user perspective

Not included:

  • Historical data import (done manually for initial client)

Open Questions

  • What time does BofA's official day roll over? (to determine optimal sync time)
  • How should users be notified when credentials fail? (email, in-app, both?)
  • Notification should explain what needs updating and how, ideally with direct link to update form

Future Considerations

Out of scope for initial work:

  • Proactive credential health check during the day (before overnight sync fails)

Notes

  • API docs: https://developer.bankofamerica.com/CPODevPortal/apidocs/public/#/api/account-information
  • Auth: API key via Bearer token in Authorization header
  • Customer provisions a user with "reporting" privileges and provides credentials
  • Credential management UI lives in Astrata Accounting
  • Sync frequency: daily overnight + on-demand option
  • This is a parallel implementation to Plaid, not a replacement