Identity Onboarding
Overview
From Polymesh v8, onboarding on Polymesh is only based on DID registration. To access identity and asset related functionality, a key must be linked to an on-chain identity (DID).
Accounts used only for POLYX transfers and staking (excluding validator activities) do not require a DID.
DID registration paths
Polymesh supports two onboarding paths:
- Self-registration
- A user registers a DID for their own key by submitting
identity::register_didand paying the transaction fee.
- A user registers a DID for their own key by submitting
- Registrar-assisted registration
- A permissioned DID registrar registers a DID for a target user key and pays the transaction fee.
This two-path model lets users onboard directly while also supporting platforms that prefer managed onboarding for user experience reasons.
DID registrars
DID registrars are permissioned identities that can register new DIDs for other keys.
Registrars are managed through on-chain governance (via PIP/governance process) and are intended for entities that want to offer simplified onboarding to users who may not yet hold POLYX for fees.
register_did
identity::register_did(target_account) registers a new DID for the target key.
Important behavior in v8:
- DID existence is the onboarding requirement for identity and native asset related usage.
- This extrinsic does not support secondary key onboarding.
- Legacy
cdd_register_didandcdd_register_did_with_cddremain available as deprecated transition paths for registrars.
CDD claim legacy context
The CustomerDueDiligence claim type remains available for compatibility, but it no longer serves as the functional onboarding gate in v8.
Asset issuers can continue to enforce issuer-specific KYC/compliance requirements using claims and compliance rules.