Manejo de transacciones
Reglas que aplican a todas las transacciones de Botón de Pago, definidas por Yappy a nivel de plataforma.
Estados de una transacción
sequenceDiagram
box Tu infraestructura
participant BE as Backend<br/>del comercio
end
box Yappy
participant API as Yappy API<br/>payment-wc
participant APP as Yappy App<br/>del cliente
end
BE->>API: 1. Crear orden
API-->>BE: orderToken · estado: Creada
alt Usuario confirma pago
APP->>API: 2. Autoriza pago
API->>BE: 3. IPN status=E (Ejecutada)
Note right of BE: Pago completado (Happy path)
else Usuario cancela pago
APP->>API: 2. Cancela pago
API->>BE: 3. IPN status=C (Cancelada)
Note right of BE: Sin cargo - Usuario abortó
else Sin acción en 5 minutos
API->>BE: 3. IPN status=X (Expirada)
Note right of BE: Sin cargo - Timeout (5 min)
end Límites por transacción
Mínimo
$0.01
Máximo
$9,999.99
Estos límites son por transacción y NO son acumulativos. Tu comercio puede aplicar controles más restrictivos siempre que sean notificados a Yappy.
Detección de duplicados
Yappy retiene una transacción como duplicada por 5 minutos si se cumplen las cuatro condiciones simultáneamente:
- Mismo alias de origen.
- Mismo alias de destino.
- Mismo monto.
- Fecha de creación dentro del rango de los últimos 5 minutos.
Manejo de la descripción
La descripción que ve el cliente en la app de Yappy se sanitiza así:
- Si está vacía, en blanco, en null, o queda vacía tras quitar emojis y caracteres especiales, se reemplaza por
"A YAPPY". - Solo se permiten letras, espacios, guion
-y números. - Tildes y diéresis se reemplazan por su equivalente sin acento:
| Carácter | Reemplazo |
|---|---|
á | a |
é | e |
í | i |
ó | o |
ú | u |
ü | u |
ñ | n |