Flujos financieros entre cadenas
(Sección: Ecosistema y Red)
1) Por qué administrar el dinero entre cadenas
Los flujos financieros entre cadenas (cross-chain value flows) son el movimiento de fondos y obligaciones entre redes, puentes, proveedores de pagos y operadores. Objetivos:- Seguridad y finalización: tomar en cuenta sólo los hechos irreversibles.
- Liquidez y coste: minimizar el coste de los corredores con reservas suficientes.
- Informes y auditorías: trazabilidad completa con doble registro y prufas.
- Cumplimiento: AML/sanciones, residencia, límites por jurisdicciones.
2) Tipología de flujos financieros
1. Depósitos: on-ramp → billetera/cuenta de usuario (onchain/offchain).
2. Pagos: off-ramp/criptomonedas → dirección externa/PSP.
3. Traducciones entre cadenas (puente): lock/mint, burn/release, message-based.
4. Swap/Conversion (FX): swap cross-asset/chain con precios de oráculo.
5. Compensación y regalías: pagos periódicos entre operator↔studii↔agregatory.
6. Comisiones y retenciones: network fee, bridge fee, take rate, rebates.
7. Operaciones de tesorería (treasury): rebalance de liquidez y cobertura.
3) Roles y contornos
Puente/releer: permite la transferencia de estados/activos y prufas.
Tesoro (Treasury): reservas por cadenas/divisas, límites, cobertura.
PSP/On-off-rampas: tarjetas/ARM/bancos/criptomonedas locales.
Oráculos/cotizaciones: precios de activos, FX y comisiones.
Riesgo/Cumplimiento: AML/KYC/KYB, sanciones, límites de velocidad.
Contabilidad/BI: doble registro, informes finales, conciliaciones.
4) Arquitectura de flujo (referencia)
Ingest (puente/PSP/nodo) → Raw/Bronze (datos de movimiento) → Clean/Silver (normalización, dedoop, prufs) → Core/Gold (doble registro, posiciones, obligaciones) → Marts (finanzas, riesgo, regalías) → Serve/API (informes, compensación, límites).
Propiedades clave: idempotencia, versionamiento de esquemas, replay/backfill, data late.
5) Finalización, reorgía y ventanas de disputa
Estados: 'observed → confirmed (K) → finalized → invalidated (reorg)' (+ 'challenged' para puentes optimistas).
Políticas:- K-confirmaciones per chain/asset/suma ('K↑' para grandes transferencias).
- Finalización Delayed para sumas de alto riesgo y nuevos puentes.
- Reorg handling: discapacidad automática + recuento de unidades.
- Cobertura de prueba: porcentaje objetivo de registros con varillas válidas ≥ 99%.
6) Prising, comisiones y FX
Precios: 'effective _ amount = amount − (network_fee + bridge_fee + fx_spread)'
Oráculos: mediana de cotizaciones, protección de outlier, precios de tiempo-weighted.
Ventana deslizante para el curso en largos pasillos; fijar el curso en 'observed _ at' o 'event _ at' - por política de informe.
Fee buckets: hojas de ruta de las comisiones per corridor/asset.
7) Liquidez y límites
Reservas: balances objetivo por cadenas/activos, amortiguadores para picos.
Corredores: límites diurnos, umbrales de llamada del Tesoro.
Rebalance: rebording/market swaps, cost-aware (incluyendo latency y fee).
Plan Stress: fallback activos/cadenas, mejora temporal K/ventana de disputa.
yaml treasury:
corridors:
"eth->polygon:USDC": { daily_usd: 1_000_000, k: 20, alert_at_pct: 80 }
"polygon->eth:USDC": { daily_usd: 800_000, k: 24, alert_at_pct: 75 }
reserves:
eth: { usdc_min: 300_000, native_gas_min_usd: 25_000 }
polygon: { usdc_min: 250_000, native_gas_min_usd: 10_000 }
8) Contratos de eventos y idempotencia
Evento de traducción (Async-style, YAML):yaml event:
id: uuid type: bridge. lock bridge. mint payout. requested payout. finalized deposit. settled ts: 2025-10-31T19:00:00Z chain_id: "eth-mainnet"
asset: "USDC"
amount: "123. 45"
src: "0x..." # address/organization dst: "0x..." iban wallet_id status: observed confirmed finalized invalidated proof_ref: "merkle:..."
idempotency_key: "${chain} ${block} ${tx} ${log} ${type}"
fx: { base: "USD", rate: "1. 00", source: "oracle:v2" }
fees: { network: "1. 23", bridge: "0. 50" }
Regla de deduplicación: upsert por 'idempotency _ key' en la ventana ≥ 72 horas.
9) Doble registro y contabilidad (Core Ledger)
Esquema (SQL):sql
CREATE TABLE ledger_entries (
id UUID PRIMARY KEY,
ts TIMESTAMPTZ,
account_dr TEXT, -- debit account_cr TEXT, -- credit amount NUMERIC (38.9),
currency TEXT, -- canonical accounting currency (for example, USD)
ref_event_id UUID,
meta JSONB
);
CREATE TABLE positions (
account TEXT PRIMARY KEY,
balance NUMERIC(38,9),
currency TEXT
);
Ejemplo de cableado: traducción entre cadenas USDC (lock→mint)
`Dr Bridge Receivable (dst_chain:USDC)` / `Cr Cash (src_chain:USDC)` — при lock.
`Dr Cash (dst_chain:USDC)` / `Cr Bridge Receivable (dst_chain:USDC)` — при mint(finalized).
Las comisiones se reflejan en líneas separadas ('Bridge Fee Revenue', 'Network Fee Expense').
10) Conciliación y compensación
T-conciliación: por cadenas, activos, proveedores/puentes, día.
Prueba match: recibos de ambos lados del pasillo (src/dst) y cantidad (con tolerancia de error).
Dispute flow: cuarentena de anomalías (asset/decimals/amount mismatch).
Compensación de regalías: sólo por 'finalizada', FX por 'event _ at' o 'observed _ at' - según la política.
sql
-- Lock/mint bundle
SELECT l. tx_hash AS src_tx, m. tx_hash AS dst_tx, l. amount, m. amount
FROM core_events l
JOIN core_events m ON m. type='bridge. mint' AND m. proof_ref = l. proof_ref
WHERE l. type='bridge. lock' AND l. status='finalized' AND m. status='finalized';
-- Daily reconciliation by asset/chain
SELECT chain_id, asset,
SUM(CASE WHEN direction='in' THEN amount ELSE 0 END) AS inflow,
SUM(CASE WHEN direction='out' THEN amount ELSE 0 END) AS outflow
FROM flows
WHERE ts::date = CURRENT_DATE - INTERVAL '1 day'
GROUP BY chain_id, asset;
11) Cumplimiento y residencia
AML/KYC/KYB: calificaciones, listas de sanciones, fuentes de fondos.
Residencia/localización: tokenización PII, claves de cifrado regional, exportación en listas blancas.
Límites velocity: per user/org/corridor/día.
Audit Trail: registros de acceso inmutables, firmas de eventos.
12) Observabilidad: SLI/SLO y métricas
SLI (núcleo):- Finality p95 per corridor/asset,
- Tasa de éxito de las traducciones,
- Proof Coverage%,
- Queue-Lag p95 (bus/puente),
- FX Drift (divergencia de cursos),
- Liquidity Utilization% (carga de reservas),
- Reorg/Challenge Rate,
- Dispute/Quarantine Rate.
- Finalidad p95: ≤ 3-10 min (por el pasillo), Éxito ≥ 99. 5%,
- Proof Coverage ≥ 99. 0%, Queue-Lag P0 p95 ≤ 2 с,
- Dispute Rate ≤ 0. 2%, FX Drift ≤ 0. 3% de la mediana.
Дашборды: Flows Core, Finality & Proofs, Treasury & Liquidity, FX & Fees, Compliance.
13) Gestión de cambios
Timelock para modificar K/límites/corredores; Registro de soluciones.
Versiones de directorios de activos/decimals (compatibilidad sólo con «agregar»).
A/B-inclusión de nuevos puentes: flujo canario, límites, K. elevado.
Emergencia kill-switch del corredor en caso de anomalías.
14) Configuraciones (YAML)
Política de finalización/riesgo
yaml finality_policy:
eth-mainnet: { k: 12, delayed_for_usd_gt: 100000 }
polygon: { k: 256 }
optimistic: { k: 0, challenge_minutes: 20, delayed_for_usd_gt: 50000 }
risk:
large_transfer_alert_usd: 25000 sanction_check: true
Reglas de corredores y comisiones
yaml corridors:
- id: "eth->polygon:USDC"
fee_bps: 25 fx_source: "oracle:v2"
daily_limit_usd: 1_000_000 slo:
finality_p95_min: 6 success_pct: 99. 6
Webhook/firmas de compensación
yaml webhooks:
clearing:
signature: { alg: "HMAC-SHA256", header: "X-Signature", ts_header: "X-Timestamp" }
retry: { attempts: 5, backoff_ms: [200,800,1600,3200,6400], jitter: true }
15) Incidentes de Playbook
A. Spike reorg/invalidated
1. Levantar temporalmente 'K', habilitar 'finalized-only'; 2) detener los vuelos de alto riesgo;
2. Recuento de agregados; 4) post-mortem y ajuste de políticas.
B. Caída Proof Coverage
1. Restart Merclization/Prouvers; 2) cuarentena de traducciones dudosas;
2. muestreo manual de casos; 4) informe al Tesoro/cumplimiento.
C. Falta de liquidez en el corredor
1. Habilitar rebalance/swap; 2) elevar fee/introducir cuotas;
2. priorizar los pagos P0; 4) notificación a los participantes.
D. FX Drift/anomalías de precios
1. Cambiar fuente de cotización; 2) limitar las transacciones importantes;
2. ejecutar hedge; 4) volver a calcular los informes por ventana.
E. Activador de sanciones/AML
1. Unidad de operación inmediata; 2) escalamiento en Compliance;
2. conservación de artefactos/prufas; 4) informe y acciones legales.
16) Lista de verificación de implementación
1. Fije las fuentes de flujo, los pasillos y las ventanas de finalización.
2. Introduzca los eventos canónicos y la clave de idempotencia.
3. Implementar doble registro y posición, FX-normalización y contabilidad de comisiones.
4. Configure los límites/reservas y el reequilibrio automático.
5. Levante los dashboards SLI/SLO: Finality, Proofs, Liquidity, FX, Compliance.
6. Incluya AML/sanciones, residencia y trails de auditoría.
7. Realice pruebas de chaos-/DR (reorg, oracle-drift, liquidez).
8. Inicie los procedimientos de gobierno en cualquier cambio de pasillos/K/límites.
17) Glosario
Finality - irreversibilidad de transacción/estado.
Reorg - Reconfiguración de una parte de la cadena con anulación de bloques.
Corridor es un conjunto gestionado de cadenas/activos para la transferencia de valor.
Proof Coverage es la proporción de registros con criptodivisas válidas.
FX Drift - Desviar el curso aplicado de la referencia.
Doble entrada - doble entrada (débito/crédito) para la contabilidad.
Delayed Finalization - Aceptación diferida en los informes para cantidades de alto riesgo.
En resumen: la gestión de los flujos financieros entre cadenas no es solo un «puente de activos», sino una disciplina de finalización, liquidez, contabilidad y cumplimiento. Los eventos canónicos, el registro dual, los límites y los SLO a través de los corredores proporcionan un sistema verificable, económico y sostenible, listo para la escala y la auditoría en cualquier jurisdicción.