Un error de Webpay es una venta detenida en la puerta. Aquí están todos los códigos oficiales, con su significado, su responsable y qué hacer, según Transbank Developers y el Centro de Ayuda de Transbank.
La regla de oro: una transacción está aprobada solo con response_code 0 y status AUTHORIZED. Cualquier otro código es venta no realizada. Si recién integras, parte por la guía para integrar Webpay en tu sitio.
Toda integración los recibe por defecto. Son cinco códigos negativos que dicen, a grandes rasgos, si el problema es del cliente, del banco o tuyo.
| Código | Significado oficial | Responsable probable | Qué hacer |
|---|---|---|---|
| -1 | Rechazo · posible error en el ingreso de datos de la transacción | Datos del cliente | Pedir al cliente que revise número, fecha y código de su tarjeta y reintente |
| -2 | Fallo al procesar (parámetros de tarjeta o cuenta) | Datos del cliente o su banco | Reintentar; si persiste, el cliente debe consultar a su banco |
| -3 | Error en transacción | Proceso de la transacción | Reintentar la compra desde cero |
| -4 | Rechazada por parte del emisor | Banco emisor del cliente | El cliente debe contactar a su banco; tu comercio no puede destrabarlo |
| -5 | Transacción con riesgo de posible fraude | Motor de riesgo | El cliente debe validar con su banco; evita los reintentos automáticos |
Existen desde el 1 de marzo de 2021 y dan el motivo exacto del rechazo. Llegan solo si los activas con el soporte de Transbank, y conviene hacerlo.
| Código | Significado | Responsable probable | Qué hacer |
|---|---|---|---|
| -1 | Tarjeta inválida | Datos del cliente | Revisar los datos e intentar con otra tarjeta |
| -2 | Error de conexión | Infraestructura | Reintentar en unos minutos |
| -3 | Excede monto máximo | Límites de la tarjeta | El cliente consulta límites con su banco o paga con otra tarjeta |
| -4 | Fecha de expiración inválida | Datos del cliente | Corregir la fecha o usar una tarjeta vigente |
| -5 | Problema de autenticación | Cliente y su banco | Completar la autenticación del banco (claves, app) y reintentar |
| -6 | Rechazo general | Banco emisor | El cliente consulta a su banco |
| -7 | Tarjeta bloqueada | Banco emisor | El cliente desbloquea con su banco |
| -8 | Tarjeta vencida | Datos del cliente | Pagar con una tarjeta vigente |
| -9 | Transacción no soportada | Configuración o producto | Verificar con Transbank qué operaciones tiene habilitadas tu comercio |
| -10 | Problema en la transacción | Proceso de la transacción | Reintentar la compra desde cero |
| -11 | Excede límite de reintentos de rechazo | Reintentos acumulados | Esperar antes de reintentar; evita automatizar reintentos en bucle |
Fuente: Transbank Developers. Vigentes desde el 01-03-2021, con activación vía soporte de Transbank.
Son exclusivos de Oneclick y avisan que la operación superó un límite configurado para tu comercio. Se resuelven revisando esos límites con el área comercial de Transbank.
| Código | Límite excedido |
|---|---|
| -97 (CONSTRAINT_VIOLATED) | Monto máximo acumulado diario |
| -98 | Monto máximo por transacción |
| -99 | Cantidad de transacciones diarias |
Fuente: Centro de Ayuda de Transbank. Si aparecen seguido, tu negocio creció más que sus límites y el trámite es comercial.
Los códigos 21, 353, 350, 329, 293, 288 y 286 faltan en la documentación pública de Transbank para comercios, según verificamos el 24-08-2026 en Transbank Developers y el Centro de Ayuda. Los ve el comprador al pagar o en la app de su banco, así que la solución está en el banco emisor.
Si te apareció comprando, confirma con tu banco que la tarjeta acepta compras en línea y tiene saldo o cupo, y reintenta o usa otra tarjeta. Si eres comercio, mira el response_code y los códigos de nivel 2.
Suele deberse a una autenticación bancaria incompleta. Como comprador, completa la verificación de tu banco (clave, app) y reintenta. Como comercio, activa los códigos de nivel 2 para ver el motivo.
Se resuelve revisando con el banco emisor el saldo, los bloqueos y la habilitación de la tarjeta, igual que el 286, 288, 293 y 329. La excepción documentada es el 292, que la API lista como transacción no autorizada en una devolución.
Es de las búsquedas más frecuentes. La CuentaRUT es de débito, con límites diarios, y el rechazo lo decide BancoEstado. En su app revisa saldo, límites y que las compras por internet estén habilitadas; si persiste con saldo, consulta a BancoEstado.
Los errores HTTP (400, 401, 404, 405, 406, 415, 422, 500) vienen de tu integración al hablar con la API de Transbank. Se corrigen en tu código o tu configuración.
| Código HTTP | Significado | Qué revisar en tu integración |
|---|---|---|
| 400 | JSON inválido | El cuerpo de la petición que envía tu sitio |
| 401 | API Key o Secret incorrectos | Tus credenciales y el ambiente (integración vs producción) |
| 404 | Transacción no encontrada | El token o identificador que estás consultando |
| 405 | Método no permitido | El verbo HTTP de la petición |
| 406 | Formato de respuesta | Las cabeceras de aceptación de tu petición |
| 415 | Content-type | La cabecera de tipo de contenido |
| 422 | Validación de datos o lógica de negocio | Los datos enviados y el estado de la transacción |
| 500 | Error inesperado | Reintentar y registrar; si persiste, contactar a Transbank |
Fuente: Centro de Ayuda de Transbank. El 403, acceso denegado estándar, falta en la tabla oficial. Revisa tus credenciales (Tbk-Api-Key-Id y Tbk-Api-Key-Secret), el ambiente y que ningún firewall o proxy bloquee la petición. En WooCommerce es común un 401 tras migrar de plugin o ambiente; si usas el antiguo, lee qué hacer con el plugin obsoleto de Webpay en WooCommerce.
Según el Baymard Institute (2025, promedio sobre 50 estudios), de quienes abandonan el checkout, el 17 % lo hace por errores o caídas del sitio y el 10 % por una tarjeta rechazada. Cada código aquí es un cliente que quiso pagar y no pudo.
Muchos se resuelven sin contratar a nadie: un -4 o un -7 vive en el banco del cliente. Contrata ingeniería si el patrón se repite sin explicación, si ves errores HTTP o si pedidos y abonos no calzan. Ese diagnóstico es parte de pagos en línea.
Faltan en la documentación pública de Transbank para comercios. Lo verificamos el 24-08-2026 en Transbank Developers y el Centro de Ayuda. Los ve el comprador al pagar, y responde su banco emisor. Vale igual para el 286, 288, 293 y 329. Como comercio, tu código es el response_code.
Solo con response_code 0 y status AUTHORIZED, según Transbank Developers. Sin verificar ambos, puedes despachar sin cobro.
Los rechazos negativos (-1, -4, -5, -7, -8) suelen venir del cliente o su banco. Los HTTP 400 a 500, de tu integración. Los -97, -98 y -99, de los límites de tu comercio.
Se activan con el soporte de Transbank. Rigen desde el 1 de marzo de 2021. Sin ellos solo recibes el diagnóstico grueso del nivel 1.
Si un código se repite en tu checkout y no sabes por qué, mándanoslo. En 30 minutos te decimos si el arreglo es tuyo, del banco o de la integración, y si necesitas contratar a alguien.
Agendar 30 minutos