Muy buenas: Teneis razón, aquel producto tenía precio 0.
Ahora he encontrado un problema que es que cuando un cliente tiene tarifa propia para un producto y el otro cliente no, no cambia los precios. La solución a ese problema sería cambiar el if de esto: if self.start.price_list and (sale_pricelist and \ (sale_pricelist.id != self.start.price_list.id)): A esto: if self.start.price_list and (sale_pricelist and \ (sale_pricelist.id != self.start.price_list.id)) or (self.start.price_list == None) or (sale_pricelist == None): Así, si que cambia los precio. Saludos.