full-stack developer who builds SaaS with Supabase/Next.js and integrates third-party APIs via OAuth
Budget: $1200.0
FIXED /
⭐ 0.00 (0)
Australia
postgresql, api-integration, node.js, oauth
Supabase backend + ServiceM8 & Xero OAuth integration for SaaS MVP
I’m building a revenue intelligence SaaS for Australian trade businesses. The frontend is already built. I need a backend in Supabase that connects to ServiceM8 and Xero via OAuth and calculates job-level gross profit.
What I need built — nothing more:
1. Supabase schema (4 tables)
• users — id, email, business_name, phone, plan, created_at
• connections — id, user_id, platform, access_token, refresh_token, expires_at
• jobs — id, user_id, job_name, revenue, labour_cost, materials_cost, gp_percent, completed_at
• insights — id, user_id, week_starting, best_job_type, worst_job_type, avg_gp, report_text, sent_at
Row Level Security enabled. Users see only their own data.
2. ServiceM8 OAuth flow
• OAuth 2.0 authorization — user clicks Connect, approves, token stored in Supabase
• Token refresh handled automatically
• Pull from: /job.json, /jobmaterial.json, /jobactivity.json
• Calculate GP%: (revenue - labour - materials) / revenue × 100
• Daily sync via Supabase Edge Function cron
3. Xero OAuth flow
• Same OAuth 2.0 pattern
• Pull from: invoices, accounts
• Cross-reference with ServiceM8 data to validate GP%
4. Monday WhatsApp trigger
• Supabase Edge Function runs every Monday 7am AEST
• Queries last 7 days of jobs per user
• Calculates best job by GP%, worst job, weekly average GP%
• Sends via Twilio WhatsApp API (I provide credentials)
• Stores result in insights table
5. Auth
• Supabase magic link (email only, no passwords)
What I do NOT want:
• No custom admin dashboard
• No payment integration
• No mobile app
• No Docker or complex deployment
• No unit tests for MVP
Deliverables:
1. Supabase schema live with RLS and seed data
2. ServiceM8 OAuth working end-to-end
3. Xero OAuth working end-to-end
4. Daily sync edge function confirmed working
5. Monday WhatsApp confirmed with test send
6. Plain English README
Payment is milestone-based — you get paid when each piece is verified working.
To apply, answer both:
1. Have you built OAuth integrations with Xero, QuickBooks, or any accounting API before? Briefly describe it.
2. What’s one thing in this brief you’d want to clarify before starting?
Proposals that don’t answer both questions will not be considered.
Ouvrir sur Upwork