They're all correct.
'I have no credits' is fine, but please be aware that the word 'no' is negating the noun, not the verb. Or, in other words, the word 'no' is NOT the same as 'não' in the phrase 'Eu não tenho'. You can look at the construction like this:
[I have] [no credits]
or
[I don't have] [any credits]
So you can either have a positive verb (I have) with a negative object (no credits), or a negative verb (I don't have) with a positive object (any credits).
The meaning is the same. It's just like mathematics - a positive and a negative makes a negative.
The other two phrases - 'I haven't credits' and 'I don't have credits' - are also correct grammatically, but a native speaker wouldn't say these. With the negative verb form, we would usually use 'any':
I haven't any credits
I don't have any credits.
or
I haven't got any credits.
I hope that helps.