---
title: "Anular un item"
method: DELETE
path: "/service_tabs/{service_tab_id}/items/{id}"
tags: ["serviceTabs"]
---

# Anular un item

`DELETE /service_tabs/{service_tab_id}/items/{id}`

Anula un item de la cuenta. El item deja de contar para el total y queda
registrado como anulado en el feed de actividad.

## Path parameters

- `service_tab_id` string, required
- `id` string, required

## Headers

- `X-SECRET-KEY` string, required

## Response `200`

Item anulado

- ServiceTab
  - `id` string — ID de la cuenta abierta
  - `status` 'open' | 'closing' | 'paid' | 'voided' | 'abandoned' — Estado de la cuenta. `open` acepta items; `closing` ya está cerrada y espera el pago; `paid` se cobró; `voided` se anuló sin cobrar; `abandoned` se dejó vencer.
  - `display_name` string — Nombre con el que el comercio identifica la cuenta (mesa, cliente, cuarto)
  - `phone` string, nullable — Teléfono del cliente al momento de abrir la cuenta
  - `customer_id` string — ID del cliente dueño de la cuenta
  - `currency` string — Moneda de la cuenta
  - `total_in_cents` integer — Total consumido hasta ahora, en centavos
  - `payment_strategy` 'card_on_file' | 'preauthorization' — `card_on_file` cobra al cerrar la tarjeta guardada del cliente. `preauthorization` mantiene un hold del monto estimado y solo se puede activar desde el dashboard, porque requiere una autorización real del procesador.
  - `opening_commitment` 'none' | 'manual_amount' | 'product' | 'products' — Qué se comprometió al abrir la cuenta. Se infiere de la solicitud: `products` si mandaste `items`, `manual_amount` si mandaste `estimated_amount`, `none` si no mandaste ninguno.
  - `items` ServiceTabItem[] — Líneas vigentes de la cuenta (los items anulados no aparecen)
    - `id` string — ID del item, firmado y estable mientras el item exista
    - `price_id` string — ID del precio cobrado en esta línea
    - `name` string — Nombre del producto
    - `quantity` integer — Cantidad
    - `amount_in_cents` integer — Total de la línea (precio × cantidad), en centavos
    - `currency` string — Moneda de la línea
  - `authorized_amount_in_cents` integer — Monto preautorizado con hold sobre la tarjeta, en centavos. `0` cuando no hay preautorización.
  - `authorization_expires_at` string, date-time, nullable — Momento en que expira el hold de la preautorización
  - `checkout_url` string, nullable — Checkout que cierra la cuenta; pagarlo la marca como `paid`. Solo aparece mientras la cuenta se está cobrando (`closing` o `paid`): si un cobro con tarjeta se declina, la cuenta se reabre y el checkout de ese intento no se publica, porque el cliente no podría pagarlo.
  - `opened_at` string, date-time — Momento en que se abrió la cuenta
  - `closed_at` string, date-time, nullable — Momento en que se cerró la cuenta
  - `created_at` string, date-time

## Other responses

- `422` — La cuenta ya está cerrada y sus items no se pueden cambiar

---

[API](https://skmtc.dev/recurrente/apis/referencia-api.md) · [All operations](https://skmtc.dev/recurrente/apis/referencia-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/recurrente/referencia-api/revisions/f494a078482c/schema)
