Issuance volume limit
Configure the DALP issuance-volume-limit compliance module so minting stays within a fixed or rolling token-unit quota.
The issuance-volume-limit compliance module caps how many token units can be minted during a configured time window. DALP rejects a mint when the requested amount plus the already tracked in-window issuance would exceed the quota.
Use this module when an asset programme needs a periodic issuance quota. Typical cases are subscription windows, staged allocations, and operating policies that limit abnormal mint volume.
The quota is measured in token units, not fiat value. For fiat-value fundraising caps, use the capital-raise-limit module listed in compliance policy controls.
For the architecture reference, see Supply and investor limits.
Prerequisites
- The asset already exists with the legacy compliance module set, or you are configuring a legacy asset during asset creation.
- You have the Asset administrator role for the deployed asset.
- The operating team has approved the issuance quota, window length, and whether the quota should use a rolling or fixed window.
- The quota is expressed in the asset's token units. The Asset Designer converts display units to raw token units before the configuration is submitted.
Configure during asset creation
In the Asset Designer compliance step for a legacy asset, select the issuance-volume-limit module.
Set these fields:
| Field | What it controls |
|---|---|
| Maximum supply | The maximum token units that can be minted during the active window. |
| Period length | The window length in days. It must be greater than zero. |
| Rolling window | Whether the window slides day by day. If disabled, DALP uses fixed periods that reset after the configured length. |
Choose the rolling-window option when the policy should always look back over the most recent days. Choose a fixed window when the policy is tied to calendar-like issuance periods or staged programme windows.
Configure on an existing asset
From the asset detail workspace for a legacy asset, open the compliance tab and add the issuance-volume-limit module.
After the module is enabled, only the maximum supply can be updated in place. The period length and rolling-window mode stay locked. Those fields define how the tracker accounts for issuance.
To change either locked field, remove and re-add the module with the new configuration. Treat this as a quota reset, not an in-place edit. The new module starts with fresh issuance and burn accounting, so it does not carry over mints or unmatched burn excess from the previous module. If the asset already has in-window mints, reduce the new quota or wait for the policy window to clear before reinstalling. Otherwise, the asset can regain a full quota inside the same operating window.
How DALP applies the quota
DALP applies the quota during mint validation:
- The mint request runs through the compliance pre-check.
- The issuance-volume-limit module reads the current in-window issued amount.
- If the current amount plus the requested mint exceeds the configured maximum supply, DALP rejects the mint.
- After a successful mint, DALP adds the minted amount to the active tracker.
Transfers do not consume or release issuance capacity. Burns release capacity from the tracker according to the configured window mode.
How burns restore issuance capacity
A burn can restore capacity only when DALP can match it to issuance that is still inside the active window.
| Window mode | How capacity is restored |
|---|---|
| Rolling window | DALP walks backwards from the current day and subtracts the burn from the newest tracked issuance first. Older issuance naturally leaves the window as time passes. |
| Fixed window | DALP subtracts the burn from the current active period total. If the fixed period has already ended, the burn cannot reduce the old period's tracker. |
If the burn amount is larger than the tracked in-window issuance, the burn still succeeds at the token layer. DALP records the unmatched part as absorbed burn excess so operators can review why capacity was not fully restored.
Operating considerations
- Rolling windows can cover at most 730 days.
- Fixed windows can cover at most 36,500 days.
- The maximum supply must be greater than zero.
- Reducing the maximum supply can make later mints fail sooner; it does not undo already confirmed issuance.
- The module controls token-unit issuance volume. It does not verify the economic value of the asset, the reserve position, or the legal approval behind the quota.
- If several mint transactions are queued close together, the first confirmed transaction consumes quota. Later transactions fail if the remaining capacity is no longer enough.
Troubleshooting
| What you see | What to check |
|---|---|
| Mint rejected by the issuance quota | Compare the requested mint with the remaining capacity in the active window. Reduce the amount or wait until the window has capacity again. |
| Cannot edit period length or rolling mode | Remove and re-add the module. Those fields are locked after the module is enabled. |
| Quota behaviour does not match the fundraising cap | Use a fiat-value capital raise policy instead. Issuance-volume-limit measures token units. |
| Burns do not fully restore expected capacity | Check whether the burn can be attributed to issuance still inside the active window. Older issuance may no longer be available for capacity release. |