Horus — The Smart Wallet That Helps Secure Your Financial Future

Inspiration

Every day, millions of people pay with the wrong card. They earn 1× when they could've earned 4×, or push a card past 30% utilization and quietly tank their credit score. In 2023 alone, U.S. consumers left $500 million in credit card rewards unredeemed — not because the rewards weren't there, but because the choice of which card to use happens in two seconds at a checkout, with no information.

We built Horus to make that choice for you — intelligently, invisibly, and in real time.

What it does

Horus is a mobile wallet that automatically routes every purchase to the card that earns you the most, while protecting your credit health in the background. Add your cards once, then tap to pay anywhere contactless is accepted. Horus picks the optimal card based on the merchant, the category, your reward multipliers, and your current utilization across every line of credit you own.

With Horus, you can:

  • See all your cards, balances, credit limits, and utilization in one unified dashboard
  • Tap to pay and let Horus pick the best card automatically — no more guessing at the register
  • Switch between Max Rewards mode (maximize points and cashback) and Max Credit Health mode (protect your credit score by spreading spend across low-utilization cards)
  • View every transaction with the routing reason: why this card, what multiplier you earned, and how it affected your utilization
  • Track rewards, expirations, and category spend across every issuer in one feed

How it works

For every purchase, Horus looks at three things:

  1. The merchant category — coffee, gas, flights, rent, etc.
  2. Your reward multipliers — how many points or how much cashback each of your cards earns in that category
  3. Your credit utilization — how close each card is to its limit

Then it picks the card that earns the most, with one twist: if a card is getting close to maxed out, Horus penalizes it so you don't tank your credit score chasing rewards.

You control how aggressive that penalty is with one toggle:

  • Max Rewards mode — penalize only above 30% utilization. Chase the points.
  • Max Credit Health mode — penalize above 20%. Spread the spend, protect the score.

Same coffee, same Tuesday, two different cards depending on which mode you're in — and the app shows you exactly why it picked the one it did.

How we built it

Layer Stack
Mobile React Native + Expo Router (TypeScript, NativeWind), TanStack Query, Reanimated
Backend Python 3.12 + FastAPI, sub-50ms routing decisions
Data Supabase Postgres with row-level security, behind a repository interface
Live updates WebSocket channel pushing routed-transaction events the instant authorization clears
Payments Contactless tap-to-pay via the device secure element, surfacing the routed card to Apple Pay / Google Pay at authorization time

The repository is split cleanly:

mobile/ Expo / React Native app backend/ FastAPI service + decision engine supabase/ SQL migrations, RLS policies, generated types

A repository interface keeps the routing engine database-agnostic, so the same engine can run against a local JSON document during development and Supabase Postgres in production without a single line change in the engine itself.

The four-card demo portfolio

To show the engine off, the app ships with a representative four-card portfolio:

Card Multipliers Utilization
Amex Gold 4× dining, 4× grocery, 3× flights 24%
Chase Sapphire 3× dining, 2× travel 60%
Bilt World Elite 3× dining, 2× travel, 1× rent 6%
Costco Visa 4× gas 0%
  • A $7.50 coffee → Amex Gold (4× dining)
  • A $250 flight → Amex Gold (3× flights)
  • A $40 fill-up at Shell → Costco Visa (4× gas)
  • Switch to Max Credit Health mode, tap a dining purchase → Bilt instead of Chase, because Chase is at 60% utilization

Same purchase, different card, smarter outcome.

Team

Challenges we ran into

  • Designing a routing rule that gracefully handles missing categories, tied multipliers, and unknown merchants without surprising the user. The current logic is the third version — the first two were either too punitive or too forgiving.
  • Balancing reward maximization against credit health. The two modes had to produce visibly different decisions on the same purchase, or the toggle isn't worth shipping. Tuning the thresholds took more iteration than the engine itself.
  • Sub-50ms routing latency. Every millisecond between tap and confirmation breaks the illusion of intelligence. We profiled, cached card metadata in memory, and pushed the routing decision into a single Postgres round-trip.
  • Earning trust at the moment of payment. Showing the reason for the pick — the multiplier, the category, the utilization delta — turned out to matter more than the pick itself.

Accomplishments we're proud of

  • A routing engine that genuinely changes its mind based on a single setting, in a way users can feel
  • A unified wallet UI that makes credit utilization — usually buried in a credit-monitoring app — first-class information at the moment of payment
  • A clean, scalable foundation: cards, transactions, settings, and routing all live behind interfaces, ready to plug into Plaid, Stripe Issuing, or a real card-network partner
  • Four developers, one week, zero merge accidents — thanks to a strict trunk-based workflow with shared git hooks and CODEOWNERS review

What we learned

  • Credit utilization is the most underrated signal in consumer fintech UX. Once you surface it at point-of-sale, every recommendation feels obvious in hindsight.
  • The hard problem isn't picking the best card — it's earning the user's trust that the pick was right. Showing the reason matters more than showing the result.
  • A simple, well-typed repository layer is worth more than a clever ORM when you need to move fast and swap data backends later.
  • Applied AI in fintech doesn't have to mean a chatbot. A small, deterministic, explainable scoring rule — at the right moment in the user's day — can deliver more value than a large model behind an API.

What's next for Horus

  • Real banking integrations via Plaid for live balances, statements, and utilization
  • Issuer partnerships and Stripe Issing for Horus-native virtual cards
  • Reward-expiration reminders and category-spend nudges before you overspend
  • Convert points and cashback directly into debt paydown or investment deposits
  • Web dashboard for visual financial analytics
  • Collaborations with banks, fintechs, and credit-education platforms to bring optimal-card routing to everyone

Horus turns the rewards you've already earned into real, compounding savings.

Built With

Share this project:

Updates