Just an update for anyone looking for the same functionality.
The solution is to approach it as @tonyp described. Put your price on the event (calling it a deposit if you want). Then after payment has been made by the attendees, increase the price to the full amount the event requires. When the attendees next login they will see a 'Pay Balance' button requiring them to pay the difference between what they've paid already and the price now.
I.e., if you initially put £50 on, then increase it to £75, attendees will need to pay the £25 difference.
Works the same way as a deposit if you implement controls over registration dates.
Thanks.