How do I handle PayPal API timeouts and internal server error messages?
Generally, API timeouts and internal server error messages result from server or connectivity issues. This can result in an INTERNAL_SERVICE_ERROR or INTERNAL_SERVER_ERROR message.
Among others in our REST API integration stack, the following NVP/SOAP API methods can produce this error:
- DoDirectPayment.
- DoExpressCheckoutPayment.
- DoAuthorization.
- DoCapture.
When an internal server error or timeout message is received in response to an API request that processes a payment, make sure the buyer wasn't charged. To do this, refer to your existing reconciliation processes to identify the buyer's completed transactions.
If you don't have a reconciliation process or are unsure whether that process identified a completed transaction, you can use the TransactionSearch API to locate any transactions that took place when the error occurred. If the API returns a result matching your transaction, use the GetTransactionDetails API with the Transaction ID to receive the data for that transaction. You can retry the transaction safely if the TransactionSearch API doesn't return a matching result.
Note: Some users may see checkout stuck at processing when this occurs. Your cache and cookies can also cause this error. If timeouts continue, try testing in another browser, test in Incognito/Private mode, or clear your cache and cookies.
Review the PayPal Status page to determine if there are any maintenance windows or temporary outages.
See also:
See the Developer Portal for a complete NVP/SOAP API error code list.