> For the complete documentation index, see [llms.txt](/llms.txt).

# useWalletUI

Hook to show the Wallet Services UI modal using the Wallet Services plugin.

info

Please note that this composable doesn't work for external wallet logins. It only works for social login embedded wallets.

### Import[​](#import "Direct link to Import")

```
import { useWalletUI } from '@web3auth/modal/vue'

```

### Usage[​](#usage "Direct link to Usage")

```
<script setup>
  import { useWalletUI } from '@web3auth/modal/vue'

  const { showWalletUI, loading, error } = useWalletUI()
</script>

<template>
  <button @click="showWalletUI" :disabled="loading">
    {{ loading ? "Opening Wallet UI..." : "Show Wallet UI" }}
  </button>
  <div v-if="error">{{ error.message }}</div>
</template>

```

### Return type[​](#return-type "Direct link to Return type")

```
import type { IUseWalletUI } from '@web3auth/modal/vue'

```

#### `loading`[​](#loading "Direct link to loading")

`boolean`

Whether the Wallet UI opening process is in progress.

#### `error`[​](#error "Direct link to error")

`Web3AuthError | null`

Error that occurred during the Wallet UI opening process.

#### `showWalletUI`[​](#showwalletui "Direct link to showwalletui")

`(showWalletUiParams?: BaseEmbedControllerState["showWalletUi"]) => Promise<void>`

Function to show the Wallet Services modal UI. Accepts optional parameters for customizing the wallet UI experience.
