Skip to content

UMBR is live on testnet. Private payments with test funds on Robinhood Chain and Tempo.

Open the app
UMBR
Live on testnet

Private money on public chains

Hold, pay and get paid in stablecoins while amounts and balances stay off the public record. Built for people, teams and the agents that work for them.

What UMBR is

The app

Try it now

Shield, pay and run payroll from a wallet you already own. UMBR never takes custody of your keys.

Open app

The protocol

A shielded pool, in the open

Private balances on Robinhood Chain and Tempo testnets. The transfer settles publicly; the amount and the parties do not.

Check a proof

The SDK

Ship it in your product

One TypeScript package for private balances, payments and proofs inside your own app or agent.

See the SDK

A public chain reads every payment aloud. UMBR lowers its voice.

On an open ledger, anyone can look up what you paid, who you paid and what is left. That suits a protocol. It does not suit a salary, a supplier or a company account. UMBR keeps settlement on the public chain and the details with the people involved.

What a plain transfer exposesWhat an onlooker sees with UMBR

Private money, working on testnet

Shield funds, pay anyone and prove what you hold without naming the number. Running today with test funds on real contracts.

Play with the controls. Each button opens the real app on testnet.

From your walletUSDG

2,000

Private balance Only you

2,000

Choose an amount, then switch views to see what an onlooker gets.

Shield funds
Private balance

Move USDG, pathUSD and other supported stablecoins into a balance that only you can read.

Pay

umbr1q9xe…t4kd

AmountpathUSD

300

Explorer entryPrivate transfer
Pay privately
Private pay

Pay an UMBR address or share a claim link. The explorer records a transfer, never the sum.

Balance of $15,000 or more

Backed by your private balance

18,340 USDG

Create a proof
Prove

Give a lender, auditor or partner the one fact they need, and keep the rest to yourself.

One payment, one owner. No one else needs a key.

Systems that compute over many people's hidden data, like sealed-bid auctions or shared lending books, need someone to hold a key for everyone. A payment belongs to one person, so that person can prove it on their own device.

Shared-key designs

Committees, MPC networks, private operators

A group or an operator keeps the key.

Compromise that key and every user behind it can be exposed, history included.

UMBR

Proofs made by the owner

Your device builds the proof. There is no shared key.

Compromise one device and one person is affected, not the whole pool.

Some privacy services generate proofs on their own servers, which means those servers see your amounts. UMBR proves in your browser, never on ours. Compare approaches

For money that is nobody else's business

Stablecoins made moving money on-chain quick and cheap. UMBR makes it discreet enough for the people who actually depend on it: you, your team, your company and your agents.

On the roadmap. Tokenized stocks can already be held and sent privately on the Robinhood Chain testnet. Private trading is being designed next. About private trading

Payroll from a single file

Upload names and amounts. UMBR pays each person from your private balance and can hand every payment to a relayer, so your own wallet stays out of the record too.

  • Upload a CSVName, UMBR address, amount
  • Preview the public recordNo names, no amounts
  • Run itSeconds per payee

April payroll

5 payees · USDG

Everyone paid
  • Amara Osei

    UMBR address

    6,200 USDGPaid
  • Jonas Berg

    UMBR address

    5,100 USDGPaid
  • Lena Ruiz

    Claim link

    4,350 USDGPaid
  • Kenji Mori

    UMBR address

    3,800 USDGPaid
  • Priya Nair

    Claim link

    2,750 USDGPaid
22,200 of 22,200 USDG

For developers and agents

Private payments in any product

The SDK brings private balances, private transfers and proofs to any app or agent. Agents can pay per call without revealing the treasury behind them.

pnpm add @umbr/sdkTypeScript
import { createUmbrClient, networks } from "@umbr/sdk";

const umbr = createUmbrClient({ network: networks.tempoModerato, wallet });
await umbr.send({ to, asset: "pathUSD", amount: "250.00" });
// the explorer shows a private transfer: no amount, no recipient

Private, and still provable

UMBR does not invent new cryptography. It packages proven pieces into something finance can use.

Prove a payroll total

Show that a batch of payments added up to an exact sum, without listing who received what.

Read how

Proofs with an audience

Every proof is bound to the reader it was made for and to an expiry. Alter either and it no longer checks.

About proofs

Agent-ready payments

Private pay-per-call for agents, with spending caps the owner sets and can see.

Agents guide

Nobody in the middle

Verify a proof

No withdraw key

The pool is designed with no function that lets an operator, the UMBR team included, move user funds.

Changes on a public delay

Any change to how proofs are verified is meant to be queued on-chain and visible days before it applies.

Code you can read

Contracts, circuits, app and SDK are developed in the open, so the deployed code can be compared with source.