ScripDocs

Concepts

Conversion at par

Why any Scrip converts to any other one for one, with no pool between them.

Any Scrip converts to any other at par, at any time, with no pool between them.

Why there's no pool

Two Scrips are two names on the same reserve. Converting from one to the other burns the first and mints the second in one transaction, and the dollars never leave the reserve. Nothing sets a price between them, so the rate is always 1:1 and the price impact is 0.00%, whatever the size.

What happens on chain

  1. The reserve is valued and each Scrip's accrued yield is brought up to date.

  2. Your first Scrip is burned for the dollar amount you asked to move.

  3. The second Scrip is minted to you for the same dollar amount.

The transaction carries a minimum you'll receive. If the second Scrip's multiplier changes before it lands, so that you would receive less, the transaction fails instead of settling short.

Rounding

Scrip tokens have twelve decimals and USDC has six, so amounts are exact to the millionth of a dollar. When a conversion lands on a Scrip whose holder multiplier isn't exactly 1, the minted units round down by less than a millionth of a dollar. The app shows your balance to the cent at a glance, and to the millionth where you act on it.