I'm not sure if this is the best place to ask this, so mods, feel free to move it.
I'm setting up a website for my wife's new business. She teaches group dance classes, and you can schedule classes and pay for them on the website. My problem is figuring out the best way to set this up, and I'm open to suggestions on how to go about this.
When customers want to sign up for a class, they fill out a form with the usual things - name, address, type of class, number of participants, number of classes, and date and time of when they'd like to hire her.
We basically have a Google Checkout account, and my original idea was to build a "buy now" button for each transaction based on what was selected above. The first complication I ran into was the fact that the "buy now" button only accepts a certain number of arguments, so I decided to store details (like class size, class time and date, etc) in a database on the website.
After thinking more about it, I realized that this method introduces other problems, like what if someone fills out the form, adds the class to cart (which is my only opportunity to add it to the database) then decides to cancel the order in Google Checkout? What if they come back to reschedule the class, and they're told that time is not available because their previous attempt is still in the database?
There's obviously got to be a better way to do this. Maybe some other services have more flexibility than Google Checkout (which was recommended to me by two friends who use it), or maybe I need to handle more (or less) of the transaction on my site. Any suggestions would be helpful!