I have integrated PayPal Payment Standard couple of years back to acquire payment.
My application is in Asp.Net. It is in sandbox mode currently.
I have a Pay Now button in my website having PostBackURL to PayPal site with all the required parameters. When user clicks on the button it redirects to PayPal their user can pay via his account or debit/credit card. And on successful transaction user is sent back to my application. When user comes back to my application I am getting various parameters like "payment_status" in Request.Form collection. I validate the response and show the success / failure message accordingly.
Above flow is working fine when user is on a browser in desktop.
But when user is in mobile devices and working with mobile browser. User is landed on PayPal mobile friendly page. There user pays with his account. Then success message is shown. But when user is redirected to my application I does not get any values in Request.Form collection. Due to which I am not able to validate the response from PayPal.
Further I have learned that when on desktop browsers PayPal returns response via POST method to my website, hence Request.Form contains the data.
Whereas, in case of mobile browsers PayPal returns response via GET method, hence Request.Form does not contain any data.
Why PayPal returns response via GET? In such case data is not available even in querystring, then how can I validate the response, whether payment is successful or not?
I have read documentation and it says that there are not other specific setting for mobile PayPal payment standard.
I don't want to migrate to express checkout or any other configuration.
Also I have searched many threads on SO related to same and didn't find any proper solution which caters my need hence asking as a new question.