Skip to content
AnasabubakarPublic

About

Verify a bill, fund it directly, keep the receipt. Expo app for web, iOS and Android on Stellar testnet. Prototype: sample data, no real funds.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

SETTLE

Verify a bill. Fund it directly. Keep the receipt.

An AI-assisted, cross-platform bill-support experience built with Expo and designed for Stellar settlement.

CI Release MIT License Contributions welcome

Web iOS Android Expo Stellar

Quick start · What it does · Stellar readiness · Roadmap · Contributing


What is Settle?

Settle is an evidence-led way to support an essential bill. A requester uploads a bill, Settle extracts and redacts relevant fields, then a supporter can swipe to fund part or all of the verified request. The intended route is provider-direct settlement: help reaches a biller, not a public personal wallet.

Support is never payment for access, labor, publicity, a relationship, or any other personal demand. Optional Kind Gestures are non-transactional acknowledgements that a requester can decline freely.

What it does

Requester Supporter Settlement foundation
Upload photos or PDFs of a bill Swipe through verified requests Stellar network configuration defaults to testnet
AI review, field extraction, and privacy redaction preview Fund a custom, partial, or complete amount Server-verified quote and authorization data types
Publish a respectful request Add an optional, non-transactional Kind Gesture Mainnet capability is explicitly gated

Product status

Surface Status Notes
Web app ✅ Interactive Expo web export available
Android / iOS ✅ Expo source Use Expo Go for the current UI prototype
Bill uploads ✅ Local picker flow No real documents are sent to a server yet
AI review 🟡 Product simulation A scripted review with sample fields. No model reads a bill. Needs private backend processing first
Stellar settlement 🟡 Testnet foundation A Freighter wallet adapter exists for web and the separate settle-api is a testnet reference implementation. Funding in the app is still a preview: no payment is created or signed from the UI
Mainnet funds 🔴 Not enabled Requires the readiness guide
Informational pages ✅ Built How it works, guidelines, about, FAQ, privacy and terms. See Pages

Pages

The web build (and the Profile screen's More section on iOS and Android) includes these pages. Each web route sets its own document title and meta description, has a skip link, and works from 375 px wide.

Route Purpose
/how-it-works The flow from bill to receipt, with each step marked built, simulated or not built
/guidelines Community rules: support is never payment for anything, Kind Gestures are optional, eligible bills, and what is still undecided
/about What Settle is, the maintainer, repositories, contributing and security links, status table
/faq Plain answers about real money, files, testnet, payees and AI review
/privacy What stays on device, the one stored key, network requests and hosting
/terms Testnet prototype terms: no real value, MIT software as is, not advice

Page copy and statuses live in src/content/site.ts. Update them in the same change as any behavior they describe, for example when the funding sheet starts requesting real quotes.

app.json sets web.output to static, so npx expo export --platform web writes one HTML file per route (dist/faq.html). Serve it with clean URLs (for example Vercel cleanUrls: true or npx serve dist) so /faq resolves.

Quick start

git clone https://github.com/anasabubakar/settle.git
cd settle
npm install
npm run web

For mobile development, run npm start, then open the Expo Go QR code. Use npm run android or npm run ios when you have the relevant local tooling.

Environment

cp .env.example .env.local

The app defaults to Stellar testnet. Never put signing keys, provider credentials, API secrets, or personal documents in an EXPO_PUBLIC_* environment variable.

How payment will work

flowchart LR
  R[Requester uploads bill] --> V[Private verification and redaction]
  V --> S[Supporter selects amount]
  S --> Q[Settlement API creates verified quote + unsigned XDR]
  Q --> W[Wallet signs exact payload]
  W --> N[Stellar network]
  N --> I[Receipt indexer and provider reconciliation]
Loading

The client never derives USDC from a fiat bill amount, invents a provider destination, chooses an issuer, or holds a signing key. Read Stellar readiness before proposing a mainnet integration.

Project layout

Path Purpose
src/app/ Expo Router screens
src/components/ Shared UI, animation, contribution, and gesture flows
src/components/site/ Site header menu pieces, footer, and page layout for the informational pages
src/content/ Copy, status labels and links for the informational pages
src/services/stellar.ts Client-safe network and server-quote boundary
src/data/ Sample data only
assets/animations/ Local Lottie assets
docs/ Architecture and operating guidance

Verify locally

npx tsc --noEmit
npm run lint
npx expo export --platform web
npx expo-doctor

Roadmap

  • Responsive web, iOS, and Android Expo experience
  • Bill photo/PDF selection and AI-review UI
  • Direct-support guardrails and optional Kind Gestures
  • Stellar testnet configuration and server-quote boundary
  • Informational pages: how it works, guidelines, about, FAQ, privacy, terms
  • Private evidence storage, redaction, and human review workflow
  • Provider verification and a production settlement API (a testnet reference exists in settle-api)
  • Testnet wallet signing from the funding sheet, confirmation observer, and receipt indexer
  • Security/compliance review, closed pilot, and mainnet decision

Contributing

Contributions are welcome. Read CONTRIBUTING.md, follow the Code of Conduct, and use the issue templates.

Security and safety

Do not report vulnerabilities in a public issue. See SECURITY.md. This repository is not a money-transmission service and does not currently move real funds.

License

MIT © 2026 Anas Abubakar. See LICENSE.

About

Verify a bill, fund it directly, keep the receipt. Expo app for web, iOS and Android on Stellar testnet. Prototype: sample data, no real funds.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages