Para generar saltos de línea en el alert() necesitas incluir "\n" pero dentro de ese alert() no en PHP (generaría un salto de línea en el código) que es lo que se ha estado haciendo.
Código PHP:
$error="";
if(empty($_POST['id'])){
$error.= 'Falta campo Referencia\n'; // las comillas simples no interpretan \n
}
if(empty($_POST['zona'])){
$error.="Falta campo Zona";
}
echo '<script>alert("'.$error.'");</script>';