If an odd function *exists* in $x=a$ and in $x=-a$ and if it has a zero in one of them, then necessarily it has one in its symmetric counterpart since $f(-a)=-f(a)$ by definition of *odd*.

The only way to make this go wrong, is if $f$ would be defined in *only one of those points*. This is something you may or may not (want to) allow for a function to be called *odd*.

What I mean is, consider an odd function where its positive zeros are x=1, x=2, x=3. Since it is odd, it has a symmetry related to origin of referencial, so there are also the zeros x=-1, x=-2, x=-3. But is it possible to have an odd function with x=1,x=2,x=3, x=-1 and x=-2? Where x=3 doesn't have a symmetric.

With the usual understanding (definition) of *odd*, you cannot have the situation you describe. We call a function odd if $f(-x)=-f(x)$ *"for all $x$"*, but this is only meaningful if for every $x$ in the domain of $f$, you **also** have $-x$ in that domain.

This means we're only considering functions defined on either $\mathbb{R}$ or with a domain that is symmetric with respect to the origin such as intervals of the form $[-a,a]$, with $a \in \mathbb{R}$.

Take for example the odd function which has (at least) the zeroes you describe:
$$f : \mathbb{R} \to \mathbb{R} : x \mapsto (x+3)(x+2)(x+1)x(x-1)(x-2)(x-3)$$
You could limit the domain to an asymmetric interval, such as $\left[ -2.5, 3.5 \right]$:
$$g : \left[ -2.5, 3.5 \right] \to \mathbb{R} : x \mapsto (x+3)(x+2)(x+1)x(x-1)(x-2)(x-3)$$
Now this function $g$ has a zero in $x=3$ without a symmetric counterpart, since it is undefined in $x=-3$. Whether or not you would still call this function *odd* depends on the definition: do you require the domain to be of the specific form as described above or not?