An ordinary differential equation of order n writes
diff(phi(x), x$n) = F(x, diff(phi(x), x), ..., diff(phi(x), x$(n-1))
Your differential equation (DE) is
(diff(phi(x), x)^2 = -v(phi(x))
and is not an ODE.
Undortunately dsolve/numeric can handle only ODEs, not DEs.
One idea could be to rewrite your DE this way where siga is either -1 or +1 dependeing on the branch you want to select.
diff(phi(x), x = sigma * sqrt(-v(phi(x)))
Nevertheless this will not give you a correct result as this simple example proves:
( initial worksheet where @dharr detected a typo Download DE_not_ODE.mw)
Edited worksheet DE_not_ODE_edited.mw