Skip to content

Transacciones generales (Diario)

Requisitos previos de acceso

  • Permiso (módulo): viewGeneralJournal
  • Licencia/Feature: Ninguna
  • Contenedor del menú: GENERAL → grupo Diarios de transaccionesTransacciones generales (/general-journal)

Qué es / cuándo usar

Es el libro mayor consolidado de las transacciones financieras de los usuarios: cada fila es un asiento (crédito o débito) registrado por el Finance Management Service (FMS). El operador utiliza esta pantalla para auditar movimientos, verificar el flujo de una transacción específica, identificar la moneda transaccionada y abrir el "recibo" completo de un asiento durante atenciones de soporte o conciliaciones.

A diferencia de las pantallas de Operaciones (que ejecutan acciones), el foco aquí es la consulta y trazabilidad — ningún asiento se crea ni se modifica desde esta pantalla.

Requisitos previos

  • Permiso: viewGeneralJournal registrado para el rol del operador (recordatorio: el permiso es doble — enum CPM en el backend + módulo dinámico en la BD).
  • Licencia/Feature: ninguna — el ítem aparece en el menú únicamente en función del permiso.
  • Dependencias de otras pantallas: Ninguna. Los asientos ya existen en el FMS; esta pantalla solo los lee.

Paso a paso

  1. Acceda al menú Diarios de transacciones → Transacciones generales.
  2. El listado carga ya ordenado del más reciente al más antiguo (DESC, devuelto por el backend).
  3. Use el campo de búsqueda para filtrar por estado de la transacción.
  4. Use el selector de tipo/moneda para restringir a un token específico (la lista se llena dinámicamente con los tokens del tenant) o déjelo en all.
  5. Haga clic en el ícono de recibo en la fila para abrir el detalle completo del asiento.

Filtros y columnas

Filtro / ColumnaQué muestra / haceOrigen del dato
Búsqueda (estado)Filtra los asientos por estado de transacción. Texto vacío limpia el filtro.Parámetro selectedStatus enviado al FMS (getUserTransactionHistoryAdmin).
Selector de tipo/monedaRestringe a un token específico; all trae todos. La lista se arma con los IDs de tokens del tenant.TokensService.getTokens() + parámetro selectedDepositType.
Fecha/hora (date)Fecha y hora del asiento, en el idioma de la sesión.Campo when del asiento.
E-mail (name)E-mail del cliente de origen de la transacción.customerFromEmail.
Nombre (identifier)Nombre del cliente de origen.customerFromName.
Tipo (type)Sentido de la transacción (flujo: acreditado/debitado).transactionFlow.
Monto (amount)Monto total transaccionado.totalAmount.
Moneda transaccionada (unitOfMoney)Unidad monetaria del asiento.monetaryamount.unitOfMoney.
Recibo (acción)Abre el modal de detalles con el asiento completo (incluida la billetera de destino).openFullScreenReceipt(element).

La paginación es del lado del servidor: el cambio de página dispara una nueva consulta al FMS con limit/offset.

Acciones y modales

  • Recibo (ícono): abre el modal de detalle del asiento (DetailsViewComponent), mostrando todos los campos de la transacción seleccionada, inclusive la billetera de destino. Solo lectura.

Reglas de negocio / consideraciones

Atención

  • La pantalla viene paginada y ordenada desde el backend (DESC). La longitud del paginador es estimada (no es el total exacto de registros); navegue por las páginas para recorrer el historial completo.
  • El filtro de búsqueda actúa sobre el estado, no sobre nombre/e-mail. Para localizar por usuario, prefiera la pantalla de Detalles del usuario o los diarios específicos (Sincronizaciones, Retiros).
  • Valores financieros: tratados como BigNumber en el backend (FMS) — sin redondeo; la columna de monto refleja la precisión del token. No tome el número mostrado como definitivo para conciliación contable sin verificar los decimales del token.
  • Idempotencia: los asientos pueden tener origen en procesos idempotentes por externalId. En reintentos, el errorCode E00021 ("already processed") significa éxito (transacción ya contabilizada), no fallo — no trate una repetición como un error.

Pantallas relacionadas