04 · Procesos de negocio completos
Este capítulo conecta los objetos, la arquitectura y los roles en el ciclo de vida completo de un activo RWA.
4.1 Ciclo de vida
| Proceso | Responsable | Resultado |
|---|---|---|
| Emisión | Plataforma + emisor | Nueva Suite |
| Onboarding | Inversor + institución + emisor | isVerified == true |
| Mint | Token Agent | Aumenta saldo |
| Transferencia | Titular | Movimiento entre carteras elegibles |
| Burn | Token Agent | Disminuyen saldo y oferta |
4.2 Paso 1: emitir
Defina activo, Topics, ClaimIssuers, reglas, roles y entorno. Publique proxies, red, requisitos, reglas, versión, verificación, pausa y fecha efectiva.
Un Token nuevo está pausado. Mint y burn funcionan durante la pausa; las transferencias comunes fallan. Complete la aceptación antes de unpause().
4.3 Paso 2: onboarding
| Paso | Iniciador | En cadena | Gas | Resultado |
|---|---|---|---|---|
| Revisión | Inversor, institución | No | Ninguno | Conclusión |
| Crear ONCHAINID | Inversor | Sí | Inversor | Identidad asociada |
| Firmar Claim | Institución | No | Ninguno | Firma y campos |
| Escribir Claim | Inversor | Sí | Inversor | ClaimAdded |
| Registrar | IR Agent | Sí | Emisor | IdentityRegistered |
| Consultar | Cualquiera | Lectura | Sin gas de transacción | isVerified == true |
Por qué ClaimSigner no llama addClaim
ClaimSigner prueba la conclusión; el inversor controla ONCHAINID:
ClaimSigner firma fuera de cadena
↓
Inversor recibe la firma
↓
Inversor llama ONCHAINID.addClaim
Confirmación de onboarding
IdFactory.getIdentity(wallet)devuelve identidad;- ONCHAINID contiene Claim del Topic;
contains(wallet) == true;isVerified(wallet) == true.
El IdentityRegistry del Token es la autoridad final.
4.4 Paso 3: mint
Confirme condiciones externas y elegibilidad, convierta con decimals, envíe con Token Agent, espere recibo/evento y después actualice el pedido. Una transacción difundida no significa recepción.
4.5 Paso 4: transferencia
Validar red y Token
→ Leer decimals
→ Revisar pausa/congelación
→ Consultar isVerified
→ canTransfer opcional
→ Firmar y enviar
→ Esperar recibo
canTransfer es una precomprobación; el recibo determina el resultado.
4.6 Paso 5: reembolso y burn
Burn y liquidación son estados distintos y se registran por separado.
4.7 Interpretar Transfer
from | to | Significado |
|---|---|---|
| Cero | Inversor | Mint |
| Inversor | Cero | Burn |
| No cero | No cero | Transferencia o transferencia forzada |
Use también método y eventos administrativos para distinguir una transferencia forzada.
4.8 Fallos frecuentes
| Síntoma | Causa | Acción |
|---|---|---|
isVerified == false | Registro/Claim/Issuer | Localizar paso de onboarding |
Identity is not verified. | Receptor de mint no elegible | Completar elegibilidad |
Compliance not followed | Regla activada | Consultar reglas |
Pausable: paused | Transferencias cerradas | Mostrar pausa |
| Cartera congelada | Congelación del emisor | Contactar emisor |
| Saldo insuficiente | Conversión o saldo disponible | Releer decimals/congelado |
| Permiso | No es Agent/Owner | Usar rol correcto |
| Pending largo | RPC/gas/red | Consultar hash y evitar duplicados |