Skip to content

NFT Packages

Access Prerequisites

  • Permission (module): manageToken
  • License/Feature: None specific (depends on the NFT feature being enabled on the tenant).
  • Menu container: GENERAL → group Products → NFT Packages

What it is / when to use

Packages provide a random way to acquire NFTs (similar to a "booster pack"). Each package is composed of NFTs classified as Bronze, Silver, Gold, Platinum or Diamond. The operator defines how many packages exist, how many NFTs each class contributes, and how many NFTs come per package; upon purchase, the system draws the NFTs randomly within the configured classification.

The company defines:

  • Number of packages available for sale.
  • Which classes make up the package (minimum 1 type).
  • How many NFTs of each class.
  • How many NFTs per package.

The system picks NFTs randomly within the classification. If the package belongs to a category, only NFTs from that category enter the draw. It is never possible to choose specific NFTs, and the system does not consider whether the buyer already owns a given NFT.

Prerequisites

  • Permission: manageToken (CPM static enum + dynamic module in DB).
  • Dependencies: the NFTs (assets) for each class must already exist in the collection/category; wallets for commission must exist if they are used.

Step by step

  1. Go to Products → NFT Packages.
  2. The list displays name and current value; use the search to filter.
  3. Use Create to open the package wizard (sections: General, Media, Pricing, Wallets, Publication).
  4. Fill in the fields and save. On each row use View, Edit or Delete.

Fields

FieldWhat it isRequired?System/backend effect
Short name (short_name)Package nameYesIdentifies the package in the store.
Description (description)Package textNoCommercial content.
Image / Media (url, photos)Cover and galleryNoUpload via files API.
Category / Collection (category_id, collection_id)Restricts the drawNoWhen set, only NFTs from that category/collection enter the package.
Number of packages (quantity)Package stock for saleYesLimits sales.
Package size (package_size)NFTs per packageYesHow many NFTs the buyer receives.
Composition by class (packages[])List {package_type, quantity} (Bronze…Diamond)YesDefines the draw pool per class.
Min./Max. per purchase (minimumToBuy, maxToBuy)Limits per buyerNoRestricts the purchasable quantity.
Price (price)Package valueYesBigNumber.
Accept BNB / Coin (acceptBnb, acceptCoin, bnbPrice, coinPrice, bothMandatory)Payment methodsNoEnables payment in BNB and/or coin; bothMandatory requires both. Prices BigNumber.
Payment types (payment_types[])List {unitOfMoney, percentage}NoDefines the accepted tokens and the split.
Wallet commission (wallets_commission[])List {id, commission}NoSplits commission to specific wallets.
Enabled (enabled)Package activeNoDefault true. Deleting in practice sets enabled=false (soft-delete).

Actions and modals

  • Create / Edit: multi-section wizard. Saving persists the NFTPackage.
  • Delete: sets enabled=false (soft-delete via updateDetailsPackage) with bottom-sheet confirmation, then reloads the list.
  • View: opens the package in read-only mode.

Business rules / notes

Attention

  • The draw is random within the class/category — there is no way to deliver a specific NFT.
  • Delete is a soft-delete (enabled=false), not a physical removal; the package disappears from the store but the history is preserved.
  • Financial values: price, bnbPrice and coinPrice are BigNumber — no rounding.