Paquetes de NFT
Requisitos previos de acceso
- Permiso (módulo):
manageToken - Licencia/Feature: Ninguna específica (depende de que la feature de NFTs esté habilitada en el tenant).
- Contenedor del menú: GENERAL → grupo Productos → Paquetes de NFT
Qué es / cuándo usar
Los paquetes ofrecen una forma aleatoria de adquirir NFTs (similar a un "booster pack"). Cada paquete está compuesto por NFTs clasificados en Bronze, Silver, Gold, Platinum o Diamond. El operador define cuántos paquetes existen, cuántos NFTs aporta cada clase y cuántos NFTs trae cada paquete; en la compra, el sistema sortea los NFTs de manera aleatoria dentro de la clasificación configurada.
La empresa define:
- Cantidad de paquetes disponibles para la venta.
- Qué clases componen el paquete (mínimo 1 tipo).
- Cuántos NFTs de cada clase.
- Cuántos NFTs por paquete.
El sistema elige los NFTs aleatoriamente dentro de la clasificación. Si el paquete pertenece a una categoría, solo los NFTs de esa categoría entran en el sorteo. Nunca es posible elegir NFTs específicos, y el sistema no tiene en cuenta si el comprador ya posee ese NFT.
Requisitos previos
- Permiso:
manageToken(enum estático CPM + módulo dinámico en la BD). - Dependencias: los NFTs (assets) de las clases deben existir previamente en la colección/categoría; las billeteras para comisión deben existir si se utilizan.
Paso a paso
- Accede a Productos → Paquetes de NFT.
- La lista muestra el nombre y el valor actual; filtra mediante la búsqueda.
- Usa Crear para abrir el asistente de paquete (secciones: General, Medios, Precios, Billeteras, Publicación).
- Completa los campos y guarda. En cada fila usa Visualizar, Editar o Eliminar.
Campos
| Campo | Qué es | ¿Obligatorio? | Efecto en el sistema/backend |
|---|---|---|---|
Nombre corto (short_name) | Nombre del paquete | Sí | Identifica el paquete en la tienda. |
Descripción (description) | Texto del paquete | No | Contenido comercial. |
Imagen / Medios (url, photos) | Portada y galería | No | Carga vía files API. |
Categoría / Colección (category_id, collection_id) | Restringe el sorteo | No | Cuando se define, solo los NFTs de esa categoría/colección entran en el paquete. |
Cantidad de paquetes (quantity) | Stock de paquetes en venta | Sí | Limita las ventas. |
Tamaño del paquete (package_size) | NFTs por paquete | Sí | Cuántos NFTs recibe el comprador. |
Composición por clase (packages[]) | Lista {package_type, quantity} (Bronze…Diamond) | Sí | Define el pool de sorteo por clase. |
Mín./Máx. por compra (minimumToBuy, maxToBuy) | Límites por comprador | No | Restringe la cantidad adquirible. |
Precio (price) | Valor del paquete | Sí | BigNumber. |
Aceptar BNB / Coin (acceptBnb, acceptCoin, bnbPrice, coinPrice, bothMandatory) | Formas de pago | No | Habilita el pago en BNB y/o moneda; bothMandatory exige ambos. Precios BigNumber. |
Tipos de pago (payment_types[]) | Lista {unitOfMoney, percentage} | No | Define los tokens aceptados y el reparto. |
Comisión de billeteras (wallets_commission[]) | Lista {id, commission} | No | Reparte la comisión entre billeteras específicas. |
Habilitado (enabled) | Paquete activo | No | Default true. Eliminar, en la práctica, establece enabled=false (soft-delete). |
Acciones y modales
- Crear / Editar: asistente en secciones. Guardar persiste el
NFTPackage. - Eliminar: establece
enabled=false(soft-delete víaupdateDetailsPackage) con confirmación por bottom-sheet y recarga la lista. - Visualizar: abre el paquete en modo de solo lectura.
Reglas de negocio / consideraciones
Atención
- El sorteo es aleatorio dentro de la clase/categoría — no es posible entregar un NFT específico.
- Eliminar es un soft-delete (
enabled=false), no una eliminación física; el paquete desaparece de la tienda pero el historial se conserva.
- Valores financieros: precio,
bnbPriceycoinPriceson BigNumber — sin redondeo.