Your statement that if $f$ is not surjective, then $f=e^g+c$ where $g$ is surjective is wrong: $g$ does not have to be surjective. Example: $f(z)=e^{e^z}$.

There are various results which imply that $f$ is surjective, you have to be more specific, what kind of criterion you want. In terms of growth of coefficients,
if $$\rho:=\limsup_{n\to\infty}\frac{n\log n}{-\log|a_n|}<1$$
then $f$ is surjective. If this is equal to $1$, but
$$\sigma:=\limsup_{n\to\infty}n|a|_n^{1/n}=0,$$
then $f$ is surjective.

Moreover, if $f$ is not surjective then either $\rho$ is a positive integer and
$\sigma$ is non-zero and finite, or $\rho=\infty$.
This gives a pretty strong sufficient condition of surjectivity in terms of coefficients.

Another types of conditions can be obtained when you know something about $f$ beyond the coefficients. For example, if $f$ has infinitely many zeros, but not too many:
$$\limsup_{n\to\infty}\frac{\log n(r)}{\log r}<\rho,$$
where $n(r)$ is the number of zeros in the disk $|z|\leq r$, then $f$ is surjective. This can be very much refined, if needed.

One can give very many other sufficient conditions in terms of coefficients, for example if many of the coefficients are $0$ (gap series), and in other terms. For example, one can combine growth conditions with gap conditions. But the only reasonable necessary and sufficient condition is that $f=e^g+c$ with some entire $g$.

Reference: B. Ya. Levin books on entire functions (any of the two of them).