Registration as part of checkout flow – UX

I am working on a e-commerce project where I am redesigning the checkout flow. Currently there is legal requirement for users to register to be able to checkout because of the type of products that are being sold. This is creating friction and increasing drop outs during checkout. As guest checkout is not possible, I am thinking of merging the registration and checkout in flow. The checkout flow currently has 3 steps:

  • Personal info
  • Shipping details
  • Payment details

If the user logs in or has already logged in, the personal info is prefilled and can be edited. This step lacks only a few fields that are required to also register the user. If we can add those fields to this step, this step could also potentially create the account and the user would still be in the checkout flow (both logically and visually).

In a normal situation, I understand the concern that users may find it a bit intrusive and also cheeky if we slide in the "create the account" in the checkout flow, but here the user has to legally create an account to buy and I see this as a flow that would make this more easier than intrusive.

I would like have some ideas from UXers who have done a similar thing or any suggestions/ concerns you may have had.