How can I use a contribution page to allow user to make payment against an existing pending contribution record?
It sounds to me more like a pledge use case. That is not something I have much experience with, but I'd think you could enter a pledge for them and when they make the contribution, it would be used against the pledge. 

If you don't otherwise use pledges, you could even rename it invoices.