🚧 La documentacion de Bloque está en desarrollo

Cuentas

Una cuenta es un contenedor financiero ligado a un ledger. Cada cuenta tiene una dirección (URN), un tipo (medium), un estado y un balance — todo heredado del ledger al que pertenece.


¿Qué es una Cuenta?

Cuenta
Un contenedor financiero: una dirección (URN) + un medium (tipo) + un estado + una conexión a un ledger. Las cuentas son con lo que interactúan los usuarios — tarjetas, cuentas bancarias, wallets. El dinero en sí vive en el ledger.

¿Qué tipos de cuenta existen?

MediumQué es¿Requiere KYC?
VirtualCuenta base — crea el ledger, agrupa balanceMínimo
CardTarjeta de débito/crédito virtual (PCI-compliant)Mínimo
BancolombiaCuenta bancaria colombiana con código de referencia único
USCuenta bancaria FDIC-insured en EE.UU. vía BridgeKYC completo + TOS
PolygonWallet Web3 en la red PolygonNinguno
BRE-BLlave de pago instantáneo colombiano (teléfono, email, CC, etc.)

¿Qué es un Medium?

Medium
La etiqueta del tipo de cuenta. Aparece en el URN de la cuenta y en los parámetros de la API.
did:bloque:virtual:acc_abc123 did:bloque:card:acc_def456 did:bloque:bancolombia:acc_ghi789

¿Qué es un Activo y cómo se representan los montos?

Los activos usan el formato SÍMBOLO/DECIMALES. Los montos siempre se pasan como strings — nunca como floats — para evitar problemas de precisión de punto flotante.

// DUSD/6 tiene 6 decimales
// Para representar $50.00: multiplica por 10^6
const monto = '50000000' // = 50.000000 DUSD

// COPM/2 tiene 2 decimales
// Para representar $10.000 COP: multiplica por 10^2
const montoCOP = '1000000' // = 10000.00 COP

¿Qué estados puede tener una cuenta?

creation_in_progress

     active
    ↙     ↘
frozen   disabled

           deleted
EstadoSignificado
creation_in_progressEn configuración — aún no usable
activeEstado operativo normal
frozenBloqueada temporalmente — puede descongelarse
disabledDesactivada permanentemente
deletedEliminada
creation_failedLa creación falló — necesita recrearse

¿Qué es una Transferencia?

Transferencia
Mover fondos entre dos cuentas. Las transferencias son asíncronas — devuelven un queueId y un estado. El estado final (completado o fallido) llega vía webhook o polling.
const resultado = await client.accounts.transfer({
  sourceUrn: cuentaVirtual.urn,
  destinationUrn: tarjeta.urn,
  amount: '50000000',
  asset: 'DUSD/6',
})

// resultado.status = 'queued' | 'processing' | 'completed' | 'failed'

¿Qué sigue?

Swap — convertir activos y trabajar con rieles de pago