What ships
| Component | Description |
|---|---|
| peaqID | W3C DID anchoring the machine’s on-chain identity. Portable across chains. |
| Identity NFT | Minted automatically by IdentityRegistry at registration. tokenId == machineId. |
| Machine NFT | LayerZero V2 ONFT linking to the machine’s financial profile. Minted via a separate mintNft call after registration. See Machine NFT ownership. |
| 1 PEAQ bond | Sent as msg.value on the register() call (the contract’s current minBond). Required to graduate onto the MCR rated scale later. |
| Machine wallet | Per-machine EVM keypair, generated by the SDK. |
How activation works
The exposes each step as a discrete call so you can compose your own flow. For one-shot activation from the terminal, the CLI runs all six steps idempotently. Re-runs skip already-completed steps using./peaqos.log as the resume marker:
--skip-funding, --doc-url, --data-api, --visibility).
Generate a keypair
The SDK generates a new keypair for the machine. This becomes the machine’s on peaq chain.
Fund the wallet
Fund the machine’s with for and the 1 PEAQ .Projects with partner access to the peaq can request initial gas from the faucet using the SDK (2FA-gated). Otherwise, fund the wallet directly from any PEAQ-holding address.
Register the machine
Two patterns depending on your deployment model.
- Self-managed
- Proxy operator
. One machine, one wallet. Use Full guide: Self-managed onboarding.
registerMachine to register the machine under its own keypair.Mint the Machine NFT and link the DID
- Self-managed
- Proxy operator
NFT and the are written by the machine itself.
mintNft returns a new, independent tokenId on the MachineNFT contract. writeMachineDIDAttributes binds machineId and nftTokenId to the machine’s DID. See Machine NFT ownership for the full rationale.Confirm registration
After all three calls the machine has a peaqID, an , a , and a 1 PEAQ bond. Query the machine’s profile against the MCR API, where The machine is
{did} is did:peaq:<machine_address>:Provisioned at first: on-chain, but not yet rated. It graduates onto the rated scale once both gates clear: a sustained first-to-last span, and either enough qualifying revenue events or enough activity events. The events condition is OR, so activity-only machines can graduate without revenue. See Machine Credit Rating.After activation
Once a machine is registered, later functions add new capabilities.| Next step | Function | Status |
|---|---|---|
| Build a credit rating from revenue and activity events | Qualify | Live |
| Pair an AI agent with delegated spending and run market search | Scale | Live |
| Get attested by the peaq Foundation or an OEM | Verify | Coming Soon |
| List services in the Service Registry | Monetize | Coming Soon |
| Fractionalize the machine for investor ownership | Tokenize | Coming Soon |
Multichain: peaqID, Machine NFT, and the stay canonical on peaq. and Machine NFTs deploy to supported chains ( first) via DIDLite and IdentityLite mirrors. See the Omni-chain concept and the roadmap.
Concepts
peaqID
W3C DID, portable identity, cross-chain resolution.
Machine NFT
LayerZero V2 ONFT whose
tokenURI resolves to the machine’s Machine Card (ERC-8004 JSON schema).Events
Revenue events (type 0) and activity events (type 1).
Machine Credit Rating
Moody’s-style rating from a machine’s history.
Gas Station
2FA-gated faucet for initial machine gas.
SDK reference
registerMachine: Register a self-managed machine.registerFor: Register a machine as a proxy operator.setupFaucet2FA: Initialize 2FA for Gas Station access.confirmFaucet2FA: Confirm 2FA setup with TOTP code.fundFromGasStation: Request gas funding for a machine address.generateKeypair: Create a new machine keypair.
Guides
Self-managed onboarding
Single machine, owner-operated.
Proxy operator fleet
Register and manage N machines from one identity.

