The sendTransaction() method in Rhinestone SDK exhibits intermittent failures where it returns null results randomly, making it unreliable for production use. This affects wallet integrations that don't use the proper native wallet SDKs.
import { RhinestoneSDK, wrapParaAccount } from '@rhinestone/sdk';
import { walletClientToAccount } from 'viem/accounts';
import { useParaWallet } from '@getpara/react-sdk';
// Para wallet setup using native SDK
const { walletClient, walletId } = useParaWallet();
const viemAccount = walletClientToAccount(walletClient);
// Rhinestone SDK initialization with Plimlico bundler
const rhinestone = new RhinestoneSDK({
apiKey: import.meta.env.VITE_RHINESTONE_API_KEY!,
bundler: {
type: 'pimlico',
apiKey: import.meta.env.VITE_PIMLICO_API_KEY,
},
});
// Create wrapped Para account
const wrappedAccount = wrapParaAccount(viemAccount, walletId);
// Create Rhinestone account with proper owners structure
const rhinestoneAccount = await rhinestone.createAccount({
owners: {
type: "ecdsa" as const,
accounts: [wrappedAccount as Account],
},
});
// β
WORKS PERFECTLY with sendUserOperation
const result = await rhinestoneAccount.sendUserOperation({
chain: customSepolia,
calls: [...],
});
// β οΈ INTERMITTENT with sendTransaction (sometimes returns null)
const result = await rhinestoneAccount.sendTransaction({
chain: customSepolia,
calls: [...],
});- Native Wallet SDK: Must use
@getpara/react-sdk+@getpara/viem-v2-integration - Plimlico Bundler: Required for
sendUserOperationto work - configure withtype: 'pimlico'and API key - Proper Account Structure: Use
ownerswithtype: "ecdsa"andaccountsarray - Account Wrapping: Use
wrapParaAccountwith native Para account
sendTransaction: Returnsnullrandomly (~30-40% failure rate)sendUserOperation: Works consistently (100% success rate)- Wagmi Integration:
walletClientToAccountdoesn't work with either method
-
Fix
sendTransactionReliability: Investigate whysendTransactionreturnsnullintermittently -
Wagmi Compatibility: Fix
walletClientToAccountintegration issues
Working:
- Para Wallet +
@getpara/react-sdk+sendUserOperation+ Plimlico bundler (100% success) - Privy Wallet + native Privy integration +
sendTransaction(100% success) - Para Wallet +
@getpara/react-sdk+sendTransaction(intermittent failures)
Not Working:
- Wagmi-based wallets +
walletClientToAccount+ either method (0% success)
Issue: sendTransaction returns null intermittently, walletClientToAccount doesn't work with Rhinestone SDK.
Working Solutions:
- Para Wallet +
@getpara/react-sdk+sendUserOperation+ Plimlico bundler - Privy Wallet + native Privy integration +
sendTransaction