TELRPC

Wallet

TELRPC WalletWallet KitPaper walletTop upHelp

Partners

Wallet makersInstitutionsIntegrationsBuild

Technology

How it worksSecurityCoverageAbout

More

DocumentsContact us
A phone lying on a slate desk at night beside a coiled telephone cord, showing the TELRPC Wallet's Sent screen: 0.01 USDC confirmed on Base

A telephone call is enough.

A blockchain transaction is a few hundred bytes whose validity lives in its signature, not in the wires that carry it. TELRPC carries those bytes as tones on an ordinary call, so the device that holds the key needs no internet at all.

Request the whitepaper
0
bytes of internet data from the wallet app
~95 s
of tones for a USDC payment on Base
64
bytes of signature, sent whole; the grid rebuilds the rest
4
app permissions, none of which can open a network connection

One payment,
end to end.

From the phone that signs to the chain that settles, and back to the phone with a receipt it checks itself. Nothing on the phone ever opens a network connection.

  1. The TELRPC Wallet Review screen: send 1 USDC on Base, with a Hold to place call button

    1. The phone signs

    You check every line and hold to sign. The key never leaves the phone.

  2. The phone's own dialer 41 seconds into the call to the TELRPC grid number, recorded during the 10 October run

    2. A call carries it

    Framed, checksummed and keyed as tones. About 95 s for USDC on Base.

  3. The TELRPC Console showing the grid broadcasting the payment

    3. The grid broadcasts

    It rebuilds the exact bytes and sends them unchanged. It can carry or refuse, never alter.

  4. The block explorer showing the same payment of 1 USDC on Base with status Success in block 52419017

    4. The chain settles

    The account pays its own network fee. No TELRPC contract anywhere.

  5. The Sent screen: confirmed, sent to Base, the exact transaction the phone signed

    5. The echo comes home

    The grid calls back; the caller ID carries a reference the phone matches. It never rings.

The tones are signalling, not sound.

Why tones survive

Mobile voice codecs keep speech and discard everything else, which is why modems and fax never survived the mobile era. A keypad tone is carried as a signalling message and regenerated at every hop.

The call only carries

TELRPC keys your signed transaction into the call as those tones. The call carries the transaction; it does not create or change it. Everything that makes it valid is settled on the device before the first tone.

Send the signature, rebuild the rest

A signature is 64 bytes and cannot be compressed. The wallet sends the signature and the intent, and the grid rebuilds the exact bytes the signature covers. An incomplete frame is unusable, and the checksum refuses it.

* V TYPE CHAIN SIGNED TRANSACTION CHECK # open version type chain the transaction, as tones checksum close *open Vversion TYPEtype CHAINchain SIGNED TRANSACTIONthe transaction, as tones CHECKchecksum #close
One frame, one transaction, unusable unless complete.

Hear a payment leave the phone.

Every key on a telephone is two pure tones at once: one from a low group of four, one from a high group of three. This is a real TELRPC frame, keyed at its real pace of 90 ms per tone and 55 ms of silence. Watch each key light as it sounds.

*103175824609317#

Sound plays only when you press, at a low volume.

64bytesa signature, sent whole because it cannot be compressed
90msper tone, with 55 ms of silence between keys
~95sof tones for a USDC transfer on Base, measured
~2minfrom the call to confirmation, per payment
PayloadSizeCall time
USDC transfer on Base, measuredone compact frameabout 95 s of tones; about 2 min to confirmation
A transfer on most major chains110 to 450 bytesa longer call, in proportion to size
Contract calls and large transactionsup to 2.5 KBan extended call

Calls that heal themselves.

A phone line is not perfect, so the rail assumes it is not.

1

A bad frame is refused

If a tone is lost or the call drops, the checksum refuses the frame and nothing is broadcast.

2

The wallet redials by itself

The grid hangs up quietly and signals a resend by echo. The wallet places the same signed transaction again on a new call, with no one touching the phone.

3

It can only land once

A resend is the same transaction, so it can delay a payment, never double it. If the wallet's sequence is out of step, the grid echoes the chain's real value and the wallet corrects itself.

State comes in four ways. Nothing goes out.

Before signing, a transaction needs a little live state: the account's sequence (its nonce) and fee level, and on some chains unspent outputs or a recent block hash. The device takes it in without a network of its own.

Scan a QR

Any internet-connected screen shows the public chain state and the camera reads it. A camera takes light in and sends nothing back.

Hear it on a call

A short call reads the figures aloud.

Type it by hand

The same figures, keyed in from any source you trust.

Echo

The wallet places a short call, the grid calls straight back, and the figures arrive in the caller ID without the call being answered.

The TELRPC Wallet's Sync Base screen offering four methods: echo call, scan a code, call and listen, or type it in

