Well, I do not think this is available out of the box. Hence you would need to make some customization. 1) You would need to restrict the checkout flow for the customer with the first role. 2) You would need to enable the checkout to impersonate features to the user with the other role.
Note: An admin user can already carry out checkout for other users. Please check Admin/Customer/Edit Place order (impersonate) tab. You would need a similar feature for step 2.