In the end, a working approach for us used the prior approval of PayPal. if you do not know what preliminary approval is, imagine that the bank has been spared: you ask the user for permission to withhold it at any time, in our case we charge a seller a fee for the commission when he sells the goods.
Maintaining the seller outside the transaction flow allowed us to allow the buyer to complete the check using the express check from the built-in web view.
using this technique, you basically ask the buyer to pre-authorize the payment. after he grants you permission, you transfer the secret token back to your web server where the real payment is made (along with any other secure check).
after transferring money from the buyer to the seller, we entrust the seller with the transaction using prior approval.
please allow me to note that in the end we do not use the real paypal-attached payment, but for us this approach was good, and everything seems to be working fine now.
source share