---
title: "Generate a hot wallet"
method: POST
path: "/v1/cryptos/{cryptoCode}/derivations"
tags: ["Derivations"]
---

# Generate a hot wallet

`POST /v1/cryptos/{cryptoCode}/derivations`

NBXplorer will generate and save a mnemonic and create a derivationScheme.

## Path parameters

- `cryptoCode` string, required

## Request body

- WalletGenerationRequest
  - `accountNumber` integer — Optional. The account number used for determining the key path that NBXplorer will track. This corresponds to the 'account' level in the derivation paths, e.g., `m/44'/0'/accountNumber'`. Default is **0**.
  - `wordList` 'English' | 'French' | 'Japanese' | 'Spanish' | 'ChineseSimplified' — Optional. The [BIP39](https://github.com/bitcoin/bips/blob/master/bip-0039.mediawiki) wordlist to use when generating the mnemonic. Available options are **English**, **French**, **Japanese**, **Spanish**, **ChineseSimplified**. Default is **'English'**.
  - `existingMnemonic` string — Optional. An existing [BIP39](https://github.com/bitcoin/bips/blob/master/bip-0039.mediawiki) mnemonic seed to import instead of generating a new one. If provided, NBXplorer will use this mnemonic to generate the wallet.
  - `wordCount` integer — Optional. The number of words in the [BIP39](https://github.com/bitcoin/bips/blob/master/bip-0039.mediawiki) mnemonic. Common options are **12**, **15**, **18**, **21**, or **24** words. Default is **12**.
  - `scriptPubKeyType` 'Legacy' | 'Segwit' | 'SegwitP2SH' | 'Taproot' — Optional. The type of scriptPubKey (address) to generate. Available options are: - **Legacy**: P2PKH addresses (starting with '1' on mainnet). - **Segwit**: Native SegWit addresses (bech32, starting with 'bc1' on mainnet). - **SegwitP2SH**: SegWit nested in P2SH addresses (starting with '3' on mainnet). - **Taproot**: Taproot addresses (bech32m, starting with 'bc1p' on mainnet). Default is **'Segwit'**, or **'Legacy'** if the `cryptoCode` does not support SegWit.
  - `passphrase` string — Optional. The [BIP39](https://github.com/bitcoin/bips/blob/master/bip-0039.mediawiki) passphrase to use with the mnemonic. This is also known as the 'wallet password'. Default is an empty string.
  - `savePrivateKeys` boolean — Optional. If **true**, the private keys (mnemonic seed and derived keys) will be saved in NBXplorer's metadata under `Mnemonic`, `MasterHDKey`, and `AccountHDKey`. Be cautious when enabling this option, as storing private keys increases security risks.
  - `additionalOptions` object — Optional. Additional options that may be supported by certain networks or derivation schemes. For example, in Liquid, you might provide a `slip77` master blinding key for confidential transactions. This field is network-specific.

## Response `200`

Successfully generated a hot wallet.

- WalletGenerationResponse
  - `mnemonic` string — The generated [BIP39](https://github.com/bitcoin/bips/blob/master/bip-0039.mediawiki) mnemonic phrase. This is the seed phrase consisting of a series of words used to generate the wallet's master private key.
  - `passphrase` string — The [BIP39](https://github.com/bitcoin/bips/blob/master/bip-0039.mediawiki) passphrase (also known as the wallet password) used in conjunction with the mnemonic to generate the master key. If not provided, this will be an empty string.
  - `wordList` string — The language of the word list used to generate the mnemonic phrase. Available options are **English**, **French**, **Japanese**, **Spanish**, **ChineseSimplified**.
  - `wordCount` integer — The number of words in the generated mnemonic phrase. Common values are **12**, **15**, **18**, **21**, or **24**.
  - `masterHDKey` string — The [BIP32](https://github.com/bitcoin/bips/blob/master/bip-0032.mediawiki) master extended private key (xprv) derived from the mnemonic and passphrase. This key is the root of all derived keys in the wallet.
  - `accountHDKey` string — The [BIP32](https://github.com/bitcoin/bips/blob/master/bip-0032.mediawiki) account extended private key (xprv) derived from the `masterHDKey` and `accountKeyPath`. This key corresponds to a specific account in the wallet hierarchy.
  - `accountKeyPath` string — The derivation path from the master key to the account key, including the master key's fingerprint as defined by [BIP174](https://github.com/bitcoin/bips/blob/master/bip-0174.mediawiki). This follows the format `{fingerprint}/{purpose}'/{coin_type}'/{account}'` and allows reconstructing the full path to the account key.
  - `accountDescriptor` string — The output descriptor representing the account's public key and the script type used. This can be used with compatible wallets and tools to import the account.
  - `derivationScheme` string — The [derivation scheme](#derivationScheme) that is being tracked by NBXplorer. This includes information about the script type and any applied suffixes, often representing the account extended public key with optional script type indicators.

---

[API](https://skmtc.net/btcpayserver/apis/nbxplorer-api.md) · [All operations](https://skmtc.net/btcpayserver/apis/nbxplorer-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/btcpayserver/nbxplorer-api/revisions/208cac39e31a/schema)
