Custom tokens

Anyone can create a token on the Velum network: a shop's currency, a community's points or a stablecoin from a regulated issuer. Tokens are sent just like VEL, traded against VEL on the market and can be used to pay nodes.

Create a token

token.create { symbol, name, decimals, maxSupply, initial, mintable }    costs 100 VEL (goes to the Reserve)
Field Rule
symbol 3 to 8 characters, A–Z and 0–9. Unique. Can't be VEL.
name Up to 40 characters.
decimals 0 to 9.
maxSupply The most smallest units that can ever exist.
initial What is issued at creation, to the creator's wallet. Can't exceed maxSupply.
mintable Whether the issuer can mint more later.

Whoever creates it becomes the issuer.

{ "type": "token.create", "chain": "{{chain}}", "from": "vel…", "nonce": 3, "ts": 1793577600000,
  "symbol": "CAFE", "name": "Café de barrio", "decimals": 2,
  "maxSupply": 100000000, "initial": 2500000, "mintable": true, "fee": 100000000, "sig": "…" }

{ "type": "token.mint", "chain": "{{chain}}", "from": "vel…issuer", "nonce": 4, "ts": 1793577660000,
  "symbol": "CAFE", "to": "vel…", "amount": 50000, "fee": 0, "sig": "…" }

{ "type": "pool.fund", "chain": "{{chain}}", "from": "vel…issuer", "nonce": 5, "ts": 1793577720000,
  "token": "CAFE", "amount": 1440000, "epochs": 1440, "fee": 0, "sig": "…" }

Mint more

token.mint { symbol, to, amount }        issuer only, up to maxSupply

If the token was created with mintable: false, no more can ever be minted.

Send tokens

A normal payment (transfer) with the token field. Without token, VEL is sent. The fee follows the general rule: 0 below €1,000 of value and 0.01% from there.

Pools for nodes

pool.fund { token, amount, epochs }

An issuer can set aside its token for nodes over N epochs (at most about 525,600, one year). At each epoch close, what's left is divided by the epochs remaining and allocated in proportion to each node's work, with the same weighting as the VEL pool. If an epoch has no work, the pool waits and doesn't use up that epoch. Funds are locked in vel_escrow; rounding leftovers go back to whoever funded it.

That way a node can earn in several currencies at once, and a project can sponsor the network with its own token.

Test tokens

The velum-testnet-3 genesis includes tokens for trying out the market:

Token Decimals Purpose
tEUR 6 Simulates a digital euro. Given out by the faucet.
tUSD 6 Simulates a digital dollar. Given out by the faucet.
tUSDT 6 Simulates USDT. Given out by the faucet.

They are for testing and don't represent money. Tokens with these symbols can't be created.

vUSDT

Mainnet starts with no test tokens. The only bridged token is vUSDT (6 decimals): 1 vUSDT = 1 USDT held by the bridge, which starts closed and will open later.