Skip to main content
Most integration problems fall into a small number of recurring patterns. This page is organised by symptom — start with what you are seeing, then follow the fix. For the complete list of codes, see the Response Codes reference.
Before troubleshooting anything, confirm you are hitting the environment you think you are. Pointing test credentials at production endpoints — or the reverse — is the single most common cause of unexplained failures.

Diagnose by Symptom

Authentication and Setup

Payment Initialization

Status Checks and Refunds

What to Do for Each Payment Status

A redirect to your success_url does not confirm payment. Always read paymentStatus and act accordingly.
HOST TIMEOUT is the most dangerous status to mishandle. Never auto-refund and never auto-fulfil on a timeout — confirm the real outcome in your processor portal or with Payzah support first.

Still Stuck?

When contacting Payzah support, include the following so the issue can be traced without reproducing it:
  • The trackid and PaymentID for the affected transaction
  • The full raw response body, including the code and message fields
  • The environment (test or production) and the exact endpoint URL you called
  • The approximate timestamp of the request
Never include your private key, card numbers, or customer payment details in a support ticket. Payzah will never ask for your private key.