Which signing method should I use for my account type?
The signing method depends on your account type:- Role-Based Accounts: Use
signTypedData()to sign EIP-712 structured data - Kernel 3.3 Accounts (EIP-7702): Use
signMessage()to sign the UserOperation hash directly - Solana Accounts: Use wallet’s
signTransaction()method on VersionedTransaction objects
Why is my Solana transaction signing failing?
Common Solana signing issues include:- Incorrect data format: OneBalance provides base64
dataToSignthat must be converted toMessageV0 - Wrong signature encoding: Solana signatures must be base58 encoded, not hex
- Wallet not connected: Verify wallet connection before attempting to sign
How do I handle EIP-7702 delegation signing?
EIP-7702 accounts require two signing steps:- Delegation Signature: Sign authorization tuple using
signAuthorization()method - UserOperation Signature: Sign UserOperation hash using
signMessage()method
- Always check
signedTuple.yParityis not null before proceeding - Both
accountAddressandsignerAddressmust be the same EOA address - Use account type
"kernel-v3.3-ecdsa"withdeploymentType: "EIP7702"
- Role-based:
signTypedData(operation.typedDataToSign) - Kernel 3.3 (EIP-7702):
signMessage({ message: { raw: userOpHash } })
Getting Help
Complete Signing Guide
Full implementation guide with code examples for all account types
EIP-7702 Guide
Step-by-step EIP-7702 integration with delegation signing
Solana Guide
Solana-specific signing patterns and troubleshooting
For additional support with signing issues:
- Intercom chat (bottom right corner) for instant help
- Email: support@onebalance.io
- Discord community for peer support and updates