Manually inputing an appointment that requires payment - how to?

I like the idea of being able to manually input an appointment from the admin end, it makes sense to allow people to phone up and book an appointment.
However, here's the issue I'm running in to. I want to be able to charge a deposit for booking the appointment, but I cannot do this from the backend manually. Would I then have to book the appointment from the front end for the person and just input the card details myself for them? Is this the simplest solution to get around this?