Códigos de respuesta y rechazo Códigos HTTP, de rechazo y de estado que devuelve la API, y qué hacer con cada uno.
Referencia de los códigos que devuelve la API de Tonder: códigos HTTP, códigos de rechazo de tarjeta
y códigos de estado de retiros.
Código Estado Descripción 200 OK La petición fue exitosa. Típico de peticiones GET. 201 Created El recurso se creó con éxito. Típico de peticiones POST. 202 Accepted La petición se aceptó pero aún no se completa (p. ej. un pago que requiere 3DS). 204 No Content La petición fue exitosa pero no hay contenido que devolver (p. ej. un DELETE).
Código Estado Descripción Acción 400 Bad Request Petición mal formada o sin parámetros requeridos. Revisa el cuerpo y los parámetros. 401 Unauthorized Falló la autenticación: llave API inválida o ausente. Verifica tu llave y que incluya el prefijo Token (con espacio). 402 Payment Required El procesador o banco emisor rechazó el pago. Sugiere al usuario otro método de pago. 404 Not Found El recurso solicitado no existe. Revisa el ID de transacción o la URL. 422 Unprocessable Entity Petición bien formada pero con errores semánticos (p. ej. email inválido, monto fuera de rango). Corrige los datos indicados. 429 Too Many Requests Excediste el rate limit. Reintenta tras un retraso (backoff exponencial).
Código Estado Descripción Acción 500 Internal Server Error Error inesperado en los servidores de Tonder. Reintenta tras un breve retraso. 502 Bad Gateway Un servicio dependiente está temporalmente caído. Reintenta tras un breve retraso. 503 Service Unavailable La API está temporalmente no disponible (p. ej. mantenimiento). Reintenta más tarde. Revisa el status page.
{
"error" : {
"code" : "validation_error" ,
"message" : "Amount must be greater than 0" ,
"type" : "request_error" ,
"details" : { "field" : "amount" , "received_value" : -10.00 }
},
"request_id" : "req_abc123"
}
El objeto error contiene code (máquina-legible), message (humano-legible), type (categoría),
details (contexto adicional). El request_id identifica la petición —inclúyelo al contactar a
soporte.
Sistema de códigos de rechazo interno y estandarizado para unificar el manejo de errores entre
proveedores. Formato: [Categoría][Tipo][Secuencia] — categoría (letra A-Z), tipo H (rechazo
duro, permanente) o S (rechazo suave, se permite reintentar), secuencia (dos dígitos).
ℹ️ El catálogo detallado de los códigos crudos del procesador (numéricos, alfanuméricos y
códigos K) está en Códigos de rechazo .
Código Tipo Descripción AH01 Duro Número de tarjeta inválido AH02 Duro CVV/CVC inválido AH03 Duro Fecha de expiración inválida AH04 Duro Falló la autenticación 3D Secure AH05 Duro Transacción fraudulenta detectada AH06 Duro Tarjeta reportada como perdida AH07 Duro Tarjeta reportada como robada AH08 Duro Comportamiento sospechoso detectado AS01 Suave Se requiere autenticación 3D Secure AS02 Suave Se requiere autenticación reforzada (SCA)
Código Tipo Descripción BH01 Duro Tarjeta rechazada por el banco BH02 Duro Tarjeta expirada BH03 Duro Tarjeta cancelada/deshabilitada BH04 Duro Tarjeta restringida BH05 Duro Se requiere autorización del banco BH06 Duro Tarjeta en lista negra BH07 Duro Cuenta inválida BH08 Duro El banco solicitó retener la tarjeta BS01 Suave Banco temporalmente no disponible BS02 Suave Mantenimiento del sistema del emisor
Código Tipo Descripción CH01 Duro Fondos insuficientes CH02 Duro Límite de crédito excedido CH03 Duro Sobre el límite CH04 Duro Límite de retiro excedido CH05 Duro Límite de transacción excedido CS01 Suave Retención temporal de crédito
Código Tipo Descripción DH01 Duro Configuración de comercio inválida DH02 Duro Moneda no soportada DH03 Duro Tipo de tarjeta no soportado DH04 Duro Monto inválido DH05 Duro Tipo de transacción no permitido DH06 Duro Datos de transacción inválidos DS01 Suave Error de validación — se permite reintentar DS02 Suave Configuración temporalmente no disponible
Código Tipo Descripción ES01 Suave Timeout de red ES02 Suave Error de comunicación ES03 Suave Procesador no disponible ES04 Suave Timeout del gateway ES05 Suave Error de servicio externo
Código Tipo Descripción FH01 Duro Transacción de alto riesgo bloqueada FH02 Duro Reglas de velocidad violadas FH03 Duro Restricciones geográficas FH04 Duro Coincidencia con lista negra de comercios FH05 Duro Tarjeta bloqueada por fraude FS01 Suave Transacción bajo revisión de fraude
Código Tipo Descripción GS01 Suave Error general del sistema GS02 Suave Error de procesamiento — se permite reintentar GS03 Suave Transacción duplicada GS04 Suave Transacción expirada GS05 Suave Servicio temporalmente no disponible
Código Tipo Descripción UH01 Duro Transacción cancelada por el cliente UH02 Duro Falló la autenticación del cliente UH03 Duro Falló la verificación del cliente US01 Suave Se requiere acción del cliente US02 Suave Sesión expirada
El código de rechazo llega en el webhook en los campos decline_code y decline_reason:
{
"status" : "Declined" ,
"decline_code" : "BH01" ,
"decline_reason" : "Card declined by bank" ,
"event_type" : "payment_Declined"
}
Pending → Processing → Success (éxito terminal), o Declined / Cancelled / Failed
(falla terminal). Consulta las transiciones completas y el mapeo desde los nombres anteriores en
Flujo de estados de retiros .
¿Te resultó útil esta página?