Cross-border remittances on Stellar, secured by Soroban escrow with a recipient-claim model, live FX quotes, and ultra-low fees.
RemitFlow is an open-source remittance rail built on the Stellar network. Senders lock funds in an on-chain Soroban escrow contract, recipients claim them with a single tap, and either party can cancel before claim — all settled in seconds at near-zero cost. No middlemen, no opaque spreads, just transparent FX and money that moves at internet speed.
- ✨ Why RemitFlow?
- 🚀 Features
- 🏗️ Architecture
- 🧩 Repositories
- 🛠️ Tech Stack
- ⚡ Quick Start
- 🗺️ Roadmap
- 🤝 Contributing
- 📜 License
Traditional money transfers are slow, expensive, and opaque. RemitFlow rebuilds the rail from first principles on Stellar.
| 🏦 Traditional Remittance | 💸 RemitFlow | |
|---|---|---|
| Fees | 6–10% of the transfer amount | < $0.01 flat (a fraction of a cent) |
| Speed | 1–5 business days | 3–5 seconds to finality |
| Transparency | Hidden FX spreads & surprise charges | Live, on-chain FX quotes — what you see is what you send |
| Availability | Bankers' hours, weekday-only | 24/7/365 — no holidays, no cut-off times |
| Custody | Funds held by intermediaries | Non-custodial escrow — funds locked on-chain until claimed |
- 🔐 Escrow-secured transfers — funds are locked in a Soroban contract until the recipient claims them.
- 🙌 Recipient-claim model — money is delivered only when the recipient actively claims, eliminating misdirected sends.
- ↩️ Cancel-before-claim — senders can reclaim funds anytime before a claim, so money is never stuck.
- 💱 Live FX quotes — real-time, transparent exchange rates surfaced before you confirm.
- ⚡ Sub-cent fees — leverage Stellar's ultra-low transaction costs.
- 🌍 Global by default — settle across borders in seconds, around the clock.
- 🧾 On-chain auditability — every transfer is verifiable on the Stellar ledger.
- 🪙 Stablecoin-ready — built to move USDC and other Stellar assets.
RemitFlow follows a clean three-tier flow: a React client, a Node API gateway, and a Soroban escrow contract anchored to the Stellar network. The escrow lifecycle is create → claim (happy path) or create → cancel (refund path).
flowchart TD
Sender(["👤 Sender"]) -->|1. Create transfer + FX quote| FE["🖥️ Frontend<br/>React + Vite"]
Recipient(["👤 Recipient"]) -->|4. Claim funds| FE
FE <-->|REST / signed tx| API["⚙️ Backend API<br/>Node + Express"]
API -->|Build & submit transactions| ESC["🔐 Soroban Escrow Contract<br/>Rust"]
subgraph Stellar Network
ESC -->|create_escrow → funds locked| LEDGER[("⭐ Stellar Ledger")]
ESC -->|claim → release to recipient| LEDGER
ESC -->|cancel → refund to sender| LEDGER
end
LEDGER -.->|2. Locked confirmation| API
LEDGER -.->|3. Status updates / events| API
classDef accent fill:#4f46e5,stroke:#3730a3,color:#ffffff;
classDef chain fill:#1e1b4b,stroke:#4f46e5,color:#ffffff;
class FE,API accent;
class ESC,LEDGER chain;
Escrow lifecycle
create_escrow— the sender locks the transfer amount on-chain, naming the recipient and amount.claim— the recipient releases the locked funds to their own account.cancel— before any claim, the sender reclaims the funds (full refund).
| Repository | Description | Stack |
|---|---|---|
| RemitFlow-Frontend | Web client for creating, tracking, and claiming transfers, with live FX quotes. | |
| RemitFlow-Backend | REST API that builds Stellar transactions, serves FX quotes, and orchestrates escrow calls. | |
| RemitFlow-Contract | Soroban escrow contract implementing the create / claim / cancel lifecycle. |
Frontend
Backend
Contract
Spin up the full stack locally. You'll need Node.js 18+, Rust, and the Stellar CLI.
🖥️ Frontend — RemitFlow-Frontend (React + Vite)
git clone https://github.com/RemitFlow/RemitFlow-Frontend.git
cd RemitFlow-Frontend
npm install
npm run devThe app runs at http://localhost:5173 by default.
⚙️ Backend — RemitFlow-Backend (Node + Express)
git clone https://github.com/RemitFlow/RemitFlow-Backend.git
cd RemitFlow-Backend
npm install
npm startThe API listens on http://localhost:3000 by default.
🔐 Contract — RemitFlow-Contract (Soroban / Rust)
git clone https://github.com/RemitFlow/RemitFlow-Contract.git
cd RemitFlow-Contract
stellar contract build
cargo testBuild the WASM, run the test suite, then deploy with the Stellar CLI.
- Phase 1 — Core Escrow —
create_escrow,claim, andcancelon testnet. - Phase 2 — FX & Quotes — live exchange-rate quoting in the API and client.
- Phase 3 — Stablecoins — first-class USDC support and multi-asset transfers.
- Phase 4 — Identity & Compliance — optional KYC hooks and on/off-ramp partners.
- Phase 5 — Mobile — native iOS and Android apps with biometric signing.
- Phase 6 — Mainnet — production launch and third-party security audit.
Contributions make RemitFlow better for everyone — and they're warmly welcomed! 🙌
- Fork the relevant repository.
- Create a feature branch:
git checkout -b feat/amazing-feature. - Commit your changes with a clear, conventional message.
- Push the branch and open a Pull Request.
Found a bug or have an idea? Open an issue on the appropriate repo. Please be kind, constructive, and inclusive in all interactions.
RemitFlow is released under the MIT License. You're free to use, modify, and distribute it — see the LICENSE file in each repository for the full text.
Built with ❤️ on Stellar · Powered by Soroban