> ## Documentation Index
> Fetch the complete documentation index at: https://docs.cdp.coinbase.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Migrate from @coinbase/wallet-sdk

> Move from the legacy Coinbase Wallet SDK package to Base Account SDK, the current recommendation for Coinbase Wallet.

<Info>
  Until the next-generation Coinbase Wallet SDK is ready, **Base Account SDK** (`@base-org/account`) is the current recommendation for interacting with Coinbase Wallet.
</Info>

## Overview

`@coinbase/wallet-sdk` is the legacy Coinbase Wallet SDK. Until the next-generation Coinbase Wallet SDK is ready, **Base Account SDK** (`@base-org/account`) is the current recommendation for interacting with Coinbase Wallet.

If you already use `@base-org/account`, you do not need to change your integration.

When you add Coinbase Wallet, connect users with a **Sign in with Base** or **Base** button. You do not need to immediately replace an existing **Coinbase Wallet** button — you can offer both during a transition period.

## Changes to user experience when clicking Coinbase Wallet

As of SDK v4.0, users without the Coinbase Wallet extension are directed to a popup window where they can choose to connect with the mobile app, via WalletLink, or use a passkey-powered Smart Wallet natively on the web.

This will continue to be the case, but the logged out experience has changed to educate Smart Wallet users that they should be using "Sign in with Base" in the future. Here is how it looks on desktop.

<div style={{ display: 'flex', justifyContent: 'center', margin: '2rem 0' }}>
  <img src="https://mintcdn.com/coinbase-prod/KbY0xi9c3PLq0Az8/images/base-account/CreateWalletFlow.png?fit=max&auto=format&n=KbY0xi9c3PLq0Az8&q=85&s=5d623a4196c96c154b676c1dc2405dbd" alt="Create Wallet Flow" style={{ width: '300px', height: 'auto' }} width="307" height="512" data-path="images/base-account/CreateWalletFlow.png" />
</div>

<div style={{ textAlign: 'center', fontStyle: 'italic', marginBottom: '2rem' }}>
  Desktop experience showing the updated logged out flow for Coinbase Wallet users
</div>

<Tip>
  If you would like to avoid users seeing any popup window, we recommend using a version of `@coinbase/wallet-sdk` \< 4.0.

  You can find the latest version on the [Coinbase Wallet SDK releases page](https://github.com/coinbase/coinbase-wallet-sdk/releases).
</Tip>

## How to migrate

Replace `@coinbase/wallet-sdk` with Base Account SDK (`@base-org/account`).

```tsx Base Account SDK setup theme={null}
import { createBaseAccountSDK } from "@base-org/account";

const baseAccount = createBaseAccountSDK({
  // ...
});
```

For more information please refer to the [Quickstart](/coinbase-wallet/quickstart/web) guide.

If you're using a third party library, you can follow the [Wagmi](/coinbase-wallet/framework-integrations/wagmi/setup), [RainbowKit](/coinbase-wallet/framework-integrations/rainbowkit) or [Privy](/coinbase-wallet/framework-integrations/privy/setup) guides.
