What programming language are you looking to use?
A few years ago, my martial arts school wanted something similar. We had each student's information in a SQL database.
The way I had it setup, using PHP, was that the student would enter their student number (4 digit number). It would look up that # in the database, and prepopulate the form with the information form the database.
The school would then charge the cost to the next month's service.--
CheckSite.us | YourIP.us | Reverseip.us