Antylogic
Probar demoAcceso app

399 guías operativas

Secciones de Docs
DocsTPV y cobros
Dispositivo

Cómo aplicar un descuento

Aplica un descuento porcentual o de importe a una o varias líneas pendientes del ticket desde el cobro avanzado. El descuento se guarda en cada línea elegible, recalcula el ticket y no registra ningún pago.

En este artículo

Este flujo sirve para ajustar una cuenta antes de cobrarla, por ejemplo aplicando un 10% a una línea pendiente o repartiendo un importe manual entre varias líneas seleccionadas.

En las capturas del demo ES se usa Grupo Marea Demo y la ubicación Marea Gran Via. En producción, el requisito operativo es el mismo: trabajar sobre un ticket existente, no anulado y con líneas pendientes sin pagos registrados.

Antes de empezar

  • Tener contexto activo de organización y ubicación.
  • Abrir el ticket en la pantalla de cobro avanzado del TPV.
  • Tener permiso `tpv:use` para cargar el cobro y `tpv:discount` o `tickets:manage` para aplicar descuentos.
  • El ticket debe existir en la ubicación actual, no estar anulado y tener al menos una línea pendiente sin pagos registrados.

Instrucciones

  1. 1.

    Abre el cobro avanzado

    Entra en la pantalla de cobro del ticket. Debes ver las líneas, el importe pendiente, los métodos de pago y la acción Aplicar descuento.

  2. 2.

    Selecciona líneas pendientes

    Marca una o varias líneas del ticket. La pantalla solo considera elegibles las líneas seleccionadas con importe pendiente y sin pagos asignados.

  3. 3.

    Abre Aplicar descuento

    Pulsa Aplicar descuento para abrir el modal. Puedes elegir porcentaje o importe, usar presets de 10%, 20% y 50%, o introducir un valor manual.

  4. 4.

    Elige el descuento

    En porcentaje, el sistema calcula el descuento sobre el total actual de cada línea. En importe, reparte el valor entre las líneas elegibles según su total actual y lo limita al máximo disponible.

  5. 5.

    Confirma y revisa el resultado

    Confirma el descuento. La pantalla actualiza cada línea elegible, cierra el modal y muestra Descuento aplicado correctamente. Revisa que la línea muestre el descuento y que el pendiente del ticket haya cambiado.

Validaciones y límites

  • El botón Aplicar descuento permanece deshabilitado si no hay líneas elegibles seleccionadas o si el usuario no tiene permiso de descuento.
  • El campo acepta coma decimal, pero rechaza valores vacíos, no numéricos, negativos o iguales a cero.
  • La selección parcial por unidades no cambia el cálculo: se usa el total actual completo de cada línea elegible.
  • Si el importe manual supera la suma disponible de las líneas, la pantalla lo limita antes de repartirlo.
  • Si una línea ya tenía descuento, el nuevo importe se suma al descuento existente y la etiqueta se reemplaza por Descuento {value}% o Descuento manual.
  • Con varias líneas, la UI actualiza cada línea de forma secuencial; si una actualización posterior falla, las líneas ya actualizadas pueden conservar el descuento.
  • La restricción de líneas sin pagos está implementada en la UI; no se identificó una validación backend equivalente específica para impedir cambios de descuento en ítems con pagos registrados.

Resultado esperado

Cada `ticket_item` elegible conserva sus datos principales y actualiza `discount_amount` y `discount_label`. El backend recalcula `subtotal_price`, `tax_amount` y `total_price` de la línea, recompone subtotal, impuestos y total del ticket, y sincroniza el estado de pago sin crear `ticket_payment` ni `ticket_payment_allocation`.

Artículos relacionados