Commit graph

6 commits

Author SHA1 Message Date
24c02
939aa09b8b fix oauth2 token loss? 2025-12-30 13:07:14 -05:00
24c02
9aea7b8ec8 Use env vars for all HCB credentials
- HCB_CLIENT_ID
- HCB_CLIENT_SECRET
- HCB_RECIPIENT_ORG_ID
- HCB_API_BASE (optional, defaults to https://hcb.hackclub.com)
2025-12-18 14:55:40 -05:00
24c02
c6458c3bd7 Use HCB_API_BASE env var instead of credentials 2025-12-18 14:50:38 -05:00
24c02
11c5f53074 Add HCB payment integration for indicia purchases
- USPS::IndiciumPolicy to check can_use_indicia?
- HCB::IndiciumPurchaseService for disbursement + purchase flow
- Add hcb_payment_account to letter_queues and usps_indicia
- Wire HCB payment into LettersController#buy_indicia
- Wire HCB payment into Letter::InstantQueue
2025-12-18 14:45:50 -05:00
24c02
b574d57a80 Add HCB OAuth and payment account controllers
- OAuth flow for linking HCB accounts
- CRUD for payment accounts (user/org pairs)
- Routes under /back_office/hcb/
- Use HCBV4::Client.from_credentials with proper token persistence
2025-12-18 14:42:55 -05:00
24c02
c0071a7593 Add HCB models and user associations
- HCB::OauthConnection for storing encrypted OAuth tokens
- HCB::PaymentAccount for user/org payment pairs
- User#can_use_indicia? and #hcb_connected? helpers
2025-12-18 14:41:15 -05:00