BUILD ON PYUSDx

PYUSDx Overview

What PYUSDx is and how it works: a developer platform built around PYUSD that lets partners create powerful onchain products.

PYUSDx is a developer platform built on M0 infrastructure. It allows partners to program onchain products anchored around PYUSD. Partners don't offer PYUSDx to users directly. Instead, they create a custom token on top of it: their own name and symbol, their own behavior, backed 1:1 by PYUSDx, with rewards routed to a treasury they choose. M0 operates the shared layer: the developer platform, the swap infrastructure, the cross-chain bridge, and rewards enablement for each custom token.

This page explains the model. The Quick Guide describes the launch sequence, and the technical documentation covers each contract in depth.

This page uses the term custom token. The contracts and the technical documentation call the same thing an extension. The terms are interchangeable.

Key facts

PropertyDetail
Developer platformPYUSDx is an upgradeable, non-rebasing ERC-20 with 6 decimals, matching PYUSD.
RewardsAccrues continuously on the PYUSDx that backs your custom token. Rewards are added to a balance only when claimed, so holder balances don't change on their own.
Custom token templatesYieldToOne routes all rewards to one treasury. MultiMint does the same and also accepts approved alternative stablecoins as backing.
Wrap and unwrap1:1 through SwapFacility. No spread and no liquidity pool to fund.
Cross-chainPortal uses burn-and-mint with pluggable bridge adapters. LayerZero is the first adapter.
Supported chainsEthereum, Arbitrum, and Monad. Testnets: Ethereum Sepolia, Arbitrum Sepolia, and Monad Testnet.
Compliance controlsAccount freezing, forced transfer from frozen accounts, and pausing.
Upgrade modelCore contracts are deployed behind transparent proxies that M0 operates. Custom tokens are deployed behind beacon proxies: they follow M0's latest audited implementation by default, and you can pin a version.
Mainnet launchJune 2, 2026, on Ethereum and Arbitrum; Monad followed on August 12, 2026.

How it works

PYUSDx is the developer platform

Every custom token is powered 1:1 by PYUSDx, the common infrastructure that all partners share. Because the base layer is shared, conversions are exact and liquidity is available immediately. You don't need to bootstrap a separate market for your token.

You launch a custom token

Your token is a wrapper around PYUSDx, deployed in a single transaction through M0's ExtensionFactory. Two audited templates are available:

  • YieldToOne routes all rewards to a single treasury address. M0 recommends this template for most partners.
  • MultiMint routes rewards the same way and also accepts approved alternative stablecoins as backing, each under a per-asset cap. Unwrapping always returns PYUSDx.

You choose the name, symbol, rewards recipient, and the address that holds each administrative role. For details, see Scope with M0 in the Quick Guide.

Users wrap and unwrap at 1:1

SwapFacility is the only entry and exit point for every custom token. swapIn converts PYUSDx into your token, swapOut converts it back, and swapExtensions converts directly between two custom tokens. Amounts are exact: the custom tokens minted or the PYUSDx returned always equal the amount supplied. Permit-based approvals support gasless swaps.

The backing earns rewards while holder balances stay fixed

PYUSDx is non-rebasing. A balance never changes on its own; rewards accrue in the background and are added only when claimed. Your custom token's contract is registered as an earner on PYUSDx, so the PYUSDx it holds accrues rewards continuously. When your yield manager calls claimYield, the accrued amount (the contract's PYUSDx balance minus your token's total supply) is minted as new custom tokens to your rewards recipient. Holder balances don't change. The recipient receives the claimed rewards.

Tokens move across chains

Portal bridges PYUSDx and custom tokens between supported chains using burn-and-mint: tokens are burned on the source chain and minted on the destination chain, so total supply stays consistent across chains. When a user bridges a custom token, Portal unwraps it to PYUSDx, sends the message, and wraps it again on arrival. Bridge providers are abstracted behind an adapter interface. LayerZero is the first adapter, and M0 can add others without changing Portal.

Compliance controls are built in

Your custom token inherits freeze and pause controls, held by roles you assign. Frozen accounts can't send, receive, or claim rewards. A pause stops all transfers. Forced transfers, which move funds out of a frozen account under legal process, operate at the PYUSDx layer. Freezing an earning account claims its pending rewards and stops earning first, so the full balance is available for a forced transfer.

Architecture

ContractDescription
PYUSDXCore ERC-20 with per-account rewards.
IssuerGatewayTime-delayed mint and burn gateway for PYUSDx supply. M0 operates it.
SwapFacility1:1 router between PYUSDx and custom tokens. M0 operates it.
ExtensionFactoryDeploys and registers custom tokens at deterministic addresses. M0 operates it; you call it once per chain.
ExtensionBeaconPer-template registry of audited implementations. M0 operates it.
YieldToOne / MultiMintYour custom token. You hold its roles.
Portal and adaptersCross-chain bridge and provider adapters. M0 operates them.

Integration notes

  • Balances are stable. Custom tokens behave like any ERC-20. No rebasing math is required.
  • Rewards appear as minted supply at claim time. Your token's total supply grows by the claimed amount and the contract emits YieldClaimed. Base treasury reporting on claim events, not on block time.
  • Addresses are deterministic. The same deployer and the same deployment name produce the same token address on every supported chain.
  • Decimals are 6. PYUSDx and every custom token use 6 decimals, matching PYUSD.

What's next

Quick Guide

The launch sequence: each step, its owner, and its result.

Technical documentation

The engineering reference: token, rewards, issuance, extensions, bridging, and security.

Specification

Lookup tables: parameters, roles, rounding, errors, and events.

Copyright © M0 Foundation 2026