Reference Implementation
⚠️The reference implementations have not been audited. Do not use this code for real products. The author declines all responsibility.
The reference implementation provides the following features:
-
RBAC:
- Arranger: creates, configures and updates the D-ASA
- Account Manager: opens and closes accounts (proxy a KYC process)
- Primary Dealer: performs the primary distribution on the primary market
- Trustee: can call a default
- Authority: can suspend accounts or the whole asset
- Interest Oracle: can update the interest rate in case of variable rates
-
Denomination:
- ASA
-
Payment Agent:
- On-chain (ASA)
-
Day-count conventions:
- Actual/Actual (time periods must be in days, i.e., multiples of
86400
seconds) - Continuous
- Actual/Actual (time periods must be in days, i.e., multiples of
-
Transfer Agent:
- On-chain
- Direct (i.e., from investor to investor)
-
Secondary market
-
Notarize metadata (e.g. prospectus)
-
Updatable program (restricted to the Arranger)
Deployments
D-ASA examples deployed on TestNet:
Payoff | App ID | App Spec |
---|---|---|
Zero Coupon Bond | 732462799 | ARC-32 |
Fixed Coupon Bond | 732462811 | ARC-32 |
Perpetual Bond | 732462812 | ARC-32 |
- Download the App Spec JSON file;
- Navigate to the Lora App Lab;
- Create the App Interface using the existing App ID and App Spec JSON;
- Explore the D-ASA interface.