Descripci贸n General

El Backend de Recompensas procesa eventos en tiempo real desde una cola de mensajes (Kafka) para impulsar las siguientes caracter铆sticas:
  1. Lealtad (Sistema de Niveles): Progresi贸n de XP y subidas de nivel basadas en la actividad del jugador
  2. Desaf铆os: Seguimiento del progreso en apuestas, dep贸sitos, conteo de casino, inicio de sesi贸n consecutivo y otros tipos de desaf铆os
  3. Mapeo de Juegos: Descubrimiento autom谩tico y mapeo de juegos desde la actividad del jugador

Tipos de Eventos

GamesEnriched (CasinoEvent)

Descripci贸n: Eventos individuales de transacciones de casino (apuesta o ganancia) antes de la agregaci贸n de rondas.
Usado por:
  1. Sistema de Lealtad
  2. Desaf铆os de Apuestas
  3. Desaf铆os de Conteo de Casino
  4. Desaf铆os de Multiplicador de Ganancia
  5. Servicio de Mapeo de Juegos
Campos Requeridos:
CampoTipoDescripci贸n
user_id
int64
ID interno del usuario (debe ser > 0 y < MaxInt32)
game_id
string
Identificador del juego
game_name
string
Nombre del juego
vendor_id
string
Identificador del proveedor/vendedor del juego. Puede ser opcional si allow_incomplete_game_hash est谩 habilitado.
vendor_name
string
Nombre del proveedor/vendedor del juego. Puede ser opcional si allow_incomplete_game_hash est谩 habilitado.
origin
string
Identificador del origen del jugador
type
string
Tipo de transacci贸n (ej., "bet", "win")
amount
float64
Cantidad de la transacci贸n (debe ser > 0)
activity_id
string
Identificador 煤nico de actividad/transacci贸n
currency
string
C贸digo de moneda
timestamp
time
Marca de tiempo del evento (no puede ser cero)
status
string
Debe ser "approved" o "rollback"
round_id
string
Identificador de la ronda del juego. Requerido por algunos servicios, configurable.
Ejemplo JSON:

PaymentEnriched

Descripci贸n: Eventos de transacciones de pago (dep贸sitos y retiros).
Usado por:
  1. Servicio de Lealtad: para contribuci贸n de XP basada en dep贸sitos
  2. Desaf铆os de Dep贸sito (Consecutivos)
Campos Requeridos:
CampoTipoDescripci贸n
user_id
int64
ID interno del usuario (debe ser > 0 y < MaxInt32)
payment_id
string
Identificador 煤nico del pago
status
string
Estado del pago. Debe ser "approved" para el procesamiento de desaf铆os. Tambi茅n se soporta el estado de rollback para la reversi贸n de contribuci贸n de lealtad.
type
string
Tipo de pago. Debe ser "deposit" para el procesamiento de desaf铆os.
amount
float64
Cantidad del pago (debe ser > 0)
currency
string
C贸digo de moneda
origin
string
Identificador del origen del jugador
timestamp
time
Marca de tiempo del evento (no puede ser cero)
Ejemplo JSON:

LoginEventEnriched

Descripci贸n: Eventos de inicio de sesi贸n del usuario.
Usado por:
  1. Desaf铆os de Inicio de Sesi贸n Consecutivo
Campos Requeridos:
CampoTipoDescripci贸n
user_id
int64
ID interno del usuario (debe ser > 0 y < MaxInt32)
unique_id
string
Identificador 煤nico del evento
timestamp
time
Marca de tiempo del evento (no puede ser cero)
Ejemplo JSON:

SportsBetEnriched

Descripci贸n: Eventos de apuestas deportivas.
Usado por:
  1. Servicio de Lealtad: para contribuci贸n de XP de apuestas deportivas
Campos Requeridos:
CampoTipoDescripci贸n
user_id
int64
ID interno del usuario (debe ser > 0)
origin
string
Identificador del origen del jugador
activity_id
string
Identificador 煤nico de actividad
status
string
Estado de la apuesta. Para la contribuci贸n de XP de lealtad, solo se procesan eventos con estado "Settlement".
currency
string
C贸digo de moneda
timestamp
time
Marca de tiempo del evento (no puede ser cero)
amount
float64
Cantidad de la apuesta (debe ser > 0)
type
string
Tipo de apuesta
Ejemplo JSON: