Hyve — The On-Chain Credit Union for the Other 99%
## Inspiration
78% of Americans live paycheck to paycheck. When an emergency hits — a car repair, a medical bill, a broken phone — their options are brutal: payday loans at 300%+ APR, credit card cash advances at 25%, or asking family. Meanwhile, their employer watches helplessly. Small businesses want to offer financial benefits but can't afford 401k administration, credit union charters, or banking partnerships.
We asked: what if the employees could fund it themselves?
That's Hyve. A self-funding savings vault where employees pool RLUSD, the employer matches contributions (like a 401k), and anyone in the pool can borrow at fair rates. No bank. No charter. No credit score. Just an XRPL wallet and an on-chain credential from your employer.
The breakthrough was realizing that XRPL's new amendments — XLS-65 (Single Asset Vault), XLS-66 (Lending Protocol), and XLS-70 (Credentials) — map perfectly onto this model. The vault is the savings pool. The lending protocol is the loan engine. The credentials are the access control layer. Every piece has a job.
## How We Built It
Backend: Express 5 with xrpl.js 4.6.0, talking directly to XRPL Devnet. Every user action (deposit, borrow, repay, withdraw) is a real on-chain transaction with a hash you can verify on the explorer. App-level metadata (company name, employee roster, vesting schedule) is persisted in PostgreSQL on Railway.
Frontend: Next.js 15 with React 19 and Tailwind CSS 4. Two dashboards — employer (create vault, onboard employees, manage loans) and employee (deposit, borrow, repay, track yield). XUMM/Xaman wallet connect via QR scan for real wallet authentication.
The full on-chain flow uses 9 transaction types across 3 amendments:
XLS-65 — Single Asset Vault
VaultCreate— spins up the savings pool with non-transferable shares (401k model)VaultDeposit— employee deposits RLUSD, receives MPToken shares; employer auto-matchesVaultWithdraw— cash out shares; unvested match is automatically clawed backVaultClawback— reclaims unvested shares if an employee leaves
XLS-66 — Lending Protocol
LoanBrokerSet— employer becomes the lending broker, controlling who can borrowLoanBrokerCoverDeposit— first-loss capital protecting depositors from defaultsLoanSet— dual-signed loan (borrower + broker) with tiered ratesLoanPay— installment repayment, funds flow back to the pool
XLS-70 — Credentials
CredentialCreate/CredentialAccept— "employee" credential gates vault access; "creditworthy" credential minted on full repayment = portable on-chain credit history
We also built tiered lending (emergency at 1.5% APR, standard at 4%, creditworthy at 2%), 401k-style vesting with cliff periods, a yield breakdown dashboard, and enriched transaction history showing exactly which XRPL primitive each transaction used.
## Challenges
MPToken scaling was a multi-hour bug. Vault shares returned as raw MPTAmount — 100,000,000 for a 100 RLUSD deposit. The vault's Scale field (6)
isn't documented anywhere. Our yield dashboard showed employees with $100M in shares until we traced the issue to the MPTokenIssuance object on the
vault's auto-generated account.
Share price calculation requires a 3-hop lookup. Vault object → vault's internal account → MPTokenIssuance → OutstandingAmount. There's no
SharesTotal field on the vault itself. We built getVaultShareStats() to automate this, but it shouldn't be this hard.
What We Learned
XRPL's new primitives are genuinely powerful. We built an entire credit union — savings pool, tiered lending, credential-gated access, employer match with vesting, clawback enforcement — using only native ledger operations. No smart contracts, no Solidity, no EVM. The ledger does the heavy lifting.
The model is self-reinforcing: employees deposit → pool grows → loans become available → repayment earns credentials → better rates attract more deposits. The employer's only cost is the match, and even that's optional.
Most importantly, the "creditworthy" credential solves a real problem. 45 million Americans have no credit score. With Hyve, full loan repayment creates a verifiable, portable, on-chain proof of creditworthiness — no bank, no SSN, no credit bureau. It lives on XRPL and follows you wherever you go.
## What's Next
- Mainnet deployment once XLS-65/66/70 amendments are voted in
- Real RLUSD integration replacing the Devnet simulation
- Payroll integration for automatic deposit deductions
- Multi-vault employer dashboard for companies with multiple locations
- Credit score interoperability — making the "creditworthy" credential readable by other XRPL dApps
Built With
- github
- javascript-frontend:-next.js-15
- javascript-next.js-15
- mptokens-auth:-xumm/xaman-sdk-(qr-wallet-connect)-database:-postgresql-deployment:-railway
- mptokens-xumm/xaman-sdk-(qr-wallet-connect)-postgresql-railway
- node.js-blockchain:-xrpl-devnet-(xrpl.js-4.6.0)
- node.js-xrpl-devnet-(xrpl.js-4.6.0)
- react-19
- rlusd
- tailwind-css-4-backend:-express-5
- tailwind-css-4-express-5
- typescript
- xls-65-single-asset-vault
- xls-66-lending-protocol
- xls-70-credentials
Log in or sign up for Devpost to join the conversation.