Skip to main content
Economics 2.0 (Tokenomics 2.0 in the code) is the contract set that prices machine activation in USD, bonds PEAQ per machine on a subscription tier, and settles the network’s economics through trust validators. It went live on peaq mainnet on 2026-09-01 and replaces the fixed 1 PEAQ bond of the earlier IdentityRegistry model. The paper is at peaq.xyz/economics-2-0; this page documents what the deployed contracts do.

What is live

Activation and the bond

One transaction to MachineStateAndSync.activateMachine mints the machine’s ERC-721 in MachineRegistry, stores its DID document, bonds PEAQ in MachineSubscription on a tier, and records peaq as the home chain in CrossChainMirror. The sender is the owner and the payer. The bond is quoted in USD per tier and converted to PEAQ at the oracle rate when you call:
Only the net amount is transferred (spender MachineSubscription). The machine’s recorded bond stays at the full amount. A voucher can cover the whole bond, in which case nothing is transferred and the machine is still bonded in full. The bond is not withdrawable. It stays bonded while the subscription is renewed, and unwinds through grace and runoff when it is not.

Tiers

Tier prices are protocol parameters set by governance (InfoDesk.setTierPriceUsd); they have not changed since the contracts were deployed on 2026-09-01. The economics paper lists indicative tier pricing that differs from the values configured on chain today; when governance changes them, the quote changes with them. Always preview before you spend: peaqos activate ... --dry-run, previewMachineActivation, or preview_machine_activation. The PEAQ figure moves with the oracle price every day. Tiers also carry points that weight bonding rewards per operator. Higher tiers earn more points per machine.

Paying in USDT

--payment usdt (CLI) or activateMachineWithUsdt / activate_machine_with_usdt (SDKs) settles the PEAQ-quoted bond in USDT through SubscriptionTokenProvisionPool, which performs the conversion. You approve a maximum USDT amount derived from the quote and your accepted slippage; the call never spends more than that maximum. The bond, the voucher credit, and the net amount stay denominated in PEAQ.

Subscription lifecycle

Parameters read from InfoDesk on peaq mainnet on 2026-09-04:
  • Renew at any point in Active, Grace, or Runoff. Renewal uses the stored tier and extends from the stored period end, not from now. It cures Grace or Runoff immediately.
  • Runoff moves the decayed part of the bond half to the burn address and half to the treasury, one step per daily settlement. As of 2026-09-04 the burn address in InfoDesk is unset, so the burn half does not reduce supply yet.
  • Terminated machines are retired: the NFT is burned and the subscription record deleted. A machine that is relocating is never terminated mid-flight.
  • Fraud termination (protocol owner only) forfeits the whole bond immediately, 50% burn and 50% treasury.
  • Suspend / resume is a voluntary pause by the owner or controller. It does not change the subscription.

Credits, not payouts

Economics 2.0 never pays PEAQ to a wallet. Two kinds of credit accrue to the machine owner and are redeemed against the next bond: Both are funded from the same surplus (epochPool, whatever PEAQ sits in MachineSubscription beyond bonds and committed credits) and split by one protocol parameter each epoch. A controller who pays for a renewal does not receive the credit; it lands on the owner.

Machine ID and DID

The machine ID is the ERC-721 token ID. It is a full uint256 (bigint in JavaScript, int in Python, a decimal string on every wire). There is no mapping from legacy sequential IDs or from did:peaq:0x<address>: a legacy machine that migrates gets a new 2.0 ID. See peaqID.

Ownership and control

Transferring the NFT moves ownership and retains the controller. There is no operator-sponsored activation: the account that signs activateMachine owns the machine and pays the bond. Fleets use machine-owned, operator-controlled activation; see Fleet onboarding.

Trust validators

Three different roles are easy to confuse. Keep them apart: Until the oracle holds a price, activateMachine reverts with PriceNotAvailable. Prices are 8-decimal USD values keyed by keccak256("PEAQ").

Coordination fees and x402

CoordinationFeeCollector can charge a per-tier USD coordination fee on machine services and accepts x402-style payments through EIP-3009 transferWithAuthorization. The fee is configured at 0 for every tier on 2026-09-04, so no coordination fee is collected today. Not exposed in the SDKs or CLI.

Legacy machines

Machines onboarded under Tokenomics 1.0 (IdentityRegistry, 1 PEAQ native bond, separate MachineNFT) keep working on the 1.0 contracts and the 1.0 MCR API. MachineMigrationHub mirrors them into Economics 2.0: peaq mirrors a legacy machine as a 2.0 machine owned by the hub, and the hub pays the tier bond. A reissue step that hands the permanent 2.0 ID to the machine’s owner exists in the contract code. Both steps are operated by peaq for partner fleets and are not exposed in the SDKs or the CLI. The first mirrored batches landed on mainnet on 2026-09-04. A mirrored machine’s legacy 1 PEAQ bond stays in IdentityStaking; the 2.0 tier bond is bonded in addition.

Cross-chain relocation

Economics 2.0 relocates a whole machine record between registered chains through MachineBridgeAdapter and CrossChainMirror (LayerZero V2 transport). This differs from the 1.0 Machine NFT bridge, which moves only the NFT. Relocation is switched off on peaq mainnet and agung (InfoDesk.isBridgingEnabled() returns false), and the SDKs expose relocation status reads only. The 1.0 bridgeNft / bridge_nft path throws MACHINE_RELOCATION_UNAVAILABLE in Tokenomics mode. See Omni-chain.
  • Activate: the one-transaction onboarding
  • Smart contracts: addresses on peaq mainnet and agung
  • Tokenomics: supply, inflation, and the pending block reward split
  • CLI: machine: lifecycle, subscription, ownership, and DID commands