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