kobiak: @LennonNZ I don't see any reason why it would not work.
Probably people already know, but here is shorter USSD to check balances
*888*2*1# - voice
*888*2*2# - txt
*888*2*3# - data
From what I've read USSD on iPhones should work (when dialed).. but its not possible to write a native app to dial the numbers or make links to numbers with * in it (done for security) so if you had an iPad it would not be possible (via USSD) to use USSD at all as it has no keypad to dial (but if jailbroken can install Query USSD) via Cydia