Private Send
How It Works
Step 1: Derive Seed
import { getSeedMessage } from "zerc20-client-sdk";
import { keccak256, toBytes } from "viem";
// getSeedMessage() is async and returns a human-readable string for the wallet to sign
const message = await getSeedMessage();
const signature = await walletClient.signMessage({ message });
// Hash the 65-byte signature down to 32 bytes -- the SDK requires a 32-byte hex seed
const seedHex = keccak256(toBytes(signature));Step 2: Prepare the Private Send
Parameters
Field
Type
Required
Description
Return Value
Field
Type
Description
Signature
Step 3: Transfer zERC20 to the Burn Address
Step 4: Submit the Announcement
Parameters
Field
Type
Required
Description
Return Value
Signature
Complete Example
Error Handling
Error
Cause
Resolution
See Also
Last updated