Utility.Registry.App.V0.Service.AllocationFactory

Templates

template AllocationFactory

Multi-purpose factory template for asset workflows. This template is used to initiate:

  1. Allocations for asset movements settled by a third party

  2. Transfer instructions

  3. Burn requests and offers

  4. Mint requests and offers Note: The name “AllocationFactory” is retained for upgradeability, but the template now covers a broader set of workflows beyond allocations. Instances of this template are disclosed via the operator backend.

Signatory: provider, registrar

Field

Type

Description

provider

Party

The provider party.

registrar

Party

The registrar party.

operator

Party

The operator party.

  • Choice AllocationFactory\_OfferBurn

    Offer a 2-step burn. This choice was added as of version 0.4.0 of this package.

    Controller: registrar

    Returns: AllocationFactory\_OfferBurn\_Result

    Field

    Type

    Description

    expectedAdmin

    Party

    Expected admin (registrar) of the factory.

    burn

    Burn

    Details of the burn.

    extraArgs

    ExtraArgs

    Additional context required to exercise the choice. extraArgs.context (provided by the backend) includes: - The InstrumentConfiguration of the holding being burned - The Credentials of the holder that satisfy the issuer requirements extraArgs.metadata is reserved for extensibility.

  • Choice AllocationFactory\_OfferMint

    Offer a 2-step mint. This choice was added as of version 0.4.0 of this package.

    Controller: registrar

    Returns: AllocationFactory\_OfferMint\_Result

    Field

    Type

    Description

    expectedAdmin

    Party

    Expected admin (registrar) of the factory.

    mint

    Mint

    Details of the mint.

    extraArgs

    ExtraArgs

    Additional context required to exercise the choice. extraArgs.context (provided by the backend) includes: - The InstrumentConfiguration of the holding being minted - The Credentials of the holder that satisfy the issuer requirements extraArgs.metadata is reserved for extensibility.

  • Choice AllocationFactory\_RequestBurn

    Request a 2-step burn. This choice was added as of version 0.4.0 of this package.

    Controller: (DA.Internal.Record.getField @”holder” burn)

    Returns: AllocationFactory\_RequestBurn\_Result

    Field

    Type

    Description

    expectedAdmin

    Party

    Expected admin (registrar) of the factory.

    burn

    Burn

    Details of the burn.

    holdingCids

    [ContractId Holding]

    Holdings to be used for the burn.

    extraArgs

    ExtraArgs

    Additional context required to exercise the choice. extraArgs.context (provided by the backend) includes: - The InstrumentConfiguration of the holding being burned - The Credentials of the holder that satisfy the issuer requirements extraArgs.metadata is reserved for extensibility.

  • Choice AllocationFactory\_RequestMint

    Request a 2-step mint. This choice was added as of version 0.4.0 of this package.

    Controller: (DA.Internal.Record.getField @”holder” mint)

    Returns: AllocationFactory\_RequestMint\_Result

    Field

    Type

    Description

    expectedAdmin

    Party

    Expected admin (registrar) of the factory.

    mint

    Mint

    Details of the mint.

    extraArgs

    ExtraArgs

    Additional context required to exercise the choice. extraArgs.context (provided by the backend) includes: - The InstrumentConfiguration of the holding being minted - The Credentials of the holder that satisfy the issuer requirements extraArgs.metadata is reserved for extensibility.

  • Choice Archive

    Controller: provider, registrar

    Returns: ()

    (no fields)

Data Types

data AllocationFactory\_OfferBurn\_Result

Result of offering a burn via the ‘AllocationFactory_OfferBurn’ choice.

AllocationFactory\_OfferBurn\_Result

Field

Type

Description

burnOfferCid

ContractId BurnOffer

The burn offer contract to accept.

meta

Metadata

Additional metadata.

data AllocationFactory\_OfferMint\_Result

Result of offering a mint via the ‘AllocationFactory_OfferMint’ choice.

AllocationFactory\_OfferMint\_Result

Field

Type

Description

mintOfferCid

ContractId MintOffer

The mint offer contract to accept.

meta

Metadata

Additional metadata.

data AllocationFactory\_RequestBurn\_Result

Result of requesting a burn via the ‘AllocationFactory_RequestBurn’ choice.

AllocationFactory\_RequestBurn\_Result

Field

Type

Description

burnRequestCid

ContractId BurnRequest

The burn request contract to accept.

remaining

Optional (ContractId Holding)

Any remaining holding after splitting off the amount for the burn.

meta

Metadata

Additional metadata.

data AllocationFactory\_RequestMint\_Result

Result of requesting a mint via the ‘AllocationFactory_RequestMint’ choice.

AllocationFactory\_RequestMint\_Result

Field

Type

Description

mintRequestCid

ContractId MintRequest

The mint request contract to accept.

meta

Metadata

Additional metadata.