Inspiration

Every year, a message arrives in our housing society's WhatsApp group: "Ganpati collection, ₹500 per flat. Pay here 🙏." Everyone pays. A month later someone asks where the money went, and the answer is always some version of "the receipts got lost, bhai." Usually nobody stole anything, but nobody could prove they didn't either.

When the Brahmaputra floods Assam, the same problem gets much bigger. Real relief groups buy tarpaulins, rice and water filters on credit and keep every invoice, but their proof reaches donors months later. Fake "URGENT relief, pay here" links never have to prove anything. So people who want to help hold back.

We call this donor doubt: the hesitation to give when you can't see where the money goes. It hurts honest organisers as much as donors. We wanted a platform where proof isn't a favour the organiser does. It's the only way money can move.

What it does

Trustle follows one rule: no bill, no money.

  1. Give. A donor picks a verified cause and pays through PayPal. The money isn't sent to the organiser; it's held.
  2. Spend and upload. The organiser buys what the cause needs and uploads a photo of the bill.
  3. Iris checks it. Iris, our AI verifier, reads the bill and runs checks: do the line items add up to the total, is the date inside the cause's period, has this bill been used before, does the vendor look real, are there signs of editing?
  4. Pay out or escalate. A bill that scores 90 or above is paid back to the organiser automatically through PayPal Payouts, the same day. Anything lower goes to a human checker, who sees Iris's reasons next to the bill and can call the organiser before approving or rejecting it.
  5. Show everything. Every donation in and every bill out appears on a public ledger anyone can read without logging in, with a downloadable account statement. Donors can ask Iris, in any language, "where did my money go?" and get the exact bills their money paid for.

Groups that can't pay upfront can take a small advance with a bill deadline. If the bills never arrive, the group is marked as defaulted and every donor is refunded through PayPal.

The fee, done honestly. A donor can cover the PayPal fee so the cause receives the full amount. With a percentage fee $r$ and a fixed fee $f$, for the cause to receive exactly $a$ the donor pays:

$$ d = \frac{a + f}{1 - r} $$

With $r = 3.49\%$ and $f = \$0.49$, a \$25 gift becomes $\frac{25 + 0.49}{1 - 0.0349} \approx \$26.41$, and the cause gets exactly \$25.

The approval rule. For a bill $b$ with Iris score $s(b) \in [0, 100]$:

$$ \text{action}(b) = \begin{cases} \text{auto-approve and pay out} & s(b) \ge 90 \ \text{send to a human checker} & s(b) < 90 \end{cases} $$

Iris can score a bill, but it can never release money on a doubt.

How we built it

  • Frontend: Next.js with separate views for donors, organisations, checkers and admins. These include cause pages, the public ledger, the bill proof page with its "money trail", My donations, the organiser dashboard and the review queue.
  • Backend: a Node API with PostgreSQL through Prisma. A held-balance model tracks for each cause what was raised, what was spent against verified bills, and what is still held.
  • PayPal:
    • Orders to take donations.
    • Payouts to reimburse organisers for verified bills.
    • Refunds for defaulted advances.
    • Webhooks to keep our records in step with what PayPal actually settled.
  • Iris (AI) on Groq: a vision model reads the bill and GPT-OSS 120B judges it against structured checks. These cover arithmetic, the date window, duplicates in an invoice registry, vendor details, purpose match and signs of editing. Each check returns a pass or fail with a reason.
  • Ask Iris: answers come from the donor's own ledger entries, so the reply (in Hindi or any other language) cites real bills and payouts.

Challenges we ran into

  • Making AI safe to trust with money. An LLM that hallucinates "approved" is worse than no AI. We kept Iris strictly advisory below the threshold and made every check produce a concrete, human-readable reason. An edited total is caught by plain arithmetic, not by the model's mood.
  • Held money that's actually held. Getting raised, held, claimable and spent to stay consistent took careful design. Bills being checked, advances, refunds and fees all touch the same balance, and an organiser must never be able to claim more than is held for a cause.
  • Fees that don't surprise anyone. Solving for the fee-on-top amount and explaining it in plain words took more iterations than expected.
  • Duplicate and recycled bills. The same invoice can be photographed twice or reused for another cause, so we added an invoice registry and a history of each organisation's bills.
  • Explaining it without jargon. Our users are colony residents and small NGOs, not accountants, so every screen says "held safely" and "spent on verified bills" instead of showing escrow terminology.

Accomplishments that we're proud of

  • A complete money loop on PayPal: donation, hold, verified bill, same-day payout, and an automatic refund on default.
  • Iris catches an edited bill (a total pushed above what the items add up to), flags it, and a real person rejects it. Not a cent moves.
  • A public ledger anyone can open without logging in, where every expense links to its bill, Iris's check and the PayPal payout.
  • A donor can ask "where did my money go?" in Hindi and get an answer citing the exact bills.
  • Two real stories, a Ganpati festival and Assam flood relief, running end to end on the same rule.

What we learned

  • Transparency works best as a default rule, not a feature: if money can't leave without a bill, nobody has to ask for proof.
  • AI is most useful in a payments flow when it explains its reasoning and hands decisions to people at the edges.
  • PayPal's building blocks (Orders, Payouts, Refunds, Webhooks) are enough to build escrow-like, accountable giving.
  • Honest organisers want this as much as donors do. Trustle protects them from suspicion, not just donors from fraud.

What's next for Trustle

  • Integrations with real GST and vendor registries, to cross-check invoices.
  • WhatsApp bill upload, for organisers who never open a laptop.
  • Shareable "proof cards" for each payout, so a colony group sees each bill as it's paid.
  • Pilots with housing societies and small NGOs in Pune and Guwahati.

Built With

Share this project:

Updates

Submission history