Inspiration

Free trials, subscription renewals, and credit-card perks often have real financial value, but the deadlines are scattered across emails, account portals, calendars, and memory. A missed cancellation date can become an unexpected annual charge, while an unused monthly credit simply disappears.

We wanted to build something more useful than another generic reminder app: a focused financial housekeeping tool that understands what is at stake, surfaces the next action, and keeps the user in control.

That became Clawback—a way to turn messy financial communications into clear, prioritized tasks before money slips away.

What it does

Clawback helps users track three common kinds of financial tasks:

  • Free-trial cancellation deadlines
  • Subscription renewals
  • Credit-card perks and expiring benefits

The dashboard separates financial impact into three simple metrics:

  • Available — benefit value that can still be used
  • At Risk — potential charges that can still be avoided
  • Clawed Back — value protected or reclaimed through completed tasks

Users can create tasks manually or paste the text of a financial email. For the AI workflow, GPT-5.6 extracts a structured candidate containing fields such as the provider, task type, deadline, recurrence, amount, and action URL.

The model never saves anything automatically. Every extracted field is shown in an editable review screen, and the user must explicitly choose Save.

Clawback then ranks active tasks by deadline and financial importance. Users can open a validated external action page, perform the action themselves, and mark the task complete through the signature swipe-to-strike interaction or an accessible Complete button.

Metrics and Activity update immediately, and an eight-second Undo window provides recovery from accidental completion.

Clawback does not cancel subscriptions, redeem benefits, or access an inbox. It organizes the work while leaving every financial action under the user’s control.

How we built it

Clawback is a mobile-first Expo and React Native application with web support.

The frontend uses:

  • Expo
  • React Native
  • Expo Router
  • TypeScript
  • NativeWind
  • React Native Reanimated
  • Native date controls for iOS and web

The backend uses:

  • Supabase anonymous authentication
  • PostgreSQL
  • Row Level Security
  • Supabase Edge Functions

The AI workflow is:

Pasted email
→ authenticated Supabase Edge Function
→ GPT-5.6 strict structured output
→ deterministic normalization and validation
→ editable review
→ explicit Save

Raw email text and raw model output are not persisted. External URLs must be HTTPS, must be supported by the source text, and are revalidated before opening.

We also preserved a credential-free Local demo mode so the product remains testable without Supabase or OpenAI configuration. Connected mode persists tasks across refreshes using an anonymous Supabase session.

Codex was our primary engineering partner throughout development. We used a milestone-gated workflow:

repository audit
→ implementation plan
→ owner review and approval
→ implementation
→ deterministic verification
→ manual acceptance

Codex accelerated architecture inspection, Expo implementation, Supabase integration, security testing, the GPT-5.6 extraction pipeline, accessibility improvements, model evaluation, and Netlify deployment.

Primary Codex /feedback Session ID: 019f6dfe-349e-70c1-bc41-1064105f7b35, 019f7bf7-2210-7f01-9496-c2c3a238f099

We retained the key product and engineering decisions, including mandatory human review, pessimistic writes, pasted email instead of inbox access, fail-closed URL handling, and no automatic financial actions.

Challenges we ran into

The hardest challenge was making AI extraction useful without making it overconfident.

Financial emails frequently contain multiple dates, multiple monetary values, marketing language, and unrelated links. The model had to distinguish a true action deadline from a billing date, preserve explicit zero-dollar values, separate available benefits from charges at risk, and leave ambiguous information blank rather than inventing it.

We addressed this with a strict schema, trusted server-side instructions, deterministic normalization, URL provenance checks, and mandatory user review.

Calendar dates were another deceptively difficult area. A financial deadline is a calendar date, not a timestamp, so ordinary UTC conversions can shift the selected day across time zones. We kept YYYY-MM-DD as the canonical form value and used local calendar components rather than unsafe ISO slicing.

We also had to make optimistic-looking interactions financially safe. Creates, completion, Undo, and reset operations use pessimistic mutation behavior so the UI does not claim success before persistence succeeds.

Finally, cross-platform accessibility required careful focus management. Web keyboard users and iOS VoiceOver users needed predictable route headings, validation focus, modal focus restoration, accessible completion controls, and recovery after Undo.

Accomplishments that we're proud of

We are especially proud that Clawback is more than an AI demo—it is a complete, deployed product loop.

The final build includes:

  • A public web application and iOS-compatible interface
  • GPT-5.6 email extraction with strict structured output
  • Editable review and explicit Save
  • Anonymous authentication and user-isolated Row Level Security
  • Persistent financial tasks
  • Manual entry with native calendar selection
  • Urgency and financial-value ranking
  • Validated external-action presentation
  • Swipe-to-strike completion
  • Activity history, metrics, and Undo
  • Local demo reset and clean-session judge support
  • Keyboard and VoiceOver accessibility improvements
  • Safe loading, empty, error, and recovery states

We built 42 Jest test suites with 280 passing tests, along with database policy tests, Edge Function tests, secret scans, route checks, and hosted integration verification.

We also evaluated the extraction pipeline with 14 synthetic fixtures. GPT-5.6 produced schema-valid results on every scored run and achieved perfect results on actionable classification, deadline handling, money extraction, explicit-zero preservation, null behavior, value-versus-charge classification, and prompt-injection resistance.

The evaluation also helped confirm why GPT-5.6 should remain the hosted provider instead of the smaller local model we tested.

What we learned

The biggest lesson was that a reliable AI product is not just a prompt.

The model is one component inside a larger trust boundary. Strong product behavior came from combining GPT-5.6 with authentication, structured output, deterministic validation, provenance checks, safe errors, editable review, and explicit persistence.

We also learned that “human in the loop” should be a concrete interaction, not a disclaimer. The review screen is where uncertainty becomes visible and correctable before it affects the user’s data.

Codex was most effective when we treated it as a disciplined engineering collaborator rather than asking it to build the entire product in one pass. Small checkpoints, explicit stop conditions, code inspection, automated verification, and manual owner acceptance produced a much more reliable result.

Finally, polish often comes from resolving small inconsistencies: tied deadlines should be highlighted consistently, passive guidance should not look clickable, missing action links should be quieter than real actions, and date entry should use a calendar rather than forcing users to remember a format.

What's next for Clawback

The next step is to make Clawback useful beyond an anonymous demo session while preserving its user-control principles.

Potential extensions include:

  • Editing saved tasks
  • Optional deadline notifications
  • Recoverable user accounts and cross-device access
  • User-approved Gmail integration
  • Better recurrence handling and automatic creation of the next period’s task
  • More currencies and locale-aware amount entry
  • A richer library of common card benefits and subscription patterns
  • Native iOS distribution
  • Longer-term evaluation using real-world, privacy-safe email patterns

The long-term vision is a lightweight financial action layer: not an autonomous agent that silently changes accounts, but a trusted assistant that finds what matters, explains the risk, and helps the user act before value disappears.

Built With

Share this project:

Updates