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

# Fern Crypto Wallets

> Learn how to create fern crypto wallets payment accounts for your customers

## Overview

To create Fern wallets for your customers, customers need to be created via the [Customers API](/api-reference/customers). Your end customer does not need to be `ACTIVE` (approved) in order to have an active Fern wallet. As soon as the customer has been created and you have the customer's ID, you can use this to create a Fern wallet on the relevant chain(s).

## Step-by-step guide

<Steps>
  <Step title="Create your customer">
    Create a customer using the [Customers API](/api-reference/customers). Specify customer type, name, and email address. A successful request will return a response that includes the `customerId`.
  </Step>

  <Step title="Create Fern wallet for the customer">
    Fern wallets can be created using the [Payment accounts API](/api-reference/payment-accounts). Specify `paymentAccountType` as `FERN_CRYPTO_WALLET` and include the `customerId` in the request. Because you are creating a Fern crypto wallet, you also need to send the `fernCryptoWallet` object with `cryptoWalletType`. Today, Fern only supports EVM wallets for creation, so the correct `cryptoWalletType`  will be `EVM`. This will create a Fern crypto wallet that has the same address on all supported EVM chains.

    ## Request Structure

    **Endpoint:** `POST /v1/payment-accounts`

    **Required Fields:**

    * `paymentAccountType`: Must be `"FERN_CRYPTO_WALLET"`
    * `customerId`: UUID of the customer
    * `fernCryptoWallet.cryptoWalletType`: Currently only `"EVM"` supported

    **Optional Fields:**

    * `nickname`: Friendly name for the wallet
    * `organizationId`: Defaults to authenticated organization

    **Sample request body:**

    ```json theme={null}
    {
      "paymentAccountType": "FERN_CRYPTO_WALLET",
      "customerId": "4d0b92ee-b48f-471f-8825-61761c0c6eb7",
      "fernCryptoWallet": {
        "cryptoWalletType": "EVM"
      }
    }
    ```

    ## Response Structure

    **Success Response (201 Created):**

    **Key Response Fields:**

    * `paymentAccountId`: Unique identifier for API operations
    * `paymentAccountStatus`: Always `"ACTIVE"` for Fern wallets
    * `fernCryptoWallet.address`: Blockchain address (same on all EVM chains)
    * `fernCryptoWallet.cryptoWalletType`: Wallet type (`"EVM"`)
    * `isThirdParty`: Always `false` (Fern managed)

    **Sample response:**

    ```json theme={null}
    {
      "paymentAccountType": "FERN_CRYPTO_WALLET",
      "paymentAccountId": "238e98ce-2305-57e0-83f1-c3286e7db76c",
      "createdAt": "2025-05-07T13:55:06.697Z",
      "fernCryptoWallet": {
        "cryptoWalletType": "EVM",
        "address": "0xb9a71467bc058c744b07285ec12533ac88095270"
      },
      "isThirdParty": false
    }
    ```
  </Step>

  <Step title="Fern crypto wallet is now live">
    This wallet can now be used as the destination for onramps, or a source for offramps. If you plan to use this wallet to interact with other Fern APIs, keep track of the returned `paymentAccountId` .
  </Step>
</Steps>
