You don't have to be a veteran to vote, you have to have completed Federal Service. From the Starship Troopers wiki:
Citizens are people who joined the Federal Service and were honorably discharged and given franchise. Joining the Federal Service does not necessarily mean the military, and applicants may be assigned to any field where they sacrifice their time and effort for the Federation (Teaching, any of the civil services, experimental test subjects, etc), though military service is the most glorified. It all falls under Federal Service.
I stand corrected, or at least clarified.
It’s been a number of years since I last read Starship Troopers, so I was going by memory.