I'd normally (writing colloquial dialogue) write 'going to' and say 'gonna' (actually [g@n@] with schwa), so there's no reason to make the spelling fit the pronunciation.

I'd use an alternative spelling where it was something I didn't normally contract: I use 'isn't it?' as a tag, so if I made a character say 'innit?' I'd have to write it that way.

I'm quite tempted to write 'hafta' because 'have to' just doesn't look right, and I've come across genuine cases where they contrast. Making up an example: 'the next thing I have to do'.