Skip to main content
PUT
/
api
/
ventas
/
{id}
Actualizar Venta
curl --request PUT \
  --url https://api.example.com/api/ventas/{id}

Endpoint

PUT /api/ventas/{id}

Estado de Implementación

Este endpoint NO está implementado en el controlador actual (VentasController.php).El sistema de facturación electrónica peruano NO permite modificar comprobantes ya emitidos. Para corregir errores, debe emitir:
  • Nota de Crédito (para anular/devolver)
  • Nota de Débito (para aumentar monto)

Autenticación

Requiere token de autenticación Bearer:
Authorization: Bearer {token}

Permisos Requeridos

  • ventas.edit

Alternativas Disponibles

Para Anular una Venta

Use el endpoint de anulación:
POST /api/ventas/{id}/anular
Ver documentación: Anular Venta

Para Corregir Montos

Emita una Nota de Crédito o Nota de Débito:
POST /api/notas-credito
POST /api/notas-debito

Para Ventas No Enviadas a SUNAT

Si la venta tiene estado_sunat = 0 (no enviada), puede:
  1. Anular la venta con POST /api/ventas/{id}/anular
  2. Crear una nueva venta con los datos correctos

Normativa SUNAT

Según la normativa peruana de comprobantes electrónicos:
  • Los comprobantes emitidos son INMUTABLES
  • No se pueden modificar datos después de la emisión
  • Para correcciones se usan:
    • Nota de Crédito: Anulaciones, devoluciones, descuentos, corrección de datos
    • Nota de Débito: Aumentos de precio, intereses
    • Comunicación de Baja: Anulación en lote (facturas)
    • Resumen Diario de Baja: Anulación en lote (boletas)

Campos Modificables en el Sistema

Los únicos campos que pueden modificarse en una venta existente son:
  • estado (mediante anulación)
  • estado_sunat (mediante envío a SUNAT)
  • codigo_sunat / mensaje_sunat (respuesta de SUNAT)
  • xml_url / cdr_url (archivos generados)
  • hash_cpe (firma digital)
  • stock_real_descontado (mediante endpoint de descuento de stock)
Estos cambios se realizan mediante endpoints específicos, no mediante actualización directa.

Respuesta (501 No Implementado)

{
  "success": false,
  "message": "La actualización de ventas no está disponible. Use anulación o notas de crédito/débito."
}

Código de Referencia

El método update() no existe en app/Http/Controllers/VentasController.php

Endpoints Relacionados

Build docs developers (and LLMs) love