e.getIdentifier is not a function

Hi everyone, sorry if I’m a bit late to the party. I’m upgrading to XMTP v3, using Ethers v6 and Parcel.

When I try to create the client, I get the following error:

Uncaught (in promise) TypeError: e.getIdentifier is not a function

I’m currently stuck on this, so I figured I’d share here in case someone has insight — and I’ll also use this thread to document my progress as I go.

Thanks in advance!

5 Likes

hey @xunorus, please post your issue in the relevant repository with code that reproduces the problem.

Browser + Node SDK
React Native SDK
Android SDK
iOS SDK

2 Likes

ok. Im in Browser /vainila.
Already did it but it was a problem in the way I created the signer.
Simple solution, create the signer like this:

signer = {

type: "EOA",
getIdentifier: () => ({
    identifier: userAddress,
    identifierKind: “Ethereum” }), 

signMessage: async (message) => ethers.getBytes(await wallet.signMessage(message)),
};

xmtpClient = await Client.create(signer, { env: ‘dev’ });
4 Likes