Errores en el API
Esta guía es únicamente para los errores que el API de Wompi responde a las peticiones hechas. Si estas buscando solucionar otro tipo de error y no encuentras la solución en la documentación, escríbenos a ayuda@wompi.co
El API de Wompi maneja los errores de manera clara y consistente en todos los escenarios que se lleguen a presentar. Los errores fueron diseñados para retroalimentar al desarrollador de manera rápida sobre los errores que se estén cometiendo. A su vez, se manejan estructuras sencillas y que con pocos casos se logran cubrir todos los escenarios de manera que sea intuitivo a la hora de leerlos.
Error con estado 401
Un error con estado 401
y tipo "INVALID_ACCESS_TOKEN"
se da cuando hay un error con la autenticación de la llave pública/privada. El campo "reason"
nos da un mayor detalle de la razón del error.
En el siguiente ejemplo vemos un error que se origina al proporcionar una llave del entorno de Sandbox al entorno de Producción. En "reason"
se especifica la razón del error.
// Status 401 Unauthorized
{
"error": {
"type":"INVALID_ACCESS_TOKEN",
"reason":"La llave proporcionada no corresponde a este ambiente."
}
}
Error con estado 404
Un error con estado 404
y tipo "NOT_FOUND"
se origina al hacer una petición para solicitar información sobre una entidad específica y esta no existe.
Por ejemplo, al hacer un GET
al endpoint /v1/transactions/{transaction_id}
con un ID de la transacción erróneo obtenemos la siguiente respuesta:
// Status 404 Not Found
{
"error": {
"type":"NOT_FOUND_ERROR",
"reason":"La entidad solicitada no existe"
}
}
Error con estado 422
Un error con estado 422 y
tipo "INPUT_VALIDATION_ERROR"
es atribuible a uno o más campos de la entrada recibida. Los campos a los que se le atribuyen el error y su correspondiente explicación se especifican en la propiedad "messages"
del JSON
de respuesta.
A continuación, vemos un ejemplo de un error que se da al usar una referencia previamente utilizada a la hora de crear una transferencia. Vemos que en "messages"
se encuentra un hash especificando en "reference"
un array con los errores que se encuentran en dicho campo.
// Status 422 Unprocessable Entity
{
"error": {
"type": "INPUT_VALIDATION_ERROR",
"messages": {
"reference": [
"La referencia ya ha sido usada"
]
}
}
}