-
-
Parent Home: open Goal wallet beside the trip goal and save plan.
-
Goal wallet shows funding periods waiting for Approve or Skip.
-
Approve marks the period. It does not move money.
-
After Approve, funded percent stays put—only the period status changes.
-
Skip this period? Captured funding and the goal date stay the same.
-
Skipped. Kid funded percent unchanged; later periods rebalance from what is still open.
-
Take money out records cash already spent. PayPal is not charged again.
-
After take-out, pot percent drops; ledger captured total stays on the parent log.
-
Core loop: trip goal on Parent Home leads straight into Goal wallet funding.
-
Empty wallet: no funding schedule for this goal yet.
-
Short wallet: goal is underfunded and no period is left to cover it.
Inspiration
Goal Wallet started close to home. My godson was working toward a Disney cruise through chores — the kind of goal families actually care about, and the kind that is easy to fund poorly. Cash and allowances leak. Impulse spend wins. The hard, mostly invisible problem is not “motivating kids.” It is funding a kid’s goal through real contributions without that money escaping the plan before the date arrives. The godson story is credibility; the product loop is the hero. Goal Wallet extends Do My Chore so parents can put money on the goal with the same care they put on the chores.
What it does
- Family sets a goal (amount + date) in Do My Chore.
- App proposes a funding schedule — dated milestones toward the cost.
- Parent Approves or Skips/Declines each milestone.
- Approve → PayPal Sandbox Orders v2 create → parent approve → capture into sandbox business pot (Goal Wallet).
- Skip/Decline → $0 captured; kid progress % unchanged; shortfall spread across remaining periods so cost + date still pencil.
- Mid-goal take-out is ledger-only (no PayPal withdraw API); effective pot = captured − withdrawn; % and future proposed recompute.
Kid screens: percent only. Dollars/PayPal on parent side. Parent always final tap.
How we built it
Flutter + Supabase; PayPal Sandbox Orders v2 Merchant (not Platform); reject Holds and Payouts. AI proposes the chore plan and the funding schedule; the parent approves every transfer.
AI tools:
- Primary: nvidia/NVIDIA-Nemotron-3-Nano-30B-A3B via Nebius Token Factory (https://api.tokenfactory.nebius.com/v1/)
- Fallback: gpt-4o-mini (OpenAI)
Repo: https://github.com/pamu512/do-my-chore (main)
Challenges we ran into
Keeping kid percent and parent funding on honest separate rails; a skip must not punish kid percent; mid-goal take-out without rewriting capture history.
Accomplishments that we're proud of
Sandbox Orders v2 capture path evidenced; ledger take-out; Flutter Approve/Skip/Take-out shipped.
What we learned
A skipped week should re-spread the shortfall across the remaining dates instead of docking the kid, and a mid-goal take-out belongs on the ledger (captured minus withdrawn) so capture history stays intact.
What's next for Do My Chore — Goal Wallet
Judges can already try the sandbox path:
- Clone https://github.com/pamu512/do-my-chore (main).
- Follow docs/paypal-goal-wallet-sandbox-runbook.md.
- Watch https://youtu.be/f0RxJwxC7E0.
Sandbox only. There is no App Store or Google Play listing, and no hosted runnable app yet. Production PayPal is out of scope for this MVP.
We will keep polishing the parent funding loop — schedule review, Approve / Skip / Take-out, and the sandbox runbook — through the hackathon window. Next product work stays on that loop, not a store launch.
