Skip to main content
Configure security features for the Para Modal including two-factor authentication and recovery options.

Two-Factor Authentication

paraModalConfig={{
  twoFactorAuthEnabled: true
}}
When enabled, users will be prompted to set up two-factor authentication during the account creation flow.

Recovery Secret

paraModalConfig={{
  recoverySecretStepEnabled: true
}}
When enabled, users will be shown their recovery secret during wallet creation, allowing them to back up their wallet.

Combined Security Configuration

paraModalConfig={{
  twoFactorAuthEnabled: true,
  recoverySecretStepEnabled: true
}}

Step Override

Control which step the modal displays when opened:
paraModalConfig={{
  currentStepOverride: "ACCOUNT_MAIN" // or "account_main"
}}
Authentication Steps:
  • AUTH_MAIN - Main authentication options
  • AUTH_MORE - Additional authentication methods
  • AWAITING_OAUTH - OAuth authentication in progress
  • VERIFICATIONS - Email/phone verification
Wallet Creation Steps:
  • BIOMETRIC_CREATION - Biometric setup
  • PASSWORD_CREATION - Password creation
  • SECRET - Recovery secret display
  • AWAITING_WALLET_CREATION - Wallet creation in progress
Account Management Steps:
  • ACCOUNT_MAIN - Main account view
  • ACCOUNT_PROFILE - Profile management
  • CHAIN_SWITCH - Network selection
External Wallet Steps:
  • EX_WALLET_MORE - External wallet options
  • EX_WALLET_SELECTED - Selected external wallet
Funds Management Steps:
  • ADD_FUNDS_BUY - Buy crypto interface
  • ADD_FUNDS_RECEIVE - Receive crypto interface
  • ADD_FUNDS_WITHDRAW - Withdraw crypto interface
Security Steps:
  • SETUP_2FA - Two-factor authentication setup
  • VERIFY_2FA - Two-factor authentication verification
Setting an invalid step or a step that requires previous steps to be completed may cause unexpected behavior. Ensure the step override makes sense in your authentication flow.

Complete Security Example

<ParaProvider
  paraClientConfig={{
    apiKey: process.env.REACT_APP_PARA_API_KEY || "",
  }}
  config={{
    appName: "Your App Name"
  }}
  paraModalConfig={{
    // Security features
    twoFactorAuthEnabled: true,
    recoverySecretStepEnabled: true,

    // Start at specific step
    currentStepOverride: "AUTH_MAIN"
  }}
>
  {children}
</ParaProvider>