Ir al contenido

Anular un anticipo

PATCH
/stores/{storeKey}/advances/{advance}/cancel

Anula el anticipo indicado. Un anticipo que ya fue utilizado en una orden no puede anularse; en ese caso se anula primero el pago asociado a la orden.

El anticipo debe pertenecer a la tienda indicada en storeKey. Si no existe o pertenece a otra tienda, la respuesta es 404, la misma en ambos casos. Envíe la cabecera Accept: application/json para recibir el error en JSON.

storeKey
required
string format: uuid

Identificador (UUID) de la tienda.

Example
2b7d9e40-c1a3-4f58-8e06-5a4d3c7b9f12
advance
required
string format: uuid

Identificador (UUID) del anticipo.

Example
8d2c6f04-b1a7-4e93-a5d8-0c3e7f9b2a16
object
reason

Motivo de la anulación.

string
>= 5 characters <= 191 characters
Examples
{
"reason": "Solicitud del cliente"
}

Confirma que el anticipo quedó anulado. El cuerpo solo trae un mensaje de confirmación en data.message; no devuelve el anticipo.

  • Esta operación no anula un anticipo que ya se utilizó en una orden: en ese caso responde 409 y debe anular primero el pago asociado a la orden.
object
data
required

Resultado de la operación, con un mensaje de confirmación.

object
message
required

Mensaje de confirmación.

string
Examples
{
"data": {
"message": "Anticipo anulado correctamente"
}
}

No se pudo anular el anticipo por un error inesperado, distinto de uso previo. Reintente la petición; si persiste, comuníquese con IDBI.

Formato de error con error.message y error.description.

object
error
required

Detalle del error, con su mensaje y el motivo.

object
message
required

Mensaje general del error.

string
description
required

Motivo del error.

string
Examples
{
"error": {
"message": "No se pudo anular el anticipo.",
"description": "Ocurrió un error inesperado, intenta nuevamente"
}
}

Credenciales ausentes, inválidas, deshabilitadas o vencidas. El campo error.description indica el motivo.

Formato de error de la autenticación y del control de acceso del token.

object
error
required

Detalle del error, con su código, su mensaje y su descripción.

object
code
required

Siempre es 0.

integer
message
required

Mensaje del error.

string
description
required

Detalle del error, cuando existe.

string | null
Examples

Falta una de las cabeceras

{
"error": {
"code": 0,
"message": "No autorizado",
"description": "El token es obligatorio"
}
}

La tienda indicada en la ruta no pertenece al token. La respuesta es la misma para una tienda ajena y para una tienda inexistente.

Formato de error de la autenticación y del control de acceso del token.

object
error
required

Detalle del error, con su código, su mensaje y su descripción.

object
code
required

Siempre es 0.

integer
message
required

Mensaje del error.

string
description
required

Detalle del error, cuando existe.

string | null
Examples
{
"error": {
"code": 0,
"message": "Acceso denegado",
"description": "El token no tiene acceso a la tienda solicitada"
}
}

El anticipo no existe o no pertenece a la tienda indicada en storeKey. Con la cabecera Accept: application/json, el cuerpo es un objeto JSON con un mensaje de error; no dependa de su texto.

Formato de error con un único campo message.

object
message
required

Descripción del error.

string

El anticipo ya fue utilizado y no puede anularse.

Formato de error con error.message y error.description.

object
error
required

Detalle del error, con su mensaje y el motivo.

object
message
required

Mensaje general del error.

string
description
required

Motivo del error.

string
Examples
{
"error": {
"message": "No se pudo anular el anticipo.",
"description": "El anticipo ya ha sido utilizado. Anule primero el pago asociado a la orden."
}
}

Los datos enviados no cumplen las reglas de validación.

Formato de error cuando los datos enviados no superan la validación.

object
message
required

Mensaje general de validación.

string
errors
required

Mensajes de error agrupados por nombre de campo.

object
key
additional properties
Array<string>
Examples
{
"message": "Uno o más de los datos que has ingresado no cumplen con los requisitos mínimos.",
"errors": {
"amount": [
"El campo amount es obligatorio."
]
}
}