Encryption Hash Errors

Problem

This information only applies to self-hosted WHMCS installations. WHMCS Cloud updates WHMCS for you automatically.

You enter your credit card encryption hash to upgrade an existing database. The upgrade does not start and you see one of the following messages:

The system could not verify this request.
The system could not verify this request because a previous submission already used it. Restart the installation process to continue.
The system could not confirm that the configuration.php file contains your credit card encryption hash.
The system could not save your credit card encryption hash automatically, and you cannot use this request again.

Cause

WHMCS only accepts a change to the $cc_encryption_hash value from the Existing WHMCS Database Found page. That page creates a single request. The request works for one hour, only once, so a direct link no longer changes the hash.

When you submit the form, the installation process replaces only the $cc_encryption_hash line in the configuration.php file and keeps the rest of the file. After it saves the hash, the page shows the message The system saved your credit card encryption hash to the configuration.php file.

Each message has its own cause:

  • The system could not verify this request. — The hash form expired after one hour, you submitted it twice, or you reached the upgrade page from a direct link.
  • The system could not confirm that the configuration.php file contains your credit card encryption hash. — You left the hash form (for example, by using your browser’s back button). The configuration.php file still contains the random hash that the installation process generated, so WHMCS prevents the upgrade. An upgrade on that hash would encrypt your data with a key that your installation never uses.
  • The system could not save your credit card encryption hash automatically, and you cannot use this request again. — The installation process could not replace the $cc_encryption_hash line in the configuration.php file. This happens when:
    • The file does not contain a $cc_encryption_hash line.
    • The file assigns $cc_encryption_hash more than once.
    • The file assigns something other than a plain text value.
    • The installation process cannot read the file.
    • The installation process cannot write to the file.

Solution

To resolve this issue:

  1. Open the configuration.php file in the root WHMCS directory.

  2. Set the $cc_encryption_hash value to the credit card encryption hash from your backup. For example:

    $cc_encryption_hash = 'xxxxxxxxxxxxxxxxxxxxxxxxxx';
    
  3. Check that the file assigns $cc_encryption_hash exactly once.

  4. Check that the web server can write to the file.

  5. Save the file.

  6. Restart the installation process.

Use the credit card encryption hash from your most recent backup of the configuration.php file. WHMCS cannot decrypt your stored data with any other value.

To use the form instead, go back to the database details page. Enter the details for your existing database again. Then, submit the Credit Card Encryption Hash value within one hour.

For more information, see The configuration.php File and Update in the Browser.

Last modified: 2026 October 20