When buttons are generated in Payage a payment record is created in the #__payage_payments table. The data needs to be stored so that it is available when the customer returns from the payment gateway. The default retention time for unconfirmed transactions is 60 minutes, which is more than enough for customers to complete payment and return to the originating site. Most payment gateways have timeouts of around 5 or 10 minutes, and most users are aware that time is limited in these situations.
The retention time for unconfirmed transactions is configurable in the Payage Configuration Options. However in order for a user to take longer than 60 minutes to pay, he would have to work hard to avoid the payment gateway timeout. If a user did manage to complete payment after the unconfirmed payment record had been deleted, details of the intended transaction would have been lost and the customer would be redirected to the home page of your site. That is an undesirable situation that would have to be resolved manually.
In order to reduce the chances of this happening, we recommend that payment buttons do not remain displayed for more than about 15 minutes. One simple solution is to add Javascript on the application's payment button page to return to the previous page after 15 minutes. Unless a user deliberately tries to break the system he then has at least 45 minutes to complete payment at the payment gateway.