Ask the wallet to sign a payload. AppKit supports plain text, raw binary, and TON cells.Documentation Index
Fetch the complete documentation index at: https://companyname-a7d5b98e-feature-fumodocs.mintlify.app/llms.txt
Use this file to discover all available pages before exploring further.
How it works
Signed data attests to application data without sending a transaction. It fits user-facing acknowledgments, off-chain receipts, and signatures that a backend or TON smart contract verifies later. The wallet returns an Ed25519 signature, signing address, wallet timestamp, observed dApp domain, and the original payload. The verifier owns freshness, domain, nonce, and signer checks. For wallet-ownership sign-in, useton_proof during connection instead.
Before you begin
You need a connected wallet and the React provider mounted. See Connect to a wallet.Pick the right call
| Payload type | Hook | Core action |
|---|---|---|
| Plain text | useSignText | signText |
| Binary (base64) | useSignBinary | signBinary |
| TON cell (BoC) | useSignCell | signCell |
{ mutate, mutateAsync, isPending, error, data }.
Sign text
Sign binary
Sign a cell
For application protocols that exchange typed payloads, send a TON cell.Verify the signature
The wallet returns a signature response that includessignature, address, timestamp, domain, and the original payload. Verify the response server side against the payload and the wallet’s public key before trusting it. Treat the client-side response as a hint, not proof.