enhancementgood first issueintegrationnew-featurenew-integration
Metriche repository
- Star
- (1930 stelle)
- Metriche merge PR
- (Metriche PR in attesa)
Descrizione
Description
Add Brex integration to sync corporate finance data including transactions, payments, cards, and team management into CORE.
Reference Implementations
Existing Integrations (use as templates)
integrations/hubspot/- Similar business data systemintegrations/linear/- Project management integrationintegrations/slack/- For reference
Required Files Structure
integrations/brex/
├── src/
│ ├── index.ts # Main entry, OAuth spec
│ ├── schedule.ts # Sync logic
│ ├── utils.ts # Brex API utilities
│ ├── account-create.ts # OAuth setup
│ └── create-activity.ts # Activity formatting
├── package.json
├── tsup.config.ts
└── README.md
Brex API Integration
OAuth Setup
- Use OAuth 2.0 authorization
- Brex APIs use REST architecture with OpenAPI specification
- All APIs accept and return JSON and require HTTPS
- Base URL:
https://platform.brexapis.com - Developer portal: https://developer.brex.com/
Key Endpoints
- Transactions API - Access Brex transaction data
- Payments API - Programmatic payments (ACH, wires, checks)
- Team API - Onboard users, issue virtual cards
- Budgets API - Manage budgets and spending limits
- Accounting API - Accounting data and reconciliation
- Expenses API - Expense management and tracking
Events to Track
- Transactions - New transactions, transaction updates, card purchases
- Payments - Payment created, payment completed, payment failed
- Cards - Card issued, card activated, card deactivated
- Team - User onboarded, user updated, role changes
- Expenses - Expense submitted, expense approved, expense rejected
Implementation Tasks
- Set up basic integration structure following
integrations/github/src/index.tspattern - Implement OAuth 2.0 flow in
account-create.ts - Create API utilities in
utils.tsfor Brex API calls - Implement sync logic in
schedule.tsfor transactions, payments, and cards - Convert financial events to CORE activity format
- Add error handling and rate limiting
- Create integration documentation
- Add to
integrations/README.md
Technical Notes
- APIs are defined using OpenAPI specification and use standard HTTP response codes and verbs
- Public Postman collections available for testing
- Brex has a Slack community for API integration support
- Consider pagination for large transaction datasets
Resources
Labels
enhancement, integration, new-feature