Recover a Polkadot account created in Trust Wallet so you can use it with the Polkadot{.js} browser extension.
Trust Wallet derives Polkadot accounts using a different derivation path and signing scheme than the Polkadot{.js} extension uses by default. If you import your Trust Wallet seed phrase directly into Polkadot{.js}, you'll get a different address than the one Trust Wallet shows you.
This tool re-derives the exact account Trust Wallet generates from your seed phrase, and saves it as an encrypted JSON keystore file that Polkadot{.js} can import directly, so you end up with the same address in both wallets.
Everything runs locally on your machine. Your seed phrase and password are never sent anywhere.
npx @polkadot-api/trust-wallet-to-pjsThe CLI will ask you for:
- Your Trust Wallet seed phrase (12 or 24 words, input hidden as you type)
- A password to encrypt the exported file (min. 8 characters)
- Where to save the file (defaults to
./polkadot-account.jsonin the current directory)
It then prints the derived address and writes the keystore file.
- Open the Polkadot{.js} extension.
- Click the
+icon and choose "Import account from JSON". - Select the generated file.
- Enter the password you chose when running the CLI.
- Run this on a trusted, offline-capable machine if possible.
- The generated JSON file is encrypted with your password, but treat it like any other wallet backup: keep it private and don't share it.
- Your seed phrase gives full control over your funds, never share it with anyone or paste it into a website.
This project uses Bun.
bun install # install dependencies
bun run src/cli.ts # run the CLI from source
bun run build # bundle to dist/cli.js (what gets published)