[2025-10-05 15:49:06] === DEBUG DATOS RECIBIDOS === [2025-10-05 15:49:06] Input raw: {"venta_id":"641","productos":[{"producto_id":742,"cantidad":1,"subtotal":2380,"nombre":"TEST MANUAL DEVOLUCION","codigo":""}],"negocio_rut":"17.669.023-2"} [2025-10-05 15:49:06] Data decoded: {"venta_id":"641","productos":[{"producto_id":742,"cantidad":1,"subtotal":2380,"nombre":"TEST MANUAL DEVOLUCION","codigo":""}],"negocio_rut":"17.669.023-2"} [2025-10-05 15:49:06] Venta ID: 641 [2025-10-05 15:49:06] Negocio RUT: 17.669.023-2 [2025-10-05 15:49:06] Productos count: 1 [2025-10-05 15:49:06] === INICIO DEVOLUCIÓN CORREGIDA === [2025-10-05 15:49:06] Venta ID: 641, Negocio: 17.669.023-2 [2025-10-05 15:49:06] Procesando devolución: Producto 742, Cantidad: 1 [2025-10-05 15:49:06] Tipo de producto - tipo_codigo: manual, modo_venta: UNIDAD, es_especial: 0, controla_stock: SI [2025-10-05 15:49:06] Detalle original - Lote ID: , Código Barras ID: [2025-10-05 15:49:06] PRODUCTO MANUAL: Restaurando por código específico + lote [2025-10-05 15:49:06] === RESTAURANDO STOCK MANUAL === [2025-10-05 15:49:06] Producto ID: 742, Cantidad: 1, Lote ID: , Código Barras ID: [2025-10-05 15:49:06] INFO: Manteniendo estructura original de códigos de barras [2025-10-05 15:49:06] === STOCK MANUAL RESTAURADO EXITOSAMENTE === [2025-10-05 15:49:06] DEVOLUCIÓN TOTAL: Producto 742 (código: ) eliminado completamente de la venta 641 [2025-10-05 15:49:06] FALLBACK: Usando datos del frontend [2025-10-05 15:49:06] DEVOLUCIÓN TOTAL: No quedan productos, venta 641 marcada como devuelta_total [2025-10-05 15:49:06] === DEVOLUCIÓN COMPLETADA EXITOSAMENTE === [2025-10-05 15:56:07] === DEBUG DATOS RECIBIDOS === [2025-10-05 15:56:07] Input raw: {"venta_id":"642","productos":[{"producto_id":742,"cantidad":1,"subtotal":2380,"nombre":"TEST MANUAL DEVOLUCION","codigo":""}],"negocio_rut":"17.669.023-2"} [2025-10-05 15:56:07] Data decoded: {"venta_id":"642","productos":[{"producto_id":742,"cantidad":1,"subtotal":2380,"nombre":"TEST MANUAL DEVOLUCION","codigo":""}],"negocio_rut":"17.669.023-2"} [2025-10-05 15:56:07] Venta ID: 642 [2025-10-05 15:56:07] Negocio RUT: 17.669.023-2 [2025-10-05 15:56:07] Productos count: 1 [2025-10-05 15:56:07] === INICIO DEVOLUCIÓN CORREGIDA === [2025-10-05 15:56:07] Venta ID: 642, Negocio: 17.669.023-2 [2025-10-05 15:56:07] Procesando devolución: Producto 742, Cantidad: 1 [2025-10-05 15:56:07] Tipo de producto - tipo_codigo: manual, modo_venta: UNIDAD, es_especial: 0, controla_stock: SI [2025-10-05 15:56:07] Detalle original - Lote ID: , Código Barras ID: [2025-10-05 15:56:07] PRODUCTO MANUAL: Restaurando por código específico + lote [2025-10-05 15:56:07] === RESTAURANDO STOCK MANUAL === [2025-10-05 15:56:07] Producto ID: 742, Cantidad: 1, Lote ID: , Código Barras ID: [2025-10-05 15:56:07] INFO: Manteniendo estructura original de códigos de barras [2025-10-05 15:56:07] === STOCK MANUAL RESTAURADO EXITOSAMENTE === [2025-10-05 15:56:07] DEVOLUCIÓN TOTAL: Producto 742 (código: ) eliminado completamente de la venta 642 [2025-10-05 15:56:07] FALLBACK: Usando datos del frontend [2025-10-05 15:56:07] DEVOLUCIÓN TOTAL: No quedan productos, venta 642 marcada como devuelta_total [2025-10-05 15:56:07] === DEVOLUCIÓN COMPLETADA EXITOSAMENTE === [2025-10-05 15:57:17] === DEBUG DATOS RECIBIDOS === [2025-10-05 15:57:17] Input raw: {"venta_id":"643","productos":[{"producto_id":742,"cantidad":1,"subtotal":2380,"nombre":"TEST MANUAL DEVOLUCION","codigo":""}],"negocio_rut":"17.669.023-2"} [2025-10-05 15:57:17] Data decoded: {"venta_id":"643","productos":[{"producto_id":742,"cantidad":1,"subtotal":2380,"nombre":"TEST MANUAL DEVOLUCION","codigo":""}],"negocio_rut":"17.669.023-2"} [2025-10-05 15:57:17] Venta ID: 643 [2025-10-05 15:57:17] Negocio RUT: 17.669.023-2 [2025-10-05 15:57:17] Productos count: 1 [2025-10-05 15:57:17] === INICIO DEVOLUCIÓN CORREGIDA === [2025-10-05 15:57:17] Venta ID: 643, Negocio: 17.669.023-2 [2025-10-05 15:57:17] Procesando devolución: Producto 742, Cantidad: 1 [2025-10-05 15:57:17] Tipo de producto - tipo_codigo: manual, modo_venta: UNIDAD, es_especial: 0, controla_stock: SI [2025-10-05 15:57:17] Detalle original - Lote ID: , Código Barras ID: [2025-10-05 15:57:17] PRODUCTO MANUAL: Restaurando por código específico + lote [2025-10-05 15:57:17] === RESTAURANDO STOCK MANUAL === [2025-10-05 15:57:17] Producto ID: 742, Cantidad: 1, Lote ID: , Código Barras ID: [2025-10-05 15:57:17] INFO: Manteniendo estructura original de códigos de barras [2025-10-05 15:57:17] === STOCK MANUAL RESTAURADO EXITOSAMENTE === [2025-10-05 15:57:17] DEVOLUCIÓN TOTAL: Producto 742 (código: ) eliminado completamente de la venta 643 [2025-10-05 15:57:17] FALLBACK: Usando datos del frontend [2025-10-05 15:57:17] DEVOLUCIÓN TOTAL: No quedan productos, venta 643 marcada como devuelta_total [2025-10-05 15:57:17] === DEVOLUCIÓN COMPLETADA EXITOSAMENTE === [2025-10-05 16:19:47] === DEBUG DATOS RECIBIDOS === [2025-10-05 16:19:47] Input raw: {"venta_id":"644","productos":[{"producto_id":742,"cantidad":1,"subtotal":2380,"nombre":"TEST MANUAL DEVOLUCION","codigo":""}],"negocio_rut":"17.669.023-2"} [2025-10-05 16:19:47] Data decoded: {"venta_id":"644","productos":[{"producto_id":742,"cantidad":1,"subtotal":2380,"nombre":"TEST MANUAL DEVOLUCION","codigo":""}],"negocio_rut":"17.669.023-2"} [2025-10-05 16:19:47] Venta ID: 644 [2025-10-05 16:19:47] Negocio RUT: 17.669.023-2 [2025-10-05 16:19:47] Productos count: 1 [2025-10-05 16:19:47] === INICIO DEVOLUCIÓN CORREGIDA === [2025-10-05 16:19:47] Venta ID: 644, Negocio: 17.669.023-2 [2025-10-05 16:19:47] Procesando devolución: Producto 742, Cantidad: 1 [2025-10-05 16:19:47] Tipo de producto - tipo_codigo: manual, modo_venta: UNIDAD, es_especial: 0, controla_stock: SI [2025-10-05 16:19:47] Detalle original - Lote ID: , Código Barras ID: [2025-10-05 16:19:47] PRODUCTO MANUAL: Restaurando por código específico + lote [2025-10-05 16:19:47] === RESTAURANDO STOCK MANUAL === [2025-10-05 16:19:47] Producto ID: 742, Cantidad: 1, Lote ID: , Código Barras ID: [2025-10-05 16:19:47] INFO: Manteniendo estructura original de códigos de barras [2025-10-05 16:19:47] === STOCK MANUAL RESTAURADO EXITOSAMENTE === [2025-10-05 16:19:47] DEVOLUCIÓN TOTAL: Producto 742 (código: ) eliminado completamente de la venta 644 [2025-10-05 16:19:47] FALLBACK: Usando datos del frontend [2025-10-05 16:19:47] DEVOLUCIÓN TOTAL: No quedan productos, venta 644 marcada como devuelta_total [2025-10-05 16:19:47] === DEVOLUCIÓN COMPLETADA EXITOSAMENTE === [2025-10-05 16:45:29] === DEBUG DATOS RECIBIDOS === [2025-10-05 16:45:29] Input raw: {"venta_id":"645","productos":[{"producto_id":742,"cantidad":2,"subtotal":4760,"nombre":"TEST MANUAL DEVOLUCION","codigo":""}],"negocio_rut":"17.669.023-2"} [2025-10-05 16:45:29] Data decoded: {"venta_id":"645","productos":[{"producto_id":742,"cantidad":2,"subtotal":4760,"nombre":"TEST MANUAL DEVOLUCION","codigo":""}],"negocio_rut":"17.669.023-2"} [2025-10-05 16:45:29] Venta ID: 645 [2025-10-05 16:45:29] Negocio RUT: 17.669.023-2 [2025-10-05 16:45:29] Productos count: 1 [2025-10-05 16:45:29] === INICIO DEVOLUCIÓN CORREGIDA === [2025-10-05 16:45:29] Venta ID: 645, Negocio: 17.669.023-2 [2025-10-05 16:45:29] Procesando devolución: Producto 742, Cantidad: 2 [2025-10-05 16:45:29] Tipo de producto - tipo_codigo: manual, modo_venta: UNIDAD, es_especial: 0, controla_stock: SI [2025-10-05 16:45:29] Detalle original - Lote ID: , Código Barras ID: [2025-10-05 16:45:29] PRODUCTO MANUAL: Restaurando por código específico + lote [2025-10-05 16:45:29] === RESTAURANDO STOCK MANUAL === [2025-10-05 16:45:29] Producto ID: 742, Cantidad: 2, Lote ID: , Código Barras ID: [2025-10-05 16:45:29] INFO: Manteniendo estructura original de códigos de barras [2025-10-05 16:45:29] === STOCK MANUAL RESTAURADO EXITOSAMENTE === [2025-10-05 16:45:29] DEVOLUCIÓN TOTAL: Producto 742 (código: ) eliminado completamente de la venta 645 [2025-10-05 16:45:29] FALLBACK: Usando datos del frontend [2025-10-05 16:45:29] DEVOLUCIÓN TOTAL: No quedan productos, venta 645 marcada como devuelta_total [2025-10-05 16:45:29] === DEVOLUCIÓN COMPLETADA EXITOSAMENTE === [2025-10-05 16:49:47] === DEBUG DATOS RECIBIDOS === [2025-10-05 16:49:47] Input raw: {"venta_id":"649","productos":[{"producto_id":744,"cantidad":3,"subtotal":8211,"nombre":"TEST CODIGO MANUAL","codigo":""}],"negocio_rut":"17.669.023-2"} [2025-10-05 16:49:47] Data decoded: {"venta_id":"649","productos":[{"producto_id":744,"cantidad":3,"subtotal":8211,"nombre":"TEST CODIGO MANUAL","codigo":""}],"negocio_rut":"17.669.023-2"} [2025-10-05 16:49:47] Venta ID: 649 [2025-10-05 16:49:47] Negocio RUT: 17.669.023-2 [2025-10-05 16:49:47] Productos count: 1 [2025-10-05 16:49:47] === DEBUG DATOS RECIBIDOS === [2025-10-05 16:49:47] Input raw: {"venta_id":"649","productos":[{"producto_id":744,"cantidad":3,"subtotal":8211,"nombre":"TEST CODIGO MANUAL","codigo":""}],"negocio_rut":"17.669.023-2"} [2025-10-05 16:49:47] Data decoded: {"venta_id":"649","productos":[{"producto_id":744,"cantidad":3,"subtotal":8211,"nombre":"TEST CODIGO MANUAL","codigo":""}],"negocio_rut":"17.669.023-2"} [2025-10-05 16:49:47] Venta ID: 649 [2025-10-05 16:49:47] Negocio RUT: 17.669.023-2 [2025-10-05 16:49:47] Productos count: 1 [2025-10-05 16:49:47] === DEBUG DATOS RECIBIDOS === [2025-10-05 16:49:47] Input raw: {"venta_id":"649","productos":[{"producto_id":744,"cantidad":3,"subtotal":8211,"nombre":"TEST CODIGO MANUAL","codigo":""}],"negocio_rut":"17.669.023-2"} [2025-10-05 16:49:47] Data decoded: {"venta_id":"649","productos":[{"producto_id":744,"cantidad":3,"subtotal":8211,"nombre":"TEST CODIGO MANUAL","codigo":""}],"negocio_rut":"17.669.023-2"} [2025-10-05 16:49:47] Venta ID: 649 [2025-10-05 16:49:47] Negocio RUT: 17.669.023-2 [2025-10-05 16:49:47] Productos count: 1 [2025-10-05 16:49:47] === INICIO DEVOLUCIÓN CORREGIDA === [2025-10-05 16:49:47] Venta ID: 649, Negocio: 17.669.023-2 [2025-10-05 16:49:47] === INICIO DEVOLUCIÓN CORREGIDA === [2025-10-05 16:49:47] Venta ID: 649, Negocio: 17.669.023-2 [2025-10-05 16:49:47] === INICIO DEVOLUCIÓN CORREGIDA === [2025-10-05 16:49:47] Venta ID: 649, Negocio: 17.669.023-2 [2025-10-05 16:49:47] Procesando devolución: Producto 744, Cantidad: 3 [2025-10-05 16:49:47] Tipo de producto - tipo_codigo: manual, modo_venta: UNIDAD, es_especial: 0, controla_stock: SI [2025-10-05 16:49:47] Procesando devolución: Producto 744, Cantidad: 3 [2025-10-05 16:49:47] Detalle original - Lote ID: , Código Barras ID: [2025-10-05 16:49:47] PRODUCTO MANUAL: Restaurando por código específico + lote [2025-10-05 16:49:47] Tipo de producto - tipo_codigo: manual, modo_venta: UNIDAD, es_especial: 0, controla_stock: SI [2025-10-05 16:49:47] === RESTAURANDO STOCK MANUAL === [2025-10-05 16:49:47] Producto ID: 744, Cantidad: 3, Lote ID: , Código Barras ID: [2025-10-05 16:49:47] Detalle original - Lote ID: , Código Barras ID: [2025-10-05 16:49:47] PRODUCTO MANUAL: Restaurando por código específico + lote [2025-10-05 16:49:47] === RESTAURANDO STOCK MANUAL === [2025-10-05 16:49:47] Producto ID: 744, Cantidad: 3, Lote ID: , Código Barras ID: [2025-10-05 16:49:47] Procesando devolución: Producto 744, Cantidad: 3 [2025-10-05 16:49:47] INFO: Manteniendo estructura original de códigos de barras [2025-10-05 16:49:47] Tipo de producto - tipo_codigo: manual, modo_venta: UNIDAD, es_especial: 0, controla_stock: SI [2025-10-05 16:49:47] Detalle original - Lote ID: , Código Barras ID: [2025-10-05 16:49:47] PRODUCTO MANUAL: Restaurando por código específico + lote [2025-10-05 16:49:47] === RESTAURANDO STOCK MANUAL === [2025-10-05 16:49:47] Producto ID: 744, Cantidad: 3, Lote ID: , Código Barras ID: [2025-10-05 16:49:47] === STOCK MANUAL RESTAURADO EXITOSAMENTE === [2025-10-05 16:49:47] DEVOLUCIÓN TOTAL: Producto 744 (código: ) eliminado completamente de la venta 649 [2025-10-05 16:49:47] FALLBACK: Usando datos del frontend [2025-10-05 16:49:47] DEVOLUCIÓN TOTAL: No quedan productos, venta 649 marcada como devuelta_total [2025-10-05 16:49:47] === DEVOLUCIÓN COMPLETADA EXITOSAMENTE === [2025-10-05 16:49:47] INFO: Manteniendo estructura original de códigos de barras [2025-10-05 16:49:47] === STOCK MANUAL RESTAURADO EXITOSAMENTE === [2025-10-05 16:49:47] DEVOLUCIÓN TOTAL: Producto 744 (código: ) eliminado completamente de la venta 649 [2025-10-05 16:49:47] CÁLCULO CORRECTO: Subtotal: 8211.00, IVA: 1560.09, Neto: 6650.91, Proporción: 1 [2025-10-05 16:49:47] VENTA ACTUALIZADA: Recalculados totales - Neto: -6650.91, IVA: -1560.09, Total: -8211 [2025-10-05 16:49:47] INFO: Manteniendo estructura original de códigos de barras [2025-10-05 16:49:47] === DEVOLUCIÓN COMPLETADA EXITOSAMENTE === [2025-10-05 16:49:47] === STOCK MANUAL RESTAURADO EXITOSAMENTE === [2025-10-05 16:49:47] DEVOLUCIÓN TOTAL: Producto 744 (código: ) eliminado completamente de la venta 649 [2025-10-05 16:49:47] CÁLCULO CORRECTO: Subtotal: 8211.00, IVA: 1560.09, Neto: 6650.91, Proporción: 1 [2025-10-05 16:49:47] VENTA ACTUALIZADA: Recalculados totales - Neto: -6650.91, IVA: -1560.09, Total: -8211 [2025-10-05 16:49:47] === DEVOLUCIÓN COMPLETADA EXITOSAMENTE === [2025-10-05 16:50:21] === DEBUG DATOS RECIBIDOS === [2025-10-05 16:50:21] Input raw: {"venta_id":"648","productos":[{"producto_id":744,"cantidad":2,"subtotal":5474,"nombre":"TEST CODIGO MANUAL","codigo":""}],"negocio_rut":"17.669.023-2"} [2025-10-05 16:50:21] Data decoded: {"venta_id":"648","productos":[{"producto_id":744,"cantidad":2,"subtotal":5474,"nombre":"TEST CODIGO MANUAL","codigo":""}],"negocio_rut":"17.669.023-2"} [2025-10-05 16:50:21] Venta ID: 648 [2025-10-05 16:50:21] Negocio RUT: 17.669.023-2 [2025-10-05 16:50:21] Productos count: 1 [2025-10-05 16:50:21] === INICIO DEVOLUCIÓN CORREGIDA === [2025-10-05 16:50:21] Venta ID: 648, Negocio: 17.669.023-2 [2025-10-05 16:50:21] Procesando devolución: Producto 744, Cantidad: 2 [2025-10-05 16:50:21] Tipo de producto - tipo_codigo: manual, modo_venta: UNIDAD, es_especial: 0, controla_stock: SI [2025-10-05 16:50:21] Detalle original - Lote ID: , Código Barras ID: [2025-10-05 16:50:21] PRODUCTO MANUAL: Restaurando por código específico + lote [2025-10-05 16:50:21] === RESTAURANDO STOCK MANUAL === [2025-10-05 16:50:21] Producto ID: 744, Cantidad: 2, Lote ID: , Código Barras ID: [2025-10-05 16:50:21] INFO: Manteniendo estructura original de códigos de barras [2025-10-05 16:50:21] === STOCK MANUAL RESTAURADO EXITOSAMENTE === [2025-10-05 16:50:21] DEVOLUCIÓN TOTAL: Producto 744 (código: ) eliminado completamente de la venta 648 [2025-10-05 16:50:21] FALLBACK: Usando datos del frontend [2025-10-05 16:50:21] DEVOLUCIÓN TOTAL: No quedan productos, venta 648 marcada como devuelta_total [2025-10-05 16:50:21] === DEVOLUCIÓN COMPLETADA EXITOSAMENTE === [2025-10-05 17:13:29] === DEBUG DATOS RECIBIDOS === [2025-10-05 17:13:29] Input raw: {"venta_id":"655","productos":[{"producto_id":744,"cantidad":5,"subtotal":13685,"nombre":"TEST CODIGO MANUAL","codigo":""}],"negocio_rut":"17.669.023-2"} [2025-10-05 17:13:29] Data decoded: {"venta_id":"655","productos":[{"producto_id":744,"cantidad":5,"subtotal":13685,"nombre":"TEST CODIGO MANUAL","codigo":""}],"negocio_rut":"17.669.023-2"} [2025-10-05 17:13:29] Venta ID: 655 [2025-10-05 17:13:29] Negocio RUT: 17.669.023-2 [2025-10-05 17:13:29] Productos count: 1 [2025-10-05 17:13:29] === INICIO DEVOLUCIÓN CORREGIDA === [2025-10-05 17:13:29] Venta ID: 655, Negocio: 17.669.023-2 [2025-10-05 17:13:29] Procesando devolución: Producto 744, Cantidad: 5 [2025-10-05 17:13:29] Tipo de producto - tipo_codigo: manual, modo_venta: UNIDAD, es_especial: 0, controla_stock: SI [2025-10-05 17:13:29] Detalle original - Lote ID: , Código Barras ID: [2025-10-05 17:13:29] PRODUCTO MANUAL: Restaurando por código específico + lote [2025-10-05 17:13:29] === RESTAURANDO STOCK MANUAL === [2025-10-05 17:13:29] Producto ID: 744, Cantidad: 5, Lote ID: , Código Barras ID: [2025-10-05 17:13:29] INFO: Manteniendo estructura original de códigos de barras [2025-10-05 17:13:29] === STOCK MANUAL RESTAURADO EXITOSAMENTE === [2025-10-05 17:13:29] DEVOLUCIÓN TOTAL: Producto 744 (código: ) eliminado completamente de la venta 655 [2025-10-05 17:13:29] FALLBACK: Usando datos del frontend [2025-10-05 17:13:29] DEVOLUCIÓN TOTAL: No quedan productos, venta 655 marcada como devuelta_total [2025-10-05 17:13:29] === DEVOLUCIÓN COMPLETADA EXITOSAMENTE === [2025-10-05 17:19:42] === DEBUG DATOS RECIBIDOS === [2025-10-05 17:19:42] Input raw: {"venta_id":"656","productos":[{"producto_id":744,"cantidad":5,"subtotal":13685,"nombre":"TEST CODIGO MANUAL","codigo":""}],"negocio_rut":"17.669.023-2"} [2025-10-05 17:19:42] Data decoded: {"venta_id":"656","productos":[{"producto_id":744,"cantidad":5,"subtotal":13685,"nombre":"TEST CODIGO MANUAL","codigo":""}],"negocio_rut":"17.669.023-2"} [2025-10-05 17:19:42] Venta ID: 656 [2025-10-05 17:19:42] Negocio RUT: 17.669.023-2 [2025-10-05 17:19:42] Productos count: 1 [2025-10-05 17:19:42] === INICIO DEVOLUCIÓN CORREGIDA === [2025-10-05 17:19:42] Venta ID: 656, Negocio: 17.669.023-2 [2025-10-05 17:19:42] Procesando devolución: Producto 744, Cantidad: 5 [2025-10-05 17:19:42] Tipo de producto - tipo_codigo: manual, modo_venta: UNIDAD, es_especial: 0, controla_stock: SI [2025-10-05 17:19:42] Detalle original - Lote ID: , Código Barras ID: [2025-10-05 17:19:42] PRODUCTO MANUAL: Restaurando por código específico + lote [2025-10-05 17:19:42] === RESTAURANDO STOCK MANUAL === [2025-10-05 17:19:42] Producto ID: 744, Cantidad: 5, Lote ID: , Código Barras ID: [2025-10-05 17:19:42] INFO: Manteniendo estructura original de códigos de barras [2025-10-05 17:19:42] === STOCK MANUAL RESTAURADO EXITOSAMENTE === [2025-10-05 17:19:42] DEVOLUCIÓN TOTAL: Producto 744 (código: ) eliminado completamente de la venta 656 [2025-10-05 17:19:42] FALLBACK: Usando datos del frontend [2025-10-05 17:19:42] DEVOLUCIÓN TOTAL: No quedan productos, venta 656 marcada como devuelta_total [2025-10-05 17:19:42] === DEVOLUCIÓN COMPLETADA EXITOSAMENTE === [2025-10-05 21:04:18] === DEBUG DATOS RECIBIDOS === [2025-10-05 21:04:18] Input raw: {"venta_id":"657","productos":[{"producto_id":744,"cantidad":5,"subtotal":13685,"nombre":"TEST CODIGO MANUAL","codigo":""}],"negocio_rut":"17.669.023-2"} [2025-10-05 21:04:18] Data decoded: {"venta_id":"657","productos":[{"producto_id":744,"cantidad":5,"subtotal":13685,"nombre":"TEST CODIGO MANUAL","codigo":""}],"negocio_rut":"17.669.023-2"} [2025-10-05 21:04:18] Venta ID: 657 [2025-10-05 21:04:18] Negocio RUT: 17.669.023-2 [2025-10-05 21:04:18] Productos count: 1 [2025-10-05 21:04:18] === INICIO DEVOLUCIÓN CORREGIDA === [2025-10-05 21:04:18] Venta ID: 657, Negocio: 17.669.023-2 [2025-10-05 21:04:18] Procesando devolución: Producto 744, Cantidad: 5 [2025-10-05 21:04:18] Tipo de producto - tipo_codigo: manual, modo_venta: UNIDAD, es_especial: 0, controla_stock: SI [2025-10-05 21:04:18] Detalle original - Lote ID: , Código Barras ID: [2025-10-05 21:04:18] PRODUCTO MANUAL: Restaurando por código específico + lote [2025-10-05 21:04:18] === RESTAURANDO STOCK MANUAL === [2025-10-05 21:04:18] Producto ID: 744, Cantidad: 5, Lote ID: , Código Barras ID: [2025-10-05 21:04:18] INFO: Manteniendo estructura original de códigos de barras [2025-10-05 21:04:18] === STOCK MANUAL RESTAURADO EXITOSAMENTE === [2025-10-05 21:04:18] DEVOLUCIÓN TOTAL: Producto 744 (código: ) eliminado completamente de la venta 657 [2025-10-05 21:04:18] FALLBACK: Usando datos del frontend [2025-10-05 21:04:18] DEVOLUCIÓN TOTAL: No quedan productos, venta 657 marcada como devuelta_total [2025-10-05 21:04:18] === DEVOLUCIÓN COMPLETADA EXITOSAMENTE === [2025-10-05 21:06:47] === DEBUG DATOS RECIBIDOS === [2025-10-05 21:06:47] Input raw: {"venta_id":"658","productos":[{"producto_id":744,"detalle_id":744,"cantidad":3,"subtotal":8211,"nombre":"TEST CODIGO MANUAL","codigo":""}],"negocio_rut":"17.669.023-2"} [2025-10-05 21:06:47] Data decoded: {"venta_id":"658","productos":[{"producto_id":744,"detalle_id":744,"cantidad":3,"subtotal":8211,"nombre":"TEST CODIGO MANUAL","codigo":""}],"negocio_rut":"17.669.023-2"} [2025-10-05 21:06:47] Venta ID: 658 [2025-10-05 21:06:47] Negocio RUT: 17.669.023-2 [2025-10-05 21:06:47] Productos count: 1 [2025-10-05 21:06:47] === INICIO DEVOLUCIÓN CORREGIDA === [2025-10-05 21:06:47] Venta ID: 658, Negocio: 17.669.023-2 [2025-10-05 21:06:47] Procesando devolución: Producto 744, Cantidad: 3 [2025-10-05 21:06:47] Tipo de producto - tipo_codigo: manual, modo_venta: UNIDAD, es_especial: 0, controla_stock: SI [2025-10-05 21:07:50] === DEBUG DATOS RECIBIDOS === [2025-10-05 21:07:50] Input raw: {"venta_id":"658","productos":[{"producto_id":744,"detalle_id":744,"cantidad":3,"subtotal":8211,"nombre":"TEST CODIGO MANUAL","codigo":""}],"negocio_rut":"17.669.023-2"} [2025-10-05 21:07:50] Data decoded: {"venta_id":"658","productos":[{"producto_id":744,"detalle_id":744,"cantidad":3,"subtotal":8211,"nombre":"TEST CODIGO MANUAL","codigo":""}],"negocio_rut":"17.669.023-2"} [2025-10-05 21:07:50] Venta ID: 658 [2025-10-05 21:07:50] Negocio RUT: 17.669.023-2 [2025-10-05 21:07:50] Productos count: 1 [2025-10-05 21:07:50] === INICIO DEVOLUCIÓN CORREGIDA === [2025-10-05 21:07:50] Venta ID: 658, Negocio: 17.669.023-2 [2025-10-05 21:07:50] Procesando devolución: Producto 744, Cantidad: 3 [2025-10-05 21:07:50] Tipo de producto - tipo_codigo: manual, modo_venta: UNIDAD, es_especial: 0, controla_stock: SI [2025-10-05 21:08:08] === DEBUG DATOS RECIBIDOS === [2025-10-05 21:08:08] Input raw: {"venta_id":"658","productos":[{"producto_id":744,"detalle_id":744,"cantidad":3,"subtotal":8211,"nombre":"TEST CODIGO MANUAL","codigo":""}],"negocio_rut":"17.669.023-2"} [2025-10-05 21:08:08] Data decoded: {"venta_id":"658","productos":[{"producto_id":744,"detalle_id":744,"cantidad":3,"subtotal":8211,"nombre":"TEST CODIGO MANUAL","codigo":""}],"negocio_rut":"17.669.023-2"} [2025-10-05 21:08:08] Venta ID: 658 [2025-10-05 21:08:08] Negocio RUT: 17.669.023-2 [2025-10-05 21:08:08] Productos count: 1 [2025-10-05 21:08:08] === INICIO DEVOLUCIÓN CORREGIDA === [2025-10-05 21:08:08] Venta ID: 658, Negocio: 17.669.023-2 [2025-10-05 21:08:08] Procesando devolución: Producto 744, Cantidad: 3 [2025-10-05 21:08:08] Tipo de producto - tipo_codigo: manual, modo_venta: UNIDAD, es_especial: 0, controla_stock: SI [2025-10-05 21:09:50] === DEBUG DATOS RECIBIDOS === [2025-10-05 21:09:50] Input raw: {"venta_id":"658","productos":[{"producto_id":744,"detalle_id":744,"cantidad":3,"subtotal":8211,"nombre":"TEST CODIGO MANUAL","codigo":""}],"negocio_rut":"17.669.023-2"} [2025-10-05 21:09:50] Data decoded: {"venta_id":"658","productos":[{"producto_id":744,"detalle_id":744,"cantidad":3,"subtotal":8211,"nombre":"TEST CODIGO MANUAL","codigo":""}],"negocio_rut":"17.669.023-2"} [2025-10-05 21:09:50] Venta ID: 658 [2025-10-05 21:09:50] Negocio RUT: 17.669.023-2 [2025-10-05 21:09:50] Productos count: 1 [2025-10-05 21:09:50] === INICIO DEVOLUCIÓN CORREGIDA === [2025-10-05 21:09:50] Venta ID: 658, Negocio: 17.669.023-2 [2025-10-05 21:09:50] Procesando devolución: Producto 744, Cantidad: 3 [2025-10-05 21:09:50] Tipo de producto - tipo_codigo: manual, modo_venta: UNIDAD, es_especial: 0, controla_stock: SI [2025-10-05 21:10:14] === DEBUG DATOS RECIBIDOS === [2025-10-05 21:10:14] Input raw: {"venta_id":"658","productos":[{"producto_id":744,"detalle_id":744,"cantidad":3,"subtotal":8211,"nombre":"TEST CODIGO MANUAL","codigo":""}],"negocio_rut":"17.669.023-2"} [2025-10-05 21:10:14] Data decoded: {"venta_id":"658","productos":[{"producto_id":744,"detalle_id":744,"cantidad":3,"subtotal":8211,"nombre":"TEST CODIGO MANUAL","codigo":""}],"negocio_rut":"17.669.023-2"} [2025-10-05 21:10:14] Venta ID: 658 [2025-10-05 21:10:14] Negocio RUT: 17.669.023-2 [2025-10-05 21:10:14] Productos count: 1 [2025-10-05 21:10:14] === INICIO DEVOLUCIÓN CORREGIDA === [2025-10-05 21:10:14] Venta ID: 658, Negocio: 17.669.023-2 [2025-10-05 21:10:14] Procesando devolución: Producto 744, Cantidad: 3 [2025-10-05 21:10:14] Tipo de producto - tipo_codigo: manual, modo_venta: UNIDAD, es_especial: 0, controla_stock: SI [2025-10-05 21:11:33] === DEBUG DATOS RECIBIDOS === [2025-10-05 21:11:33] Input raw: {"venta_id":"659","productos":[{"producto_id":744,"detalle_id":744,"cantidad":4,"subtotal":10948,"nombre":"TEST CODIGO MANUAL","codigo":""}],"negocio_rut":"17.669.023-2"} [2025-10-05 21:11:33] Data decoded: {"venta_id":"659","productos":[{"producto_id":744,"detalle_id":744,"cantidad":4,"subtotal":10948,"nombre":"TEST CODIGO MANUAL","codigo":""}],"negocio_rut":"17.669.023-2"} [2025-10-05 21:11:33] Venta ID: 659 [2025-10-05 21:11:33] Negocio RUT: 17.669.023-2 [2025-10-05 21:11:33] Productos count: 1 [2025-10-05 21:11:33] === INICIO DEVOLUCIÓN CORREGIDA === [2025-10-05 21:11:33] Venta ID: 659, Negocio: 17.669.023-2 [2025-10-05 21:11:33] Procesando devolución: Producto 744, Cantidad: 4 [2025-10-05 21:11:33] Tipo de producto - tipo_codigo: manual, modo_venta: UNIDAD, es_especial: 0, controla_stock: SI [2025-10-05 21:15:15] === DEBUG DATOS RECIBIDOS === [2025-10-05 21:15:15] Input raw: {"venta_id":"659","productos":[{"producto_id":744,"detalle_id":744,"cantidad":4,"subtotal":10948,"nombre":"TEST CODIGO MANUAL","codigo":""}],"negocio_rut":"17.669.023-2"} [2025-10-05 21:15:15] Data decoded: {"venta_id":"659","productos":[{"producto_id":744,"detalle_id":744,"cantidad":4,"subtotal":10948,"nombre":"TEST CODIGO MANUAL","codigo":""}],"negocio_rut":"17.669.023-2"} [2025-10-05 21:15:15] Venta ID: 659 [2025-10-05 21:15:15] Negocio RUT: 17.669.023-2 [2025-10-05 21:15:15] Productos count: 1 [2025-10-05 21:15:15] === INICIO DEVOLUCIÓN CORREGIDA === [2025-10-05 21:15:15] Venta ID: 659, Negocio: 17.669.023-2 [2025-10-05 21:15:15] Procesando devolución: Producto 744, Cantidad: 4 [2025-10-05 21:15:15] Tipo de producto - tipo_codigo: manual, modo_venta: UNIDAD, es_especial: 0, controla_stock: SI [2025-10-05 21:15:15] Detalle original - Lote ID: , Código Barras ID: [2025-10-05 21:15:15] PRODUCTO MANUAL: Restaurando por código específico + lote [2025-10-05 21:15:15] === RESTAURANDO STOCK MANUAL === [2025-10-05 21:15:15] Producto ID: 744, Cantidad: 4, Lote ID: , Código Barras ID: [2025-10-05 21:15:15] INFO: Manteniendo estructura original de códigos de barras [2025-10-05 21:15:15] === STOCK MANUAL RESTAURADO EXITOSAMENTE === [2025-10-05 21:15:15] DEVOLUCIÓN TOTAL: Producto 744 (detalle_id: 744, código: ) eliminado completamente de la venta 659 [2025-10-05 21:15:15] FALLBACK: Usando datos del frontend [2025-10-05 21:15:15] VENTA ACTUALIZADA: Recalculados totales - Neto: -0, IVA: -0, Total: -10948 [2025-10-05 21:15:15] === DEVOLUCIÓN COMPLETADA EXITOSAMENTE ===