You can use ussd-widget's parser option to start some script after the query was made. In that script you can wait for SMS and show balance on widget itself. The only issue is that parser invocation is sinchronous and would cause hildon-home to freese unil it runs.