Reffi App Meeting - December 11, 2025
Attendees: Ronald Berry III, Alex De Gracia Duration: ~25 minutes Format: Video call
🎯 Meeting Objectives
- Review infrastructure setup (DNS, platform access)
- Discuss backend progress and integrations
- Clarify payment flow and Stripe implementation
- Plan testing and UAT strategy
- Confirm timeline and launch approach
âś… Completed Items
Infrastructure Setup
-
DNS Configuration: Ron completed Resend DNS setup for reffi.io domain
- MX records added
- DMARC configured
- Domain verified and active
-
Platform Access:
- Alex upgraded n8n via Render
- Render access granted to Alex
- No errors in current automation
Backend Development Progress
-
Integrations Complete:
- Resend API integrated (ready for testing)
- Stripe API integrated (test mode active)
- 105 security/code improvements resolved
- No visual/frontend changes (all backend work)
-
Code Cleanup:
- Local Supabase migrations removed (already remote)
- TypeScript errors resolved
- Security issues fixed
Collaboration Protocol Established
- Ron’s Focus: Frontend improvements via Lovable
- Alex’s Focus: Backend, security, integrations
- Handoff Rule: Database changes beyond simple field additions require Alex review
- Version Control: GitHub commits visible in Lovable version history
đź’° Payment Flow - Detailed Specification
Key Clarification
Complete payment model defined during this meeting. See Payment Flow Specification for full details.
Core Principles
-
Variable Pricing: Referees set their own rates (like Upwork)
- Different rates per sport, league, or individual game
- Profile shows baseline rate
- Can adjust rate when applying to specific games
-
Upfront Payment: Teams/Leagues pay when accepting application
- Example: Referee applies for $35/game
- League accepts → $35 captured immediately
- Funds held in escrow
-
Escrow Period: Funds held until job completion confirmed
- Game occurs
- League confirms completion
- Funds released to referee
-
Platform Fee: 10% deducted when active
- Example: 3.50 fee, $31.50 to referee
- Timing Decision Pending: Launch day or 6 months later?
Payment Approval Flow (Two Methods)
Method A: Automated Email (Recommended)
- Game date/time passes
- Wait X hours (e.g., 4-24 hours)
- Automated email sent to league
- League clicks “Approve Payment” in email
- Webhook fires → Edge Function triggered
- Funds released from escrow
Method B: In-App Manual Approval
- League logs into dashboard
- Views completed games awaiting approval
- Clicks “Approve Payment” button
- Funds released from escrow
Implementation Decision
Build both methods for maximum flexibility
Multi-Game Scenarios
- If referee signs up for 3 games at $35 each:
- 3 separate charges of $35
- Each held in escrow independently
- Individual approval per game completion
đź§Ş Testing Strategy
Phase 1: Production Stripe Migration
Blocker Identified: Identity verification fails in Stripe test mode
Solution: Switch to production Stripe
- Get production API keys
- Test with micro-transactions ($1)
- Validate real payment flow
Action: Ron will provide production keys when ready
Phase 2: Ron’s Offline Testing
Task: Ron tests Stripe account setup as referee
- Create account
- Connect Stripe
- Verify identity (should work in production mode)
- Report any issues
Phase 3: UAT Environment
Alex Building:
- Feedback popup on each page
- Direct submission to email/Slack
- Avoid issues like NeuroPathwayConnect (edge cases not caught)
Ron’s Beta Testers:
- Local referees and leagues
- Real-world usage testing
- Free beta period (6 months)
đź“… Timeline & Launch Strategy
Current Phase (Dec 11 - End of Year)
Focus: Frontend refinement Owner: Ron (via Lovable) Status: On track
Target Launch: Early January 2026
Launch Approach:
- Free Beta: No platform fee for 6 months
- Goal: Collect feedback, test in production
- Messaging: “Beta version, provide your feedback”
- Quality Bar: Tested and functional, not necessarily perfect
Post-Beta (6+ Months)
- Activate Monetization: 10% platform fee
- Notify Users: 30 days in advance
- Collect 6 months of feedback: Product improvements before charging
đź”§ Technical Implementation Needs
Immediate (Next 2 Weeks)
-
Email Testing
- Test all transactional emails with live domain
- Verify deliverability
-
Stripe Production Setup
- Update API keys
- Test referee account creation
- Process $1 test transactions
-
Escrow Implementation
- Dynamic product creation per game
- Payment capture on application acceptance
- Hold funds in escrow
- Build approval webhook handlers (email + in-app)
- Release funds with platform fee deduction
-
Database Updates
- Create
paymentstable - Track: amount, platform_fee, referee_payout, status
- Approval tracking: method, approver, timestamps
- Create
Before Launch
-
Edge Cases
- Referee no-show (dispute handling)
- Auto-release timeframe (e.g., 7 days)
- Partial completion scenarios
- League cancellation refund logic
-
Security
- Webhook signature verification
- Authorization checks (only hiring league can approve)
- Audit logging for all payment state changes
-
Testing
- End-to-end payment flows
- Email approval click → webhook → release
- Multi-game scenarios
- Platform fee calculation validation
đź’¬ Other Discussion Topics
Socium Automation Update
- Status: Running smoothly
- Last Run: Previous month (successful)
- Next Run: Week of Dec 16 (Thursday matching meeting)
- Client: Steven (Ron: “super chill, easy guy”)
- New Feature: Testing HubSpot beta - line items can now associate to commission objects
NeuroPathwayConnect Situation
- Alex experiencing challenges with client relationship
- Ron’s advice: Handle as appropriate, won’t get involved in inter-business relationships
- Ron’s philosophy: Doesn’t interfere with other people’s client relationships
- Client will find alternative dev if needed
Payment Processing
- Invoice: Payment scheduled for Monday (Ron’s funds cleared)
- Relationship: Partnership continues strong
- Appreciation: Both parties value the collaboration
📝 Action Items
Ron’s Tasks
- Test Stripe account setup offline (referee flow)
- Continue frontend improvements via Lovable
- Provide production Stripe API keys when ready
- Recruit local beta testers
- Flag any database changes beyond simple fields
Alex’s Tasks
- Test email system with live reffi.io domain
- Implement escrow payment flow
- Build email approval webhook handler
- Build in-app approval functionality
- Create UAT environment with feedback popups
- Update to production Stripe (when keys provided)
- Create payments database table
- Implement platform fee logic (configurable)
🎯 Success Criteria for Next Meeting
- âś… Email system tested and working
- âś… Production Stripe active with successful test transactions
- âś… Escrow payment flow implemented
- ✅ Ron’s offline Stripe testing complete
- âś… UAT environment ready for beta testers
Full Transcript
Complete conversation transcript available in meeting recording. Key technical specifications extracted and documented in: