The thing is that telefonica.net sends the caller-ID in the P-Asserted-Identity header like:
P-Asserted-Identity:<sip:+34NNNNNNNNN@telefonica.net;user=phone>
but de from header sent by telefonica is like:
From: <sip:telefonica.net> (no number in this header)
Zoiper (at least the free Zoiper Classic version) doesn't seem to handle the P-Asserted-Identity header even though the caller-ID there is more reliable tham the info in the from header.
I would encourage developers of Zoiper to handle the P-Asserted-Identity header to extract the caller-ID from that field.