Skip to main content
These hooks let you build custom UIs on top of the Spice Flow SDK. If the prebuilt components don’t fit your use case, use these hooks to access wallet state, balances, and execution directly.

useSpiceExecution

The core execution hook. Handles EIP 7702 delegation signing, intent submission, and solver execution polling. This is what powers SpiceDeposit under the hood.

Usage

Return Value

Progress Steps

The onProgress callback receives updates as execution proceeds:

useSpiceAssets

Fetch the user’s Spice balance from the relayer API. This returns the off chain balance (what the user has deposited via escrow), not on chain wallet balances.

Usage

Config

Return Value


useWallet

Access wallet connection state and signing actions. Works with both Privy and Dynamic providers.

Usage

Return Value


useEmbeddedWalletAddress

Get the Privy embedded wallet address. Returns undefined if no embedded wallet exists or in non 7702 mode.

Usage


useAssetInput

Manage asset selection and amount input state. Used to control the asset selector in deposit and lock flows from your own UI.

Usage

Return Value


useLockDuration

Manage lock duration selection state for the SpiceLockModal.

Usage


useSpicePendingDeposits

Detect funds stranded in the user’s embedded wallet (deposits that were sent but not yet credited to Spice balance). Used by SpiceDeposit internally for recovery flows.

Usage


useSpiceBrand

Resolve the current theme from the provider’s brand prop and any component level styles/dark overrides. Only used when building custom components that need to match the SDK’s look.

Usage

Return Value


Next Steps

Components

Use prebuilt components for common flows

Styling

Customize appearance with the brand system

API Reference

Explore the REST API for advanced use cases

Configuration

Configure chains and providers