From 6c4960c32a4db2781a953bef1f2c61dacbe9d9b0 Mon Sep 17 00:00:00 2001 From: Kurdistan Tech Ministry Date: Tue, 24 Feb 2026 09:45:01 +0300 Subject: [PATCH] fix: send plain SS58 address in WC signRaw instead of CAIP-10 The signRaw handler was wrapping the address in CAIP-10 format (polkadot::
) before sending to the wallet. The wallet expects a plain SS58 address in polkadot_signMessage params, causing InvalidChecksumException crash when trying to decode the CAIP-10 string. --- web/src/lib/walletconnect-service.ts | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/web/src/lib/walletconnect-service.ts b/web/src/lib/walletconnect-service.ts index ca8a2468..50b7fb90 100644 --- a/web/src/lib/walletconnect-service.ts +++ b/web/src/lib/walletconnect-service.ts @@ -259,7 +259,6 @@ export function createWCSigner(defaultGenesisHash: string, address: string) { throw new Error('WalletConnect session expired. Please reconnect your wallet.'); } - const wcAccount = `polkadot:${defaultChainId.split(':')[1]}:${address}`; const id = ++requestId; const result = await signClient.request<{ signature: string }>({ @@ -268,7 +267,7 @@ export function createWCSigner(defaultGenesisHash: string, address: string) { request: { method: 'polkadot_signMessage', params: { - address: wcAccount, + address: address, message: raw.data, }, },