Request for quote when check out and after that user can login to accept and pay
There is no price for the items. Customer can add to cart and request for quote. Email send to both admin and customer.
After that, admin update the price. Then, customer can login to accept and make payment.
Sagar Sheral commented
WisdmLabs has recently developed a plugin called QuoteUp which enables customers to add multiple products in an enquiry cart and submit the quote for approval. The admin can approve/reject the quote or negotiate. It also allows the admin to hide the add to cart button and selectively enabe or disable QuoteUp for a specific product. Here's the link:
Hope this helps :)