Why do I get "Merchant Authorization Failed"?

Why do I get "Merchant Authorization Failed"?

As per our Errors and Causes table, the signature is incorrect. Please note that the API signature is generated from the MD5 hash of the alphabetised submitted header and body variables, along with the passphrase.

Ensure that you include the correct merchant-id, version, timestamp and passphrase when generating the signature.

    • Related Articles

    • In Xero, why does the 'Get bank feeds' button not work for PayFast?

      By setting up Xero according to the steps outlined here, the integration will handle the bank feeds automatically from our side and update your Xero systems when there are successful payments received, that were actioned from Xero. Additionally, it ...
    • Why am I getting a merchant_id / merchant_key error?

      This may be due to using your live Merchant ID and Key for the sandbox. When testing in sandbox, you can either use our default sandbox credentials or you can use your own unique sandbox credentials. For sandbox credentials without a passphrase: ...
    • Common causes of a failed integration / signature mismatch

      The following will cause a signature mismatch or a payment to fail: This is most likely caused if you generated the MD5 hashed string with the variables in the wrong order. A required field is missing. A field is greater than the allowable character ...
    • Why am I getting “Merchant_key invalid”?

      Ensure that live credentials are used for live transactions and test credentials are used for testing in the sandbox. Double check that the one set on your PayFast account matches the one set on your plugin’s configuration page. Check for spaces ...
    • On VirtueMart, I get the error message "Direct Access to this location is not allowed".

      You’ll get this error message when there is a mismatch between your version of VirtueMart and version of the PayFast VirtueMart module you have installed. There are three versions of VirtueMart currently in circulation: 2.0.0, 1.1.*, and 1.0.*. They ...