Upgrading is done with the help of a special upgrade pack. If you are using a downloadable version of X-Payments, and your license allows you to upgrade to later versions, you will find this pack in the File area section of your X-Cart Account (Look for a file named like upgrade.pack.xp.X.Y.Z.zip (ZIP-archive) or upgrade.pack.xp.X.Y.Z.tgz (TGZ-archive), where X, Y and Z are version numbers).
Note that if you are upgrading from an X-Payments version earlier than 3.1.0, you will need to use two upgrade packs consecutively: first, you will need to use an appropriate pack to upgrade to version 3.1.0, and then another pack to upgrade from 3.1.0 to whatever later version you require. For example, if your X-Payments version is 1.0.x, and you want to upgrade to 3.1.4, you will need to use two packs: first, upgrade.pack.xp.3.1.0.tgz to upgrade from 1.0.x to 3.1.0; then, upgrade.pack.xp.3.1.4.tgz to upgrade from 3.1.0 to 3.1.4.
To upgrade X-Payments, complete the following steps:
- Download the X-Payments upgrade pack.
- Connect to your X-Payments server via SSH.
- Extract the X-Payments upgrade pack that you downloaded and upload the extracted pack contents to the root of your X-Payments installation.
- Run the script <xpay-dir>/upgrade/upgrade.php via the command line as follows:
The upgrade script will detect your current version automatically and will offer an upgrade to the latest X-Payments version available to you. You will only need to confirm your request by entering "y" (Use "n" to cancel the operation).
If necessary, the following parameters may be specified:
- -vX.X.X - the version to which you want to upgrade; for example, "-v2.2.0";
- -oY.Y.Y - the version from which you are upgrading; for example, "-o2.1.3" (This parameter should be used if, for example, the version in the config/config.ini.php file of your X-Payments installation is specified incorrectly);
- -y - specify this to skip the step where you need to confirm your intention to upgrade (where you need to enter y/n).
For example, to upgrade from version 1.0.4 to 1.0.6, you will need to use the command
php upgrade.php -o1.0.4 -v1.0.6
The upgrade script will recognize all X-Payments versions starting with 1.0.3.
Note that for X-Payments versions 1.0.3 and 1.0.4 you must specify the version from which you are upgrading using the -o parameter, since the config/config.ini.php file of these versions does not contain the version information upgrade.php expects to find there.
Once the script is run, it will create a backup of your X-Payments installation and carry out the upgrade for you. After upgrading has been completed, be sure to remove the directory <xpay-dir>/upgrade/ (That is done for security purposes; remember that X-Payments must be a standalone service on a separate server, so you must not keep other applications - including the upgrade script - on the same server while using it).
In case of any issues, you can find your backup in the directory <xpay-dir>/var/backup/.
Important Info on X-Payments Self-Hosted v2.x/1.x Upgrade
To prevent data loss caused by any possible issues that may happen during the upgrade, be sure to make backup copies of your X-Cart Payments files and database before you start. Thus, you’ll be able to revert back to your current X-Cart Payments version, if something goes wrong.
Note! After you upgrade your X-Cart Payments from v1.x or v2.x to v3.1.0, you will be requested to change your password and set up a new method of 2-factor authentication for your user account. The authentication process is much handier. It doesn’t require generating dozens of pin codes at once, storing them and then searching for a correct one each time you need to log in. Instead, you’ll get a new code with the help of your smartphone each time, you need to log in.