LinuxCommandLibrary

electrum

Manage and use Bitcoin wallets

TLDR

Create a new wallet

$ electrum [[-w|--wallet]] [path/to/new_wallet.dat] create
copy

Restore an existing wallet from seed offline
$ electrum [[-w|--wallet]] [path/to/recovery_wallet.dat] restore [[-o|--offline]]
copy

Create a signed transaction offline
$ electrum mktx [recipient] [amount] [[-f|--fee]] 0.0000001 [[-F|--from-addr]] [from] [[-o|--offline]]
copy

Display all wallet receiving addresses
$ electrum listaddresses -a
copy

Sign a message
$ electrum signmessage [address] [message]
copy

Verify a message
$ electrum verifymessage [address] [signature] [message]
copy

Connect only to a specific electrum-server instance
$ electrum [[-p|--proxy]] socks5:[127.0.0.1]:9050 [[-s|--server]] [56ckl5obj37gypcu.onion]:50001:t [[-1|--oneserver]]
copy

SYNOPSIS

electrum [OPTIONS] [COMMAND] [ARGS]
e.g. electrum daemon start
electrum create

PARAMETERS

--help, -h
    Show help message and exit

--version
    Show version

--testnet
    Use testnet network

--regtest
    Use regression test network

--mainnet
    Use mainnet (default)

--server URL:PORT:S
    Connect to specific Electrum server (S=tls)

--proxy PROXY:PORT:S
    Use proxy (S=socks5)

--daemon
    Run Electrum daemon in background

--gui
    Run GUI (Qt)

--verbose
    Increase verbosity

--quiet
    Suppress output

--wallet WALLET
    Use specific wallet file

--password
    Enter password interactively

--password-passphrase
    Use seed passphrase

--oneserver
    Connect to one server only

--offline
    Run offline

--portable
    Portable mode; use local config

DESCRIPTION

Electrum is a lightweight Bitcoin wallet using Simplified Payment Verification (SPV) to verify transactions without downloading the full blockchain. The command-line interface enables wallet management, transaction signing/broadcasting, address generation, and server connections via Electrum protocol servers. Supports multiple wallet types including standard, segregated (segwit), watch-only, and multisignature. Key features: seed phrase recovery, coin control, fee estimation, labels, plugins, and cold storage. Run as daemon for headless operation or interactively. Highly secure with strong encryption and offline signing. Ideal for Linux servers, scripts, or advanced users avoiding GUI. Requires Python 3 and dependencies like libsecp256k1. Connects to public or private Electrum servers for privacy/scalability. Not a full node; relies on trusted servers but verifies proofs. Widely used since 2011 for its speed, portability, and low resource use.

CAVEATS

Backup seeds securely; private keys exposed if mishandled.
Relies on remote servers; use trusted ones or run own.
Not for beginners: manual fee/UTXO management.
Python dependencies required; verify checksums on install.

COMMON SUBCOMMANDS

daemon (start/stop/status), create, restore, show_seed, list_wallets, payto ADDRESS AMOUNT, history, balance, invoice, deserialize.
See electrum commands for full list.

INSTALLATION

pip3 install electrum
or apt install electrum (distro package).
Run electrum bootstrap for server list.

HISTORY

Created by Thomas Voegtlin in 2011 as first SPV Bitcoin wallet.
Version 1.0 Nov 2011; active development with 4.x supporting Taproot/Liquid.
Community-driven; key updates for SegWit (2017), hardware wallets, multisig.

SEE ALSO

bitcoin-cli(1), btcd(1)

Copied to clipboard