The wallet's whole contact with the outside world is four permissions: CALL_PHONE, ANSWER_PHONE_CALLS (to end its own call if the network doesn't), CAMERA and USE_BIOMETRIC (the phone's own fingerprint or face check), plus Android's call-screening role for the echo, which reads an incoming caller ID and grants no network access. From version 0.9.39 the owner can also make it the phone's default phone app, an optional role that adds no permission: the wallet then keys each frame at a steady, measured pace the moment the call connects, and takes the grid's call-backs quietly while a wallet call is up, so a call-back never interrupts a send. There is no internet permission.

The echo: the grid answers in the caller ID.

The return channel needs no data and no answer. The grid calls the phone back and carries a short value in the caller ID; the wallet declines the call silently, so the phone never rings and there is nothing to type. The echo carries three things.

The TELRPC Wallet's Balance screen with a Read by call button

Sync

The account's current sequence and fee level, so the wallet is send-ready after one short call.

Balance

The account's balance, read from the public chain and delivered the same way. A balance read by call uses 1 credit, 10 cents.

Confirmation

After a broadcast, a reference to the transaction id. Only a match with the id the wallet computed itself moves its sequence forward. Nobody is asked whether it went through.

An echo is public chain data or a reference to a transaction the wallet already knows. It carries no key and no instruction to spend. A forged echo cannot move funds: at worst it is ignored, or it causes a resync against the chain's real value.

More than a transfer.

Anything the wallet signs

Native coin and token sends, token swaps, token approvals and smart-contract calls, each signed in full on the device.

Swaps stay offline

On Ethereum, Base, Arbitrum, Optimism, Polygon, BNB, Avalanche, Linea and Blast, through Uniswap, for words wallets. The price comes back by call, for 10 cents; the phone sets the minimum from your slippage tolerance and adds a deadline, so a stale price reverts, never overpays. Every fee is shown on the review before you swap.

Your own network fee, your own signer

Every send pays its own network fee; the grid runs no relayer and fronts no fee. A transaction signed on a hardware wallet or an MPC setup travels the same rail, and a Ledger, Trezor or BitBox02 Multi plugs straight into the TELRPC Wallet by USB-C cable, or a Keystone, Passport or Jade signs by QR. Supported devices

Every major chain.
By construction.

The rail transports signed bytes and does not care whose they are.

Bitcoin, Ethereum and the entire EVM family, Solana, Tron, XRP, Cardano, Stellar, TON, Litecoin, Dogecoin and every other major chain receive live, each address derived on the device from one seed, alongside 144 on-chain-verified tokens and any custom token added by its contract. A chain added at the grid lights up every product at once.

Sending works the same way on every chain that sends today: the transaction is signed offline on the device and broadcast over the call. On the 36 EVM networks (Ethereum, Base, Arbitrum One, BNB Smart Chain, Polygon, Optimism, Avalanche, World Mobile Chain, Linea, Blast, Gnosis, Robinhood Chain, Monad, HyperEVM, Arc, Plasma, Ink, X Layer, Mantle, Celo, World Chain, Sonic, Unichain, Berachain, Katana, Sei, zkSync Era, Scroll, MegaETH, Kaia, Fraxtal, Abstract, Soneium, Cronos, Flare and Morph) native coins and all 144 tokens send this way, and so do Bitcoin, Solana, Litecoin, Dogecoin, XRP, Tron and Cardano. From version 0.9.21, Stellar, Cosmos, TON, NEAR and Tezos send the same way, and so does USDT on Tron. From version 0.9.24, so do Bitcoin Cash and Nano.

Nor does it care which device signed them: the TELRPC Wallet, a purpose-built device with no radio, a module inside other hardware, or your own hardware wallet or MPC setup. The keys and the signing stay wherever you choose to keep them.

BTCETHBASEARBOPPOLBNBAVAXSOLTRX XRPLTCDOGEADAATOMXLMTONXTZNEARBCHXNOWMTX

You can hear your transaction.

The wallet computes the transaction ID itself, before the call even ends. When the transaction lands, the grid echoes a reference to it in a silent callback, and the wallet checks it against the ID it already holds. A broadcast is $0.10 of prepaid credit, as is every other call request (sync, balance read, swap price check, swap, token approval or contract read by call), and it is never a percentage of a send. Every fee is shown on the review before you swap. The call is ordinary airtime at the carrier's normal rate, a local call where a local number is live (15 countries today, 93 on request), or a call to the US line.

*103175824609317#

Built on a carrier, not on a cloud.

The TELRPC Grid runs on carrier infrastructure Minutes Network operates: carrier interconnects, local numbers in 93 countries on request (15 live today), and a US line dialable from anywhere on earth. The full TRP/1 specification and the reference source are shared with partners under licence and NDA as part of an integration.