Find all functions $f:\Bbb{R} \to \Bbb{R}$ such that for all $x,y,z \in \Bbb{R} $ , $f(xf(x)+f(y))=x^2+y$

Find all functions $ f:\Bbb{R} \to \Bbb{R}$ such that for all $ x,y, \in \Bbb{R} $ , $ f(xf(x)+f(y))=x^2+y$

We can easily get a strong condition $ f(f(y))=y $ by setting $ x=0$ . By this equation we know $ f$ is injective and surjective. I got lost from there. By observation I know $ f(x)=x $ and $ f(x)=-x$ are solution. So I was trying to make $ x^2+y=f(xf(x)+f(y))$ close to $ f(x)^2+y$ or $ x^2+f(y)$ . Any hints would be helpful.