If you're going to trust a website with your credit card you probably trust them enough to not try and steal your paypal information. There isn't a way to solve this issue without hurting the user experience. For some websites, that's a fair trade off. Maybe a browser could put in a "Verify iframes" button that would show you the payment form is actually coming from PayPal.
There is a way to do this securely whilst improving the user experience. The merchant site can run PayPal's js, which would check whether the user is signed in to PayPal. If they are signed in, the js could just display a "confirm payment" button rather than requesting credentials from the user. If they're not signed in, it could just ask the user to sign in to PayPal in a new window, where the user can verify via th…
clickjacking