# useCheckout

> @web3auth/modal React Hooks useCheckout | Embedded Wallets

Hook to show the cryptocurrency checkout modal using Wallet Services plugin.

:::info

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

:::

### Import

```tsx

```

### Usage

```tsx

function CheckoutButton() {
  const { showCheckout, loading, error } = useCheckout()

  return (
    
      <button onClick={() => showCheckout()} disabled={loading}>
        {loading ? 'Opening Checkout...' : 'Show Checkout'}
      </button>
      {error && {error.message}}
    
  )
}
```

### Return type

```tsx

```

#### `loading`

`boolean`

Whether the checkout process is in progress.

#### `error`

`Web3AuthError | null`

error that occurred during the checkout process.

#### `showCheckout`

`(showCheckoutParams?: BaseEmbedControllerState["showCheckout"]) => Promise<void>`

Function to initiate the checkout modal. Optional `showCheckoutParams` can be passed to customize the modal.
