Hi,
Indeed, this function has been deprecated in PHP 7.2
The solution is to use openssl_encode instead which should normally be available.
Change the line:
$encryptkey = mcrypt_encrypt(MCRYPT_3DES, $decodekey, (string)$orderServired, MCRYPT_MODE_CBC, $iv);
to:
$message_padded = $orderServired;
if (strlen($message_padded) % 8) {
$message_padded = str_pad($message_padded,
strlen($message_padded) + 8 - strlen($message_padded) % 8, "\0");
}
$encryptkey = openssl_encrypt($message_padded, "DES-EDE3-CBC", $decodekey, OPENSSL_RAW_DATA | OPENSSL_NO_PADDING, $iv);
in the file plugins/hikashoppayment/servired/servired.php and that should fix the problem.
Please let us know how it works so that we can include the change on our end as we don't have the necessary information to test the servired payment plugin on our end.
Please also note that it requires PHP to support openSSL (it should be the case already for the vast majority of hostings):
php.net/manual/en/openssl.installation.php