I went through this for V14 (still am).
Basically they need an account, one way or another in my exploration. On a web order or left shopping cart situation they don't necessarily see the account or even use a password, but a partner account is created when passed from being a "Public" customer to a named user.
If you want to share a quote built on the back end, the complication seems to show itself around "payment acquirers" if you send a "payment link". If logged in, Payment Acquirers are available. If not, at least in my exploration, they are not.
To rectify this it is best to generate a quote. Send a Portal Invite, ask them to sign up, then send the payment link. Perhaps you could put the two together on one email but default it is in 2 emails.
IMHO this is a shortcoming of the process and it is not well documented. Using backend generated quotes is important.
Revised for clarification