Colecciones
Requisitos previos de acceso
- Permiso (módulo):
manageToken - Licencia/Feature:
MANAGE_NFTS - Contenedor del menú: TOKENIZACIÓN → grupo Tokenización → Colecciones
Qué es / cuándo usar
Las colecciones agrupan NFTs por tema/oferta y llevan la configuración on-chain común: red, contrato y — cuando aplica — el estándar de contrato regulado (ERC-3643 / ERC-721-compliant). Cada NFT pertenece a una colección, por lo que la colección debe existir antes de crear el NFT.
La elección del estándar de contrato (regulado o no) se resuelve por colección, normalmente al cierre de un crowdfunding, y queda guardada en contract_standard.
Requisitos previos
- Permiso:
manageToken(doble — enum CPM + módulo en DB). - Licencia/Feature:
MANAGE_NFTS. - Dependencias: redes (
network_id) registradas.
Paso a paso (listado)
- Acceda a Tokenización → Colecciones.
- Busque por nombre y filtre por red.
- Edite, visualice o elimine (las colecciones con ítems no pueden eliminarse).
- Crear colección para abrir el formulario.
Filtros y columnas
| Filtro / Columna | Qué muestra | Origen del dato |
|---|---|---|
| Búsqueda por nombre | Filtra por name (server-side, paginado, debounce) | getCollections({ name, networkId, limit, offset }) |
| Red | Filtra por networkId | getNetworks() |
| Nombre / Ítems / Red | Identificación, nº de NFTs y blockchain | TokenController (collections) |
Campos del formulario
| Campo | Qué es | ¿Obligatorio? | Efecto en el sistema/backend |
|---|---|---|---|
| Nombre | Nombre de la colección | Sí | name. No modificable después de creada (tooltip "no se puede modificar"). Validación de formato (collectionNameValidator). |
| Red | Blockchain de la colección | Sí | network_id. No modificable después de creada. Define dónde se despliega el contrato. |
| Descripción | Descripción (hasta 1500 caracteres) | Sí | description. |
| Imagen | Logo de la colección | Sí | photo. |
| Imagen de portada | Banner | No | cover_photo. |
| Precio | Precio de referencia | No | price (BigNumber) + priceCurrency. |
| Whitepaper (URL) | Enlace del whitepaper | No | whitepaper_url. |
| Institución creadora | Nombre/URL del creador | No | creator_institution / creator_institution_url. |
| Documento legal (PDF) | Documentación jurídica | No | document_url (upload, máx. 10 MB). |
| Documento de contrato (PDF) | Contrato adjunto | No | contract_url (upload). |
| Mostrar disclaimer | Muestra aviso en la colección | No | show_disclaimer. |
| Dirección de contrato | Contrato on-chain | Automático | contract_address — completado por la plataforma tras el procesamiento on-chain (se muestra como "procesando" hasta que se confirma). |
Estándar de contrato y panel de Regulación
El campo contract_standard define el tipo de contrato de la colección:
ERC721(estándar) — NFT no regulado;ERC721_COMPLIANT— NFT regulado (identidad on-chain vía IdentityRegistry compartida);ERC3643— token de seguridad fungible regulado.
En colecciones reguladas, el formulario (modos editar/visualizar) muestra el panel Regulación (app-regulated-admin), oculto automáticamente cuando la colección no está regulada. Este panel permite las siguientes acciones sobre el token/tenedor:
| Acción | Qué hace |
|---|---|
| Pause / Unpause | Pausa las transferencias del token regulado. |
| Freeze / Unfreeze (por billetera) | Congela una billetera específica. |
| Forced transfer | Transferencia forzada from → to → value (value = tokenId en NFT-compliant, o amount en fungible). |
| Recover | Recuperación oldWallet → newWallet vía ONCHAINID (tokenId solo en NFT). |
| Lista de tenedores | Tabla con tenedores reales de la colección (freeze/recover/forced por fila). |
Las acciones de identidad del inversor (status/retry/revoke) están en la pantalla de Detalles del Usuario, no aquí.
Acciones y modales
- Crear / Guardar: modal de confirmación (bottom sheet). Crea (
createCollection) o actualiza (updateCollections). - Eliminar: solo permitido si la colección no tiene ítems; solicita confirmación. De lo contrario, bloquea con aviso.
- Acciones de regulación: activan step-up (reautenticación contraseña+MFA, header
X-Step-Up-Token) en las operaciones destructivas (forced-transfer, recover, freeze).
Reglas de negocio / precauciones
Atención
- Nombre y red son inmutables después de la creación de la colección.
- Una colección con NFTs no puede eliminarse — vacíela/ciérrela primero.
- La dirección de contrato es generada por la plataforma; espere el procesamiento on-chain.
Irreversible
- Las operaciones reguladas de forced transfer, recover y revoke de identidad alteran la propiedad on-chain y no tienen rollback. Requieren step-up (contraseña+MFA).
- Valores financieros: el precio es BigNumber, sin redondeo.
Ejemplos
Escenario 1 — Colección estándar (no regulada) para NFTs coleccionables
- Nombre "Arte Axia", red
POLYGON, descripción, imagen y portada. - Guardar —
contract_standardpermaneceERC721. - La colección queda lista para recibir NFTs en Gestionar NFTs.
Escenario 2 — Colección regulada (security token) de crowdfunding
- La colección nace regulada cuando el crowdfunding correspondiente se marca como regulado — al cierre,
contract_standardse resuelve aERC721_COMPLIANT(NFT) oERC3643(fungible). - Al editar/visualizar la colección, el panel Regulación aparece con IdentityRegistry/compliance y acciones de pause/freeze/forced/recover.
- Las transferencias pasan a exigir inversores con identidad verificada (KYC on-chain aprovisionado de forma lazy).