Beam Node User Guide


Beam Node is an essential part of the Beam blockchain and is responsible for validating transactions and blocks. It runs on all platforms: Linux, Windows and Mac (for detalied list of supported and tested platforms please see user_supported_platforms)

Beam Node can be run in either Mining or Validating mode.

Mining mode

Beam Node supports External Miner via Statum Server API for mining Beam:

Beam Node provides built in support for Startum API allowing to connect multiple external mining clients to a single node. (see :ref: user_beam_stratum_server for more details). To start the node with stratum server use stratum_port and stratum_secrets_path parameters. Stratum clients can be run together with the Internal Miner

Mining keys management

In order for the mining node to be able to attribute mining rewards to your wallet, it needs a special secret mining key. The mining key is derived from the primary secret key by running export_miner_key command with –subkey=<node id> parameter in the Beam CLI Wallet (See user_cli_wallet_guide for more details). You can generate a multiple separate mining keys for different mining nodes.

Optionally, in order to allow each mining node to be able to see all rewards mined by all your mining nodes Beam provides an additional option called owner_key. Owner key is a secret view key, it can not be used to spend coins, just to identify your mining rewards regardless of which node was used to mine it. Owner key is derived from primary secret key as well using the same key_export command, but without additional parameters.

Both keys are protected using Wallet Password, which should also be provided

Validating mode

By default (without –miner_type flag) Beam Node is run in validating mode, meaning that mining is disabled. Validating nodes are still very important for the overall health and safety of the network since they:

  1. Help in propagating transactions and blocks through the network
  2. Relay SBBS messages to enable Wallet to Wallet communication.
  3. Serve as Dandelion Stem relays to improve P2P level security

If possible, always prefer running a local node either with or without mining!

Node Settings

Beam Node allows to provide the settings via command line or using a configuration file called beam-node.cfg and located in the same folder as Beam Node binary.

Command line parameters override configuration file settings

The configuration file is loaded automatically and sets all parameters that were not provided via command line. To reload configuration file after a change you should manually restart Beam Node

Parameter Description & Example
–port (or -p)

Port to start the server on


Log level [info|debug|verbose]


File log level [info|debug|verbose]


Old logfiles cleanup period(days)


There are some node options which can setup using the configuration file. You can also run this options in command line.

Parameter Description & Example

Path to node database file (defaults to node.db in the same folder)

–miner_key Secret key to attribute mining rewards mined by the node to your wallet Created using CLI walelt export_miner_key command with –subkey=<miner id> parameter See user_cli_wallet_guide for more details
–owner_key Secret key allowing the node to monitor mining rewards mined by all mining nodes marked by this key. Created using CLI walelt export_owner_key command See user_cli_wallet_guide for more details
–pass Wallet password. It is required since both Miner Key and Owner Key are protected by walelt password

Port on which stratum server will listen to incoming connections. 0 if stratum server is disabled.


Path to folder containing stratum certificates


nodes to connect to
Parameter Description & Example
-h (or –help) list all available options and commands
-v (or –version) print project versio

print git commit hash value


Fast sync on/off (override horizons)


Print TXO movements (create/spend) recognized by the owner key.


Keep persistent connection to the specified peers, regardless to ratings


number of mining threads(there is no mining if 0). It works if FakePoW is enabled


pow solve time. It works if FakePoW is enabled


number of threads for cryptographic verifications (0 = single thread, -1 = auto)


Path to folder where compressed (cut-through) history files are stored. Defaults to same folder.


Path to temp folder for compressed history files. Must be on the same volume as history_dir


Enable TLS on startum server


number of hex digits for nonce prefix for stratum client (0..6)

–generate_recovery Recovery file to generate immediately after start
–recovery_auto_path Path and file prefix for recovery auto-generation
–recovery_auto_period Period (in blocks) for recovery auto-generation

To make it easier to run local node in fast sync mode you need to run the following command:

./beam-node --port=10000,,, --fast_sync=on

Operations with Node Database

Parameter Description & Example
–check_db DB integrity check
–vacuum DB vacuum (compact)
–reset_id Reset self Node ID (used for network authentication). Must do if the node is cloned
–erase_id Reset self Node ID (used for network authentication) and stop before re-creating the new one.