馃毀 La documentacion de Bloque est谩 en desarrollo

Descripci贸n de Cuentas

El SDK de Bloque proporciona funcionalidad completa para gestionar varios tipos de cuentas financieras.

Tipos de Cuentas

El SDK soporta m煤ltiples tipos de cuentas, cada una dise帽ada para casos de uso espec铆ficos:

Tarjetas Virtuales

Crea tarjetas virtuales instant谩neas para pagos en l铆nea. Las tarjetas son:

  • Compatibles con PCI: Almacenamiento y visualizaci贸n segura de datos sensibles de tarjetas
  • Instant谩neas: Las tarjetas se crean inmediatamente y est谩n listas para usar
  • M煤ltiples: Los usuarios pueden tener m煤ltiples tarjetas para diferentes prop贸sitos

Aprende m谩s sobre Tarjetas Virtuales

Cuentas Bancolombia

Crea cuentas de pago que se integran con el sistema bancario de Bancolombia:

  • C贸digos de referencia: C贸digos 煤nicos para recibir pagos
  • Integraci贸n bancaria: Integraci贸n directa con Bancolombia
  • Seguimiento de pagos: Visibilidad completa del estado de los pagos

Aprende m谩s sobre Cuentas Bancolombia

Operaciones Comunes

Todos los tipos de cuentas soportan operaciones comunes:

Listar Cuentas

Lista todas las cuentas de un usuario con sus balances actuales:

listar-cuentas.ts
import { SDK } from '@bloque/sdk';

const bloque = new SDK({
  origin: 'tu-origen',
  auth: {
    type: 'apiKey',
    apiKey: process.env.BLOQUE_API_KEY!,
  },
  mode: 'production',
});

// Conectar a la sesi贸n del usuario
const userSession = await bloque.connect('user-alias');

// Listar todas las cuentas de tarjeta
const cards = await userSession.accounts.card.list();

console.log(`Se encontraron ${cards.accounts.length} cuentas de tarjeta`);

cards.accounts.forEach((card) => {
  console.log('Card:', card.metadata?.name);
  console.log('Balance:', card.balance);
});

Obtener cuenta por URN

Obt茅n los detalles completos de una cuenta (incluyendo balance) por URN:

get-account.ts
const account = await bloque.accounts.get(
  'did:bloque:mediums:virtual:account:acc-12345',
);
console.log(account.status, account.urn, account.balance);

Verificar Balance

Obt茅n el balance actual de cualquier cuenta por URN (v谩lido para card, virtual, bancolombia, us-account, polygon):

check-balance.ts
const balance = await bloque.accounts.balance(
  'did:bloque:mediums:virtual:account:acc-12345',
);
Object.entries(balance).forEach(([asset, b]) => {
  console.log(`${asset}: current=${b.current}, pending=${b.pending}`);
});

Ver Transacciones

Lista el historial de transacciones con paginaci贸n:

tipos.ts
const movements = await bloque.accounts.card.movements({
  urn: 'did:bloque:account:card:usr-123:crd-456',
  asset: 'DUSD/6',
  limit: 50,
  direction: 'in', // solo transacciones entrantes
});

console.log(`Se encontraron ${movements.data.length} transacciones`);

Ver Transacciones Globales (Todas las Cuentas)

Lista transacciones de todas tus cuentas (cards, virtual, polygon, etc.) sin URN de cuenta:

tipos.ts
const transactions = await bloque.accounts.transactions({
  asset: 'DUSD/6',
  limit: 10,
});

console.log(`Se encontraron ${transactions.data.length} transacciones`);
console.log('Hay m谩s:', transactions.hasMore);

Transferencias

Transfiere fondos entre cualquier cuenta:

transfer.ts
const transfer = await bloque.accounts.transfer({
  sourceUrn: 'did:bloque:account:card:usr-123:crd-456',
  destinationUrn: 'did:bloque:account:virtual:acc-67890',
  amount: '1000000000000',
  asset: 'KSM/12',
});

console.log('Transfer queued:', transfer.queueId);

Aprende m谩s sobre Transferencias

Activos Soportados

ActivoDescripci贸nDecimales
DUSD/6USD Digital6
KSM/12Kusama12

Sesiones de Usuario

Importante

La mayor铆a de las operaciones de cuentas requieren conectarse primero a una sesi贸n de usuario:

tipos.ts
const userSession = await bloque.connect('user-alias');
const cards = await userSession.accounts.card.list();

Esto asegura la autenticaci贸n y autorizaci贸n adecuada para operaciones espec铆ficas del usuario.

Mejores Pr谩cticas

  1. Usa Sesiones de Usuario: Con茅ctate a sesiones de usuario para operaciones de cuentas
  2. Verifica Usuarios: Aseg煤rate de que los usuarios completen KYC antes de crear cuentas
  3. Maneja Estados: Verifica el estado de la cuenta antes de las operaciones
  4. Paginaci贸n: Usa paginaci贸n para listas grandes de transacciones
  5. Manejo de Errores: Siempre usa bloques try-catch
  6. Prueba Primero: Prueba en modo sandbox antes de producci贸n

Pr贸ximos Pasos