Finanzas: operaciones de pagos Modelo en vivo

Estás en la mesa de operaciones de un conmutador de pagos que se sitúa entre los comercios y los emisores de tarjetas. Cada minuto llegan unas 400 transacciones por segundo; a cada una se le asigna una puntuación de fraude, espera una ranura de conexión libre y se reenvía a su emisor para obtener una respuesta. El modelo calcula las colas, los tiempos de espera, los reintentos de los clientes, el equilibrio del filtro antifraude y la exposición del procesamiento de respaldo con fórmulas de manual. Los importes están en unidades monetarias genéricas (u). Solo es una simulación educativa: no es asesoramiento financiero, jurídico ni de inversión.

Qué aprenderás

Simulador

Tiempo 0 min
Carga ofrecida (nuevas + reintentos) 400 · Reintentos 0 · Tasa de aprobación de clientes buenos 99,9% · Tiempo de autorización 330 ms · Ranuras de conexión ocupadas 69% · Servidores en servicio 6 (+0) · Tasa de fraude (proporción del importe aprobado) 10,4 bp · Tiempos de espera de emisores agotados 0,0% · Exposición de respaldo 0,00 M uFiltro antifraudet = 3,00σ✓ 99,9% · ? 0,0% · ✗ 0,1%Fraude detenido 31%Tasa de fraude (proporcióndel importeaprobado) 10,4 bp400 tx/s · ↻ 0Servidores de autorización▶▶▶▶▶▶··················Ranuras de conexiónocupadas 69% · 330 ms · ✗ 0,0%Emisores A✓ 250 msEmisores B✓ 250 ms⏱ 8 s · ⌛ 0,0% · Σ 0 uTasa de aprobación de clientes buenos 99,9%Exposición de respaldo 0,00 M u
  • Servidor en servicio
  • Servidor arrancando
  • Posición libre en el rack de servidores
  • Emisor respondiendo con normalidad
  • Emisor lento o caído
  • Procesamiento de respaldo activado
  • Transacciones entrantes

Controles

Cada servidor tiene 32 ranuras de conexión. Los servidores añadidos tardan 5 minutos en arrancar; se factura todo servidor, esté arrancando o no.

Admite como máximo el 90 % de la capacidad y responde al instante «inténtalo más tarde» al exceso, en lugar de dejar que se encole y caduque.

Cómo reintentan los comercios un fallo técnico (hasta 3 reintentos). Inmediato = en el minuto siguiente; espera exponencial = espera exponencial aleatoria, con retardos medios de 1, 2 y 4 minutos.

Las transacciones con una puntuación igual o superior se rechazan. Las puntuaciones están en desviaciones típicas del tráfico legítimo: más bajo significa más fraude detenido y más clientes buenos rechazados.

Las puntuaciones situadas hasta esta distancia por debajo del umbral reciben un desafío adicional al cliente en lugar de una decisión: el 85 % de los clientes legítimos lo completan, el 5 % de los defraudadores lo supera. 0 = desactivado.

Cuánto espera una ranura de conexión la respuesta del emisor. Pasado ese tiempo, el conmutador envía una reversión y usa el procesamiento de respaldo (stand-in), o deniega por «emisor no disponible».

Cuando el emisor no responde a tiempo, el conmutador aprueba en su nombre hasta este importe. Cada aprobación de respaldo es una exposición que el emisor nunca comprobó. 0 = desactivado.

Indicadores

Tasa de aprobación de clientes buenos
99,9%
normal
Tiempo de autorización
330ms
normal
Tasa de fraude (proporción del importe aprobado)
10,4bp
normal
Ranuras de conexión ocupadas
69%
normal
Tasa de aprobación, emisores sanos99,9 %
Clientes buenos rechazados por la regla antifraude1,3 ‰
Transacciones enviadas a autenticación reforzada0,0 %
Fraude detenido31 %
Transacciones nuevas400 tx/s
Carga ofrecida (nuevas + reintentos)400 tx/s
Reintentos0 tx/s
Descartadas (respondidas «inténtalo más tarde»)0 tx/s
Descartadas en la cola0,0 %
Tiempos de espera de emisores agotados0,0 %
Aprobaciones de respaldo0 tx/s
Servidores en servicio6
Servidores arrancando0
Ritmo de coste de servidores36 u/h
Coste de servidores hasta ahora0 u
Exposición de respaldo0,00 M u
Fraude aprobado hasta ahora0,00 M u
Transacciones buenas perdidas hasta ahora0,0 k tx
Transacciones a la espera de reintento0 tx
Latencia del grupo de emisores B (media)250 ms

Tendencia

Tasa de aprobación de clientes buenos: — %100,00,0

Escenarios de crisis

Nivel 1 · Pico de una gran venta

Una gran venta en línea se abre en el minuto 5 y duplica el tráfico hasta unas 800 transacciones por segundo durante 45 minutos. El conmutador funciona con 6 servidores, dimensionados para un día normal con una ocupación de aproximadamente el 70 %. Los comercios reintentan de inmediato cada fallo técnico. Mantén aprobados a los clientes buenos y las respuestas rápidas sin comprar capacidad que no necesitas.

  • Aprobación media de clientes buenos ≥ 95 % desde que empieza la venta
  • Tiempo medio de autorización ≤ 500 ms
  • Coste de servidores ≤ 75 u

Nivel 2 · Oleada de fraude

En el minuto 5 empieza a usarse un lote de datos de tarjetas robadas: la proporción de fraude en el tráfico salta del 0,1 % al 1 %. El umbral de rechazo está fijado para los días normales (3σ) y la autenticación reforzada está desactivada. Reduce la tasa de fraude sin rechazar a los clientes buenos.

  • Tasa media de fraude ≤ 25 pb
  • Aprobación media de clientes buenos ≥ 98 %
  • Clientes buenos rechazados por la regla ≤ 5 ‰

Nivel 3 · Caída de emisores

En el minuto 5 los emisores del grupo B, una cuarta parte de todo el tráfico, se ralentizan hasta un tiempo medio de respuesta de 12 segundos. El conmutador espera hasta 8 s una respuesta, no tiene procesamiento de respaldo y funciona con 6 servidores. Mantén fluyendo a los clientes de los emisores sanos, atiende al grupo B hasta donde puedas con seguridad y mantén bajo control la exposición de respaldo y el coste.

  • Aprobación media de clientes de emisores sanos ≥ 90 %
  • Aprobación media de clientes buenos ≥ 86 %
  • Exposición de respaldo ≤ 9 M u
  • Coste de servidores ≤ 65 u

Base: el modelo detrás de las cifras

Todas las relaciones que usa el simulador, con su fuente. Las constantes marcadas como supuestos son calibraciones ilustrativas.

Las nuevas transacciones llegan a un ritmo base multiplicado por el pico de ventas; el recuento por minuto es aleatorio (Poisson, aproximación normal) con algo de ráfagas.
λ(t) = base × surge(t) (2-min lag); count/min ≈ N(60λ, √(60λ)) × (1 + N(0, 0.03))[2]Supuesto: el número de ranuras, los tiempos de servicio y del emisor, la separación de las puntuaciones, las tasas de superación de la autenticación reforzada, la proporción de trabajo desperdiciado, los importes y los precios son valores ilustrativos de un conmutador de tamaño medio, no cifras de ninguna red real.
Puntuación de fraude binormal: las puntuaciones legítimas y fraudulentas son dos curvas normales separadas por d′; el umbral elige un punto de la curva ROC.
genuine score ~ N(0,1), fraud ~ N(d′,1), d′ = 2.5; FPR(t) = 1 − Φ(t), TPR(t) = 1 − Φ(t − d′); AUC = Φ(d′/√2) ≈ 0.96[6][7]Supuesto: el número de ranuras, los tiempos de servicio y del emisor, la separación de las puntuaciones, las tasas de superación de la autenticación reforzada, la proporción de trabajo desperdiciado, los importes y los precios son valores ilustrativos de un conmutador de tamaño medio, no cifras de ninguna red real.
Umbral de coste óptimo: se rechaza cuando la razón de verosimilitud supera la razón de costes ponderada por la tasa base; un fraude diez veces más frecuente lo desplaza ln 10 / d′ ≈ 0,9σ hacia abajo.
decline when e^(d′x − d′²/2) ≥ (1 − π)·c_FP / (π·c_FN) ⇒ t* = [ln((1 − π)c_FP/(π c_FN)) + d′²/2] / d′[8][7]
Autenticación reforzada: las puntuaciones de la banda situada bajo el umbral se desafían en lugar de decidirse.
scores in [t − b, t) are challenged: genuine pass 85 %, fraud pass 5 %; scores ≥ t declined[10]Supuesto: el número de ranuras, los tiempos de servicio y del emisor, la separación de las puntuaciones, las tasas de superación de la autenticación reforzada, la proporción de trabajo desperdiciado, los importes y los precios son valores ilustrativos de un conmutador de tamaño medio, no cifras de ninguna red real.
La latencia del emisor es exponencial; una ranura se mantiene ocupada durante la latencia o el tiempo de espera, lo que ocurra primero.
L ~ Exp(mean m); E[min(L, T)] = m(1 − e^(−T/m)), P(L > T) = e^(−T/m); S = 80 ms + forwarded × Σ share·E[min(L,T)][2][9]
Ley de Little: ranuras ocupadas = tasa de llegada × tiempo de retención.
busy slots = λ·S (Little) ⇒ utilization = λ·S / (32 × servers)[3]
Erlang C: la probabilidad de que una transacción espere una ranura libre, y la probabilidad de que espere más que el tiempo de espera de 2 s de la cola.
P(W > 2 s) = C(a, N)·e^(−(N/S − λ)·2 s), a = λS; mean wait = C / (N/S − λ)[1][2]
Por encima de la capacidad el conmutador también gasta trabajo en solicitudes que luego descarta, de modo que el rendimiento útil cae al subir la carga; el descarte de carga rechaza el exceso a bajo coste.
λ ≥ N/S: goodput = (N/S − ω·λ)/(1 − ω), ω = 0.3; load shedding admits ≤ 0.9·N/S and answers the rest at once[4][5]Supuesto: el número de ranuras, los tiempos de servicio y del emisor, la separación de las puntuaciones, las tasas de superación de la autenticación reforzada, la proporción de trabajo desperdiciado, los importes y los precios son valores ilustrativos de un conmutador de tamaño medio, no cifras de ninguna red real.
Reintentos del cliente: cada fallo técnico se reintenta hasta tres veces, de inmediato o con espera exponencial aleatoria.
failed attempt → retry with p = 0.95, ≤ 3 retries; immediate: next minute; backoff: delay ~ Exp(mean 1, 2, 4 min)[4][5]Supuesto: el número de ranuras, los tiempos de servicio y del emisor, la separación de las puntuaciones, las tasas de superación de la autenticación reforzada, la proporción de trabajo desperdiciado, los importes y los precios son valores ilustrativos de un conmutador de tamaño medio, no cifras de ninguna red real.
Tiempo de espera del emisor, reversión y procesamiento de respaldo: los importes son lognormales, de modo que la proporción por debajo del límite y el volumen aprobado se obtienen de la función de distribución normal.
issuer timeout → reversal; stand-in approves if amount ≤ limit: P = Φ((ln L − μ)/σ), volume = e^(μ+σ²/2)·Φ((ln L − μ − σ²)/σ)[9][11]
Tasa de fraude en puntos básicos del importe aprobado; se usa 13 pb como escala de referencia para los pagos remotos pequeños con tarjeta.
fraud rate = approved fraud amount / approved amount × 10,000 bp (reference scale: 13 bp)[10]
Otras constantes de funcionamiento que usa el modelo.
32 slots per server, 2–24 servers, +5 min boot, 6 u per server-hour · switch time 80 ms · queue timeout 2 s · issuer latency 250 ms (group B = 25 % of traffic, ±15 % per minute) · amounts lognormal, median 40 u, σ = 1, fraud ×1.5 · ω = 0.3 · shedding at 90 % · reversal = 80 ms of switch timeSupuesto: el número de ranuras, los tiempos de servicio y del emisor, la separación de las puntuaciones, las tasas de superación de la autenticación reforzada, la proporción de trabajo desperdiciado, los importes y los precios son valores ilustrativos de un conmutador de tamaño medio, no cifras de ninguna red real.

Aleatoriedad: un generador mulberry32 con semilla; distribuciones usadas: uniforme, exponencial (CDF inversa), normal (Box–Muller), Poisson (Knuth). La semilla se muestra y se puede compartir.

Fuentes

  1. Teletraffic Engineering Handbook — Erlang C formula; waiting-time distribution for M/M/n, FCFS — ITU-D Study Group 2 Question 16/2 (V. B. Iversen), 2005
  2. M. Harchol-Balter — Performance Modeling and Design of Computer Systems: Queueing Theory in Action (M/M/k, capacity provisioning) — Cambridge University Press, 2013
  3. J. D. C. Little — A Proof for the Queuing Formula: L = λW — Operations Research 9(3):383–387, 1961
  4. Site Reliability Engineering — Ch. 22 Addressing Cascading Failures (retries, randomized exponential backoff, load shedding, work on requests past their deadline) — Beyer, Jones, Petoff, Murphy (eds.), O'Reilly, 2016
  5. N. Bronson, A. Aghayev, A. Charapko, T. Zhu — Metastable Failures in Distributed Systems — HotOS ’21, ACM, 2021
  6. T. Fawcett — An introduction to ROC analysis — Pattern Recognition Letters 27(8):861–874, 2006
  7. R. J. Bolton, D. J. Hand — Statistical Fraud Detection: A Review — Statistical Science 17(3):235–255, 2002
  8. C. Elkan — The Foundations of Cost-Sensitive Learning — IJCAI 2001, 2001
  9. ISO 8583-1:2003 Financial transaction card originated messages — Interchange message specifications — Part 1 (authorization, reversal messages) — ISO/TC 68/SC 9, 2003
  10. Commission Delegated Regulation (EU) 2018/389 — RTS on strong customer authentication, Annex: reference fraud rates (0.13 % for remote card payments up to EUR 100) — Official Journal of the European Union, 2018
  11. N. L. Johnson, S. Kotz, N. Balakrishnan — Continuous Univariate Distributions, Vol. 1 (lognormal distribution, partial moments) — Wiley, 1994

Quién se dedica a esto

Modelo educativo: no sirve para decisiones operativas. Las instalaciones reales calibran cada constante con sus propios equipos y datos.