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 does not guarantee compliance with ACTUS reference implementation.
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
-
Types:
- Zero Coupon Bond
- Fixed Coupon Bond
- Perpetual Bond
-
Denomination:
- On-chain (ASA)
- Off-chain
-
Payment Agent (Settlement):
- 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, etc.)
-
Updatable program (restricted to the Arranger)
Deployments
D-ASA examples deployed on TestNet:
Type | App ID | App Spec |
---|---|---|
Zero Coupon Bond | 733151482 | ARC-56 |
Fixed Coupon Bond | 733151497 | ARC-56 |
Perpetual Bond | 733151498 | ARC-56 |
- 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.