Stellar Core v2
How Spectra separates principal and yield on Stellar.
Stellar Core v2 separates a yield-bearing position into two SEP-41 tokens:
- Principal Token (PT): a claim on the principal value of the deposited position.
- Yield Token (YT): the right to variable yield generated before maturity.
Each market has one PT and one paired YT. The PT contract holds the interest-bearing token (IBT), manages rates and fees, and controls YT minting and burning.
Position lifecycle
| Stage | What happens |
|---|---|
| Deposit | A user supplies underlying tokens or an IBT. Core issues equal amounts of PT and YT after fees. |
| Before maturity | The YT holder accrues variable yield. PT and YT can be held or transferred independently. |
| Early redemption | Matching PT and YT are burned together to recover the backing position. |
| At maturity | Rates are frozen and YT stops carrying value. PT can be redeemed without YT. |
Before maturity, holding PT alone is not enough to redeem through Core. A matching YT balance is also required.
Rates and losses
The IBT rate measures the underlying value of the yield-bearing asset. The PT rate starts at par and can move downward if the IBT loses value. Positive yield belongs to YT holders; backing losses can reduce the value represented by PT.
Core checkpoints yield when a YT balance changes or a holder interacts with the market. A user can claim yield as underlying tokens or as IBT, subject to the configured fee.
Supporting contracts
- The Registry stores protocol configuration, fees, deployable contract hashes, and registered PTs.
- The Factory deploys PT markets; each PT deploys its paired YT.
- The Router composes several operations into one atomic transaction.
- The Limit Order Engine exchanges PT, YT, and IBT at maker-defined implied rates.
Learn about the exact flows in the Core v2 integration reference.