The Fuul SDK will get the parameters from the URL once a user enters the site. There is no need to persist these parameters when navigating through the app.
Identify user
Projects must identify the user event every time users connect a wallet or logs in to their website (both when connecting a wallet for the first time and when changing wallets during the session).
By calling the identifyUser method, a connect wallet event is sent.
import{Fuul}from ('@fuul/sdk');awaitFuul.identifyUser({identifier:"0x12345",// the address of the useridentifierType:"evm_address",// evm_address | solana_address | xrpl_address signature:"0x123485090123",signaturePublicKey:'0x12345'// Only for XRPL type signaturesmessage: "Accept affiliate on 18-Aug 2023 00:00:00",});
For smart contract accounts, the accountChainId must be added as follows:
The following networks are supported for smart contract wallets:
Mainnet (Ethereum): 1
Arbitrum: 42161
Optimism: 10
Polygon: 137
Base: 8453
zkSync Era: 324
BNB Chain: 56
Fantom: 250
Avalanche (C-Chain): 43114
Mode: 34443
Abstract: 2741
Bob: 60808
Berachain: 80094
Gravity Chain: 16
Bitlayer: 200901
Sending event through the API
If you are identifying the user from the backend, you will have to send the connect wallet event using the API, following this pattern:
In this case, you will need to get the fuul.tracking_id from the browser's local storage. Remember that it must be the same one that was sent on the pageview event.