New to the community? Welcome! Please read our Community Rules and Guidelines
Unfortunately, there's nothing you can do. Paypal only enables this option for users connecting from certain countries. For instance, if paypal detects that your IP address is from United States, then it will enable Guest Checkout, and for other countries it will be disabled.
What I did to workaround this was to create an account in 2checkout and then installed the "WooCommerce 2Checkout Payment Gateway Free" plugin on my wordpress store. 2Checkout allows my users to pay either with a paypal account or directly with their debit/credit card, regardless of their country of residence.
You don't need to use a different payment gateway. 2Checkout will just add an unnecessary piece to the puzzle.
The reason 2Checkout works better is because it uses Express Checkout instead of PayPal Standard. That will solve the problem as I've mentioned previously.
Are you using WooCommerce? If so, just install PayPal for WooCommerce and configure Express Checkout with Smart Buttons enabled. Problem solved.
No, that won't work. And I say it from experience since I have tried pretty much every payment gateway available for wordpress.
If you insist, connect to a VPN using a server located in Central America (Costa Rica for instance) and then try to make a payment. You won't see the guest checkout option.
I've got a little experience with PayPal integration as well. You are correct that Guest Checkout is not available for all transactions, but I have not had any reports of issues with Central America. It could be a combination of the buyer and seller countries.
In your SetExpressCheckout request, did you specifically set the following?
Also, what about LOCALECODE? Are you using that at all?
My VPN service doesn't give me a connection in Central America, unfortunately, so I can't test it specifically.
This could indeed be one of the combinations where Guest Checkout wouldn't be available, but I'd definitely want to check the above before making that claim.