Skip to main content
For users who already have an embedded wallet under your app, request email verification and activate their access key instead of creating a new account. Same headers as Create a new wallet: app-id, app-secret.

Step 1: Request email code

POST /v1/waas/account/requestEmailCode
{ "email": "user@example.com" }

Step 2: Generate a new access key pair

Generate a fresh key pair on your server (see Create a new wallet).

Step 3: Activate the access key

POST /v1/waas/account/accessKey
{
  "email": "user@example.com",
  "accessPublicKey": "<hex-public-key>"
}
await fetch('https://cloud.handcash.io/v1/waas/account/accessKey', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
    'app-id': process.env.HANDCASH_APP_ID,
    'app-secret': process.env.HANDCASH_APP_SECRET,
  },
  body: JSON.stringify({
    email: 'user@example.com',
    accessPublicKey: publicKeyHex,
  }),
});
Store the private key securely, then use request signing for wallet endpoints. The difference from new account creation: use /v1/waas/account/accessKey instead of POST /v1/waas/account.