Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Settlement

Debt instruments cash flows may be settled in a currency different from the denomination.

The D-ASA MUST define either an on-chain or off-chain settlement asset \( [CURS] \)1 to regulate the cash flows.

All values (uint64) are integer minor units of the relevant on-chain or off-chain settlement asset.

If the D-ASA defines a settlement asset different from the denomination asset, then the respective denomination/settlement conversion rate is applied at settlement time.

The denomination/settlement conversion rate can be provided by different oracles, depending on if the denomination/settlement assets are on-chain or off-chain.

If the D-ASA does not define a different settlement asset, then the cash flows MUST be settled in the denomination asset and the settlement asset identifier MUST be equal to the denomination asset identifier.

Note

The D-ASA reference implementation supports only on-chain ASA settlement assets.

Note

The D-ASA reference implementation requires settlement assets to be the denomination asset.

On-chain settlement

The settlement asset MUST be an Algorand Standard Asset (ASA), an Application asset (App), or the ALGO.

The settlement asset identifier MUST be the ASA ID, the App ID, or 0 for ALGO.

If asset is ALGO (0): amount is in microALGOs (\( 10^{-6} \) ALGO).

If asset is ASA or App: amount is in base units as per that asset’s decimals.

Tip

The value (uint64) 10000 of settlement in ASA settlement 2 decimals is interpreted as 100.00 units of the ASA.

On-chain settlement is possible even if the denomination asset is a traditional off-chain currency.

Off-chain settlement

The settlement asset identifier MUST be the ISO 4217 currency numeric code.

The settlement asset MUST use the decimal digits specified by the ISO 4217.

If asset is ISO 4217 numeric code: amount is in minor units (\( 10^{-d} \) with \( d \) as per ISO 4217 digits).

Tip

The value (uint64) 10000 of a settlement in EUR (ISO 4217, 2 decimals) is interpreted as 100.00 Euro.

In the case of an off-chain settlement, the D-ASA state machine:

  • Regulates payments’ approval conditions (e.g. interest is due);
  • Notarizes the amounts and timestamps of payments settled off-chain.


  1. ACTUS only allows ISO 4217 currency identifiers, therefore an on-chain settlement is not supported by ACTUS.