Article ID: 115925, created on Apr 10, 2013, last review on Jun 17, 2016

  • Applies to:
  • Service provider products licensing


Attempt to activate or retrieve Plesk Billing license produces error:

Error: There has been an internal error. Please try again later. If you continue to have problems please contact support and give them error code 2000.

Attempt to manually upload license ends up with PHP error:

Warning: zip_read() expects parameter 1 to be resource, integer given in /var/www/domain.tld/plesk-billing/admin/include/lib-action/modules/UploadKeyResponse.php on line 47


Recent changes on the side of Key Administrator introduced changes in license key signatures format which caused incompatibility with older versions of Plesk Billing. Only stand-alone installations are affected. Plesk Billing installations bundled with Plesk Panel are not affected.


  1. Log into the server by SSH or Remote Desktop as server administrator and change directory to Plesk Billing installation directory.

  2. Determine which engine was used to encrypt Plesk Billing PHP files - ZendGuard or ionCube - and download appropriate archive. This can be done by looking at the first line of any PHP file in the Billing directory:

    • "<?php //0046a" - Billing is encrypted with ionCube 4.x and up. In that case, archive with hotfix is
    • "<?php //003ab" - Billing is encrypted with ionCube 3.x. In that case, archive with hotfix is
    • "<?php @Zend;" - Billing PHP files are encoded with ZendGuard. Archive with hotfix is
  3. Once hotfix archive is downloaded, unpack it:

    On Windows: Right-click on archive file and choose Extract all.... Replace path with Plesk Billing installation path and click Extract.

    On Linux: Use one of the following unzip commands:

  4. Login into Plesk Billing interface and retrieve/upload license.

Search Words

cannot activate plesk billing

cannot retrieve license for plesk billing

plesk billing activation fails



Email subscription for changes to this article
Save as PDF