> ## Documentation Index
> Fetch the complete documentation index at: https://docs.canton.network/llms.txt
> Use this file to discover all available pages before exploring further.

# Splice.Issuance

> Documentation for Splice.Issuance

Amulet rewards issuance configuration and computation.

## Data Types

<div id="type-splice-issuance-issuanceconfig-93012">
  **data** IssuanceConfig
</div>

> <div id="constr-splice-issuance-issuanceconfig-42917">
>   IssuanceConfig
> </div>
>
> > | Field                        | Type                                                                                                                                                                                        | Description                                                                                                                                                                |
> > | ---------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
> > | amuletToIssuePerYear         | [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135)                                                                                                     |                                                                                                                                                                            |
> > | validatorRewardPercentage    | [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135)                                                                                                     |                                                                                                                                                                            |
> > | appRewardPercentage          | [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135)                                                                                                     |                                                                                                                                                                            |
> > | validatorRewardCap           | [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135)                                                                                                     |                                                                                                                                                                            |
> > | featuredAppRewardCap         | [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135)                                                                                                     |                                                                                                                                                                            |
> > | unfeaturedAppRewardCap       | [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135)                                                                                                     |                                                                                                                                                                            |
> > | optValidatorFaucetCap        | [Optional](/appdev/reference/daml-standard-library/prelude#type-da-internal-prelude-optional-37153) [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135) | Maximal amount in \$ for the per-validator issuance of validator faucet coupons; Introduced as part of CIP-0003. Will default to 0.00 USD once CIP-0096 becomes effective. |
> > | optDevelopmentFundPercentage | [Optional](/appdev/reference/daml-standard-library/prelude#type-da-internal-prelude-optional-37153) [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135) | Percentage of each mint emission allocated to the Development Fund under CIP-0082.                                                                                         |
>
> **instance** [Eq](/appdev/reference/daml-standard-library/prelude#class-ghc-classes-eq-22713) IssuanceConfig
>
> **instance** [Show](/appdev/reference/daml-standard-library/prelude#class-ghc-show-show-65360) IssuanceConfig
>
> **instance** GetField "amuletToIssuePerYear" IssuanceConfig [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135)
>
> **instance** GetField "appRewardPercentage" IssuanceConfig [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135)
>
> **instance** GetField "featuredAppRewardCap" IssuanceConfig [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135)
>
> **instance** GetField "issuanceConfig" OpenMiningRound IssuanceConfig
>
> **instance** GetField "issuanceConfig" SummarizingMiningRound IssuanceConfig
>
> **instance** GetField "issuanceCurve" (AmuletConfig unit) (Schedule [RelTime](/appdev/reference/daml-standard-library/da-time#type-da-time-types-reltime-23082) IssuanceConfig)
>
> **instance** GetField "optDevelopmentFundPercentage" IssuanceConfig ([Optional](/appdev/reference/daml-standard-library/prelude#type-da-internal-prelude-optional-37153) [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135))
>
> **instance** GetField "optValidatorFaucetCap" IssuanceConfig ([Optional](/appdev/reference/daml-standard-library/prelude#type-da-internal-prelude-optional-37153) [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135))
>
> **instance** GetField "unfeaturedAppRewardCap" IssuanceConfig [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135)
>
> **instance** GetField "validatorRewardCap" IssuanceConfig [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135)
>
> **instance** GetField "validatorRewardPercentage" IssuanceConfig [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135)
>
> **instance** SetField "amuletToIssuePerYear" IssuanceConfig [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135)
>
> **instance** SetField "appRewardPercentage" IssuanceConfig [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135)
>
> **instance** SetField "featuredAppRewardCap" IssuanceConfig [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135)
>
> **instance** SetField "issuanceConfig" OpenMiningRound IssuanceConfig
>
> **instance** SetField "issuanceConfig" SummarizingMiningRound IssuanceConfig
>
> **instance** SetField "issuanceCurve" (AmuletConfig unit) (Schedule [RelTime](/appdev/reference/daml-standard-library/da-time#type-da-time-types-reltime-23082) IssuanceConfig)
>
> **instance** SetField "optDevelopmentFundPercentage" IssuanceConfig ([Optional](/appdev/reference/daml-standard-library/prelude#type-da-internal-prelude-optional-37153) [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135))
>
> **instance** SetField "optValidatorFaucetCap" IssuanceConfig ([Optional](/appdev/reference/daml-standard-library/prelude#type-da-internal-prelude-optional-37153) [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135))
>
> **instance** SetField "unfeaturedAppRewardCap" IssuanceConfig [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135)
>
> **instance** SetField "validatorRewardCap" IssuanceConfig [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135)
>
> **instance** SetField "validatorRewardPercentage" IssuanceConfig [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135)
>
> **instance** Patchable IssuanceConfig

<div id="type-splice-issuance-issuancetranche-71318">
  **data** IssuanceTranche
</div>

> <div id="constr-splice-issuance-issuancetranche-27573">
>   IssuanceTranche
> </div>
>
> > | Field             | Type                                                                                    | Description                                            |
> > | ----------------- | --------------------------------------------------------------------------------------- | ------------------------------------------------------ |
> > | rewardsToIssue    | [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135) | Total amulets to issue as rewards in this tranche      |
> > | issuancePerCoupon | [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135) | Issuence per reward coupon for this tranche            |
> > | unclaimedRewards  | [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135) | Amulets to issue in this tranche that were not claimed |
>
> **instance** GetField "issuancePerCoupon" IssuanceTranche [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135)
>
> **instance** GetField "rewardsToIssue" IssuanceTranche [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135)
>
> **instance** GetField "unclaimedRewards" IssuanceTranche [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135)
>
> **instance** SetField "issuancePerCoupon" IssuanceTranche [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135)
>
> **instance** SetField "rewardsToIssue" IssuanceTranche [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135)
>
> **instance** SetField "unclaimedRewards" IssuanceTranche [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135)

<div id="type-splice-issuance-issuingroundparameters-47575">
  **data** IssuingRoundParameters
</div>

> Parameters to use in a round that issues amulet as rewards for collected coupons.
>
> <div id="constr-splice-issuance-issuingroundparameters-60486">
>   IssuingRoundParameters
> </div>
>
> > | Field                                | Type                                                                                                                                                                                        | Description                                                                                                                                             |
> > | ------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- |
> > | issuancePerValidatorRewardCoupon     | [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135)                                                                                                     |                                                                                                                                                         |
> > | issuancePerFeaturedAppRewardCoupon   | [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135)                                                                                                     |                                                                                                                                                         |
> > | issuancePerUnfeaturedAppRewardCoupon | [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135)                                                                                                     |                                                                                                                                                         |
> > | issuancePerSvRewardCoupon            | [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135)                                                                                                     |                                                                                                                                                         |
> > | unclaimedAppRewards                  | [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135)                                                                                                     |                                                                                                                                                         |
> > | unclaimedValidatorRewards            | [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135)                                                                                                     |                                                                                                                                                         |
> > | unclaimedSvRewards                   | [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135)                                                                                                     | Can be non-zero due to rounding, or no SV having had the chance to claim their coupons.                                                                 |
> > | issuancePerValidatorFaucetCoupon     | [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135)                                                                                                     |                                                                                                                                                         |
> > | optAmuletsToIssueToDevelopmentFund   | [Optional](/appdev/reference/daml-standard-library/prelude#type-da-internal-prelude-optional-37153) [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135) | Note: Made optional as the addition of this field is checked by the upgrade checker on package upload because `IssuingRoundParameters` is serializable. |
>
> **instance** [Eq](/appdev/reference/daml-standard-library/prelude#class-ghc-classes-eq-22713) IssuingRoundParameters
>
> **instance** [Show](/appdev/reference/daml-standard-library/prelude#class-ghc-show-show-65360) IssuingRoundParameters
>
> **instance** GetField "issuancePerFeaturedAppRewardCoupon" IssuingRoundParameters [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135)
>
> **instance** GetField "issuancePerSvRewardCoupon" IssuingRoundParameters [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135)
>
> **instance** GetField "issuancePerUnfeaturedAppRewardCoupon" IssuingRoundParameters [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135)
>
> **instance** GetField "issuancePerValidatorFaucetCoupon" IssuingRoundParameters [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135)
>
> **instance** GetField "issuancePerValidatorRewardCoupon" IssuingRoundParameters [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135)
>
> **instance** GetField "optAmuletsToIssueToDevelopmentFund" IssuingRoundParameters ([Optional](/appdev/reference/daml-standard-library/prelude#type-da-internal-prelude-optional-37153) [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135))
>
> **instance** GetField "unclaimedAppRewards" IssuingRoundParameters [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135)
>
> **instance** GetField "unclaimedSvRewards" IssuingRoundParameters [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135)
>
> **instance** GetField "unclaimedValidatorRewards" IssuingRoundParameters [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135)
>
> **instance** SetField "issuancePerFeaturedAppRewardCoupon" IssuingRoundParameters [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135)
>
> **instance** SetField "issuancePerSvRewardCoupon" IssuingRoundParameters [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135)
>
> **instance** SetField "issuancePerUnfeaturedAppRewardCoupon" IssuingRoundParameters [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135)
>
> **instance** SetField "issuancePerValidatorFaucetCoupon" IssuingRoundParameters [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135)
>
> **instance** SetField "issuancePerValidatorRewardCoupon" IssuingRoundParameters [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135)
>
> **instance** SetField "optAmuletsToIssueToDevelopmentFund" IssuingRoundParameters ([Optional](/appdev/reference/daml-standard-library/prelude#type-da-internal-prelude-optional-37153) [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135))
>
> **instance** SetField "unclaimedAppRewards" IssuingRoundParameters [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135)
>
> **instance** SetField "unclaimedSvRewards" IssuingRoundParameters [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135)
>
> **instance** SetField "unclaimedValidatorRewards" IssuingRoundParameters [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135)

<div id="type-splice-issuance-openminingroundsummary-90943">
  **data** OpenMiningRoundSummary
</div>

> A summary of total reward coupons issued against a specific open mining round.
>
> <div id="constr-splice-issuance-openminingroundsummary-16618">
>   OpenMiningRoundSummary
> </div>
>
> > | Field                           | Type                                                                                                                                                                                | Description                  |
> > | ------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------- |
> > | totalValidatorRewardCoupons     | [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135)                                                                                             |                              |
> > | totalFeaturedAppRewardCoupons   | [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135)                                                                                             |                              |
> > | totalUnfeaturedAppRewardCoupons | [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135)                                                                                             |                              |
> > | totalSvRewardWeight             | [Int](/appdev/reference/daml-standard-library/prelude#type-ghc-types-int-37261)                                                                                                     |                              |
> > | optTotalValidatorFaucetCoupons  | [Optional](/appdev/reference/daml-standard-library/prelude#type-da-internal-prelude-optional-37153) [Int](/appdev/reference/daml-standard-library/prelude#type-ghc-types-int-37261) | Introduced as part of CIP-3. |
>
> **instance** [Eq](/appdev/reference/daml-standard-library/prelude#class-ghc-classes-eq-22713) OpenMiningRoundSummary
>
> **instance** [Show](/appdev/reference/daml-standard-library/prelude#class-ghc-show-show-65360) OpenMiningRoundSummary
>
> **instance** GetField "optTotalValidatorFaucetCoupons" OpenMiningRoundSummary ([Optional](/appdev/reference/daml-standard-library/prelude#type-da-internal-prelude-optional-37153) [Int](/appdev/reference/daml-standard-library/prelude#type-ghc-types-int-37261))
>
> **instance** GetField "summary" AmuletRules\_MiningRound\_StartIssuing OpenMiningRoundSummary
>
> **instance** GetField "totalFeaturedAppRewardCoupons" OpenMiningRoundSummary [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135)
>
> **instance** GetField "totalSvRewardWeight" OpenMiningRoundSummary [Int](/appdev/reference/daml-standard-library/prelude#type-ghc-types-int-37261)
>
> **instance** GetField "totalUnfeaturedAppRewardCoupons" OpenMiningRoundSummary [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135)
>
> **instance** GetField "totalValidatorRewardCoupons" OpenMiningRoundSummary [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135)
>
> **instance** SetField "optTotalValidatorFaucetCoupons" OpenMiningRoundSummary ([Optional](/appdev/reference/daml-standard-library/prelude#type-da-internal-prelude-optional-37153) [Int](/appdev/reference/daml-standard-library/prelude#type-ghc-types-int-37261))
>
> **instance** SetField "summary" AmuletRules\_MiningRound\_StartIssuing OpenMiningRoundSummary
>
> **instance** SetField "totalFeaturedAppRewardCoupons" OpenMiningRoundSummary [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135)
>
> **instance** SetField "totalSvRewardWeight" OpenMiningRoundSummary [Int](/appdev/reference/daml-standard-library/prelude#type-ghc-types-int-37261)
>
> **instance** SetField "totalUnfeaturedAppRewardCoupons" OpenMiningRoundSummary [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135)
>
> **instance** SetField "totalValidatorRewardCoupons" OpenMiningRoundSummary [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135)

## Functions

<div id="function-splice-issuance-getvalidatorfaucetcap-50474">
  getValidatorFaucetCap
  : IssuanceConfig -> [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135)

  Getter with the right default value for the validator faucet cap. Use this consistently instead of accessing the field directly.
</div>

<div id="function-splice-issuance-validissuancecurve-81463">
  validIssuanceCurve
  : Schedule [RelTime](/appdev/reference/daml-standard-library/da-time#type-da-time-types-reltime-23082) IssuanceConfig -> [Bool](/appdev/reference/daml-standard-library/prelude#type-ghc-types-bool-66265)
</div>

<div id="function-splice-issuance-validissuanceconfig-25363">
  validIssuanceConfig
  : IssuanceConfig -> [Bool](/appdev/reference/daml-standard-library/prelude#type-ghc-types-bool-66265)
</div>

<div id="function-splice-issuance-gettotalvalidatorfaucetcoupons-98130">
  getTotalValidatorFaucetCoupons
  : OpenMiningRoundSummary -> [Int](/appdev/reference/daml-standard-library/prelude#type-ghc-types-int-37261)
</div>

<div id="function-splice-issuance-validateopenminingroundsummary-65797">
  validateOpenMiningRoundSummary
  : [CanAssert](/appdev/reference/daml-standard-library/prelude#class-da-internal-assert-canassert-67323) m => OpenMiningRoundSummary -> m ()
</div>

<div id="function-splice-issuance-computeissuingroundparameters-5863">
  computeIssuingRoundParameters
  : [RelTime](/appdev/reference/daml-standard-library/da-time#type-da-time-types-reltime-23082) -> [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135) -> IssuanceConfig -> OpenMiningRoundSummary -> IssuingRoundParameters
</div>

<div id="function-splice-issuance-computeissuancetranche-10230">
  computeIssuanceTranche
  : [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135) -> [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135) -> [Decimal](/appdev/reference/daml-standard-library/prelude#type-ghc-types-decimal-18135) -> IssuanceTranche

  `computeIssuanceTranche rewardsToIssue capPerCoupon totalCoupons`

  computes parameters that issue as many rewards per coupon as possible up to a maximum of `capPerCoupon` amulets.
</div>
