Cuentas
Módulo de Gestión de Cuentas
Este módulo maneja toda la funcionalidad relacionada con las cuentas principales del sistema OnSpot.
Descripción General
El módulo de cuentas es responsable de gestionar las cuentas principales de los usuarios, incluyendo la creación, actualización, consulta y administración de información de cuentas.
Funcionalidades Principales
Gestión de Cuentas
- Crear cuentas: Registro de nuevas cuentas en el sistema
- Consultar cuentas: Obtener información de cuentas individuales o listas
- Actualizar cuentas: Modificar información de cuentas existentes
- Desactivar cuentas: Suspender o desactivar cuentas
Tipos de Cuenta
- Cuenta Principal: Cuenta primaria del usuario
- Cuenta Empresarial: Para organizaciones y empresas
- Cuenta Personal: Para usuarios individuales
Estructura de Datos
Entidad Cuenta
typescript
@Entity('accounts')
export class Account {
@PrimaryGeneratedColumn('uuid')
id: string;
@Column()
accountName: string;
@Column()
accountType: AccountType;
@Column()
ownerId: string;
@Column({ type: 'decimal', precision: 10, scale: 2 })
balance: number;
@Column()
currency: string;
@Column({ default: true })
isActive: boolean;
@CreateDateColumn()
createdAt: Date;
@UpdateDateColumn()
updatedAt: Date;
}Endpoints Principales
GET /accounts- Listar cuentasGET /accounts/:id- Obtener cuenta por IDPOST /accounts- Crear nueva cuentaPUT /accounts/:id- Actualizar cuentaDELETE /accounts/:id- Desactivar cuentaGET /accounts/:id/balance- Consultar saldo de cuenta
Validaciones
DTOs de Entrada
- Validación de nombre de cuenta
- Validación de tipo de cuenta
- Validación de propietario
- Validación de moneda
DTOs de Salida
- Formateo de saldos
- Información de propietario
- Estado de la cuenta
- Historial de transacciones
Seguridad
- Control de acceso por propietario
- Validación de permisos para operaciones
- Auditoría de cambios en cuentas
- Protección de datos sensibles
Relaciones
El módulo de cuentas se relaciona con:
- Users: Propietarios de las cuentas
- Sub-accounts: Subcuentas asociadas
- Transactions: Historial de transacciones
- Withdrawals: Operaciones de retiro
- Accreditations: Acreditaciones de fondos
Casos de Uso
Creación de Cuenta
- Usuario solicita crear cuenta
- Sistema valida datos
- Se crea la cuenta con saldo inicial
- Se notifica al usuario
Consulta de Saldo
- Usuario solicita consultar saldo
- Sistema verifica permisos
- Se retorna información actualizada
- Se registra la consulta
Transferencia entre Cuentas
- Usuario inicia transferencia
- Sistema valida fondos disponibles
- Se ejecuta la transferencia
- Se actualizan los saldos
- Se notifica a ambas partes
Versión: 1.0 | Actualizado: hace 2 meses