✓ alta de proveedor y producto ✓ cliente se crea, edita y reactiva ✓ ingreso aumenta stock ✓ ingreso genera deuda por todo el costo recibido ✓ venta permite asociar un cliente ✓ venta usa costo FIFO histórico ✓ venta calcula ganancia real ✓ venta descuenta stock ✓ devolución de cliente repone stock ✓ devolución de cliente no cambia la deuda nacida en el ingreso ✓ pago parcial reduce saldo sin marcarlo pagado ✓ liquidación consolida ingresos menos devoluciones y pagos ✓ liquidación conserva estado parcial ✓ devolución al proveedor reduce stock ✓ devolución al proveedor reduce deuda al costo del lote ✓ anulación de devolución repone stock ✓ anulación de devolución restaura deuda ✓ venta sigue admitiendo cliente opcional ✓ segunda venta descuenta stock ✓ anulación de venta repone stock ✓ venta anulada se conserva por estado ✓ retiro interno descuenta stock ✓ retiro no duplica la deuda nacida al recibir mercadería ✓ retiro no altera la ganancia comercial ✓ anulación de retiro repone stock ✓ anulación de retiro no altera la deuda de ingreso ✓ venta a cero genera la pérdida histórica que se va a corregir ✓ conversión crea un retiro nuevo ✓ conversión anula la venta a cero sin reponer stock ✓ conversión conserva la salida física de stock ✓ conversión no altera la obligación nacida en el ingreso ✓ conversión elimina la pérdida comercial ficticia ✓ conversión es idempotente ✓ no duplica el retiro histórico ✓ recalcular liquidación conserva deuda por ingresos netos y pagos ✓ liquidación muestra sólo ganancia comercial ✓ liquidación separa el costo de retiros ✓ ingreso erróneo crea stock trazable ✓ corrección anula ingreso sin borrarlo ✓ anulación de ingreso elimina su stock disponible ✓ anulación de ingreso revierte exactamente su deuda ✓ auditoría registra operaciones Prueba integral completada correctamente.