Retroactive Grant Application: Zapp

Zapp — Retroactive Grant Application (Q3 2026)

Ask: $40,000 USD
FPF issue: Retroactive Grant Application - Zapp · Issue #40 · Financial-Privacy-Foundation/ZcashCoinholderGrantsProgram · GitHub — Retroactive Grant Application - Zapp · Issue #40 · Financial-Privacy-Foundation/ZcashCoinholderGrantsProgram · GitHub
Android Download: https://play.google.com/store/apps/details?id=xyz.justzappit.zapp
iOS Waitlist: https://www.justzappit.xyz
Source (Android): GitHub - JustZappIt/zapp-android — GitHub - JustZappIt/zapp-android: Zapp: a Zcash wallet with end-to-end encrypted P2P messaging. Fork of zodl-inc/zodl-android. · GitHub
Source (P2P Messaging SDK): GitHub - JustZappIt/zappmessaging-sdk— GitHub - JustZappIt/zappmessaging-sdk: Open-source peer-to-peer messaging SDK for Zapp applications, built on the Holepunch/Pear stack (Hyperswarm + Bare) · GitHub
License: MIT (upstream-derived code) / MIT OR Apache-2.0 (Zapp-original code — offramp-lib, evm-lib, the chat feature) in zapp-android; Apache-2.0 in zappmessaging-sdk

Why this exists
Most wallets split messaging, paying, and cashing out ZEC into three separate apps, creating high friction. We built past our Zypherpunk Hackathon demo to fix this: an encrypted, serverless messenger (no phone number) with shielded ZEC payments inside each chat, plus a direct cash-out path to local fiat that bypasses custodial exchanges.

Privacy shouldn’t mean fewer places to spend it.

What shipped
Live on Google Play production: xyz.justzappit.zapp, v4.2.0

  • ZappMessaging: open-source, serverless P2P messaging SDK (Hyperswarm + Bare), no phone number, no central server
  • Shielded ZEC sendable inside a chat thread, alongside address-sharing and payment-request message types
  • Scan-and-pay offramp across seven local rails: UPI (India), PIX (Brazil), QRIS (Indonesia), NIP (Nigeria), Mercado Pago (Argentina), PagoMovil and Transferencia (Venezuela), and Colombia — built on the wallet’s own existing ZEC swap rails, not a bolted-on processor
  • ZKPassport-gated USDC onramp — no custodial KYC
  • Keystone hardware-wallet fix: the app now refuses a signature if the connected firmware can’t actually broadcast the resulting transaction (firmware 3.0.1 or later required)
  • Ironwood (NU6.3) readiness UI shipped ahead of network-upgrade activation
  • Cross-border P2P messaging demonstrated working, China to outside China

Why it matters to Zcash

Zcash gives people the ability to transact privately, but shielded ZEC is still hard to use in the two situations people actually spend money: talking to someone, and paying for something local. Zapp puts ZEC directly into a private conversation instead of a separate app you have to context-switch into, and puts real local payment rails behind it instead of leaving the last mile to a custodial exchange. Every rail is additive on top of the wallet’s existing swap infrastructure and the ZappMessaging SDK is open source, so the same pattern is reusable by any other Zcash wallet, not locked to Zapp.

Happy to answer questions in this thread during the review period.

1 Like

Quick update on where Zapp is since the application went up.

We’ve integrated Peer (https://peer.xyz) as an offramp partner. It’s an escrow rather than a payment processor, so the user is the maker for these p2p orders. Their USDC sits in an order the protocol holds, priced at the Chainlink rate, a buyer pays them in fiat, and the escrow releases against the buyer’s proof. Zapp never holds the funds and there’s no account to open.

That gives Zapp payout in an ADDITIONAL eleven currencies (USD, EUR, GBP, AUD, CAD, CHF, MXN, NZD, SGD, TRY, ZAR) across Revolut, Zelle, Chime and Monzo. All without any custodian and no KYC.

Two other improvements.

We’ve added in a portfolio chart now, so people can see performance in their local currency. It’s optional, and when it’s off the app shows ZEC balance history without requesting prices at all.

Chat settings are granular. Read receipts, online status and background delivery are each toggleable instead of being implied by using the app, and the messaging SDK is overall more hardened.

One correction to the application while I’m here. The license line is out of date. The repo has been relicensed to the AGPL, version 3 only.

Will continue to provide updates as we ship!

1 Like