Мне нужно обновить систему безопасности POS-модуля в Prestashop, и теперь я столкнулся с проблемой: при получении подписи платежа возникает ошибка.
Старый код :
static public function getFirma($orderId, $importe, $tipoMondea, $exponente, $urlOK, $urlNOK ) {
//Clave_encriptacion+MerchantID+AcquirerBIN+TerminalID+Num_operacion+Importe+Tipo Moneda+Exponente+'SHA1'+URL_OK+URL_NOK
$cryptKey = self::getCryptKey();
$merchantId = Configuration::get('CECA_MERCHANT_ID');
$acquirerBIN = Configuration::get('CECA_ACQUIRER_BIN');
$terminalId = Configuration::get('CECA_TERMINAL_ID');
return sha1($cryptKey.$merchantId.$acquirerBIN.$terminalId.$orderId.$importe.$tipoMondea.$exponente.'SHA1'.$urlOK.$urlNOK);
}
static public function getFirmaIPN($orderId, $importe, $tipoMondea, $exponente, $referencia ) {
//Clave_encriptacion+MerchantID+AcquirerBIN+TerminalID+Num_operacion+Importe+TipoMoneda+Exponente+Referencia
$cryptKey = self::getCryptKey();
$merchantId = Configuration::get('CECA_MERCHANT_ID');
$acquirerBIN = Configuration::get('CECA_ACQUIRER_BIN');
$terminalId = Configuration::get('CECA_TERMINAL_ID');
return sha1($cryptKey.$merchantId.$acquirerBIN.$terminalId.$orderId.$importe.$tipoMondea.$exponente.$referencia);
}
Я пробовал это:
static public function getFirma($orderId, $importe, $tipoMondea, $exponente, $urlOK, $urlNOK ) {
//Clave_encriptacion+MerchantID+AcquirerBIN+TerminalID+Num_operacion+Importe+Tipo Moneda+Exponente+'SHA2'+URL_OK+URL_NOK
$cryptKey = self::getCryptKey();
$merchantId = Configuration::get('CECA_MERCHANT_ID');
$acquirerBIN = Configuration::get('CECA_ACQUIRER_BIN');
$terminalId = Configuration::get('CECA_TERMINAL_ID');
return hash('sha2', $cryptKey.$merchantId.$acquirerBIN.$terminalId.$orderId.$importe.$tipoMondea.$exponente.'SHA2'.$urlOK.$urlNOK);
}
static public function getFirmaIPN($orderId, $importe, $tipoMondea, $exponente, $referencia ) {
//Clave_encriptacion+MerchantID+AcquirerBIN+TerminalID+Num_operacion+Importe+TipoMoneda+Exponente+Referencia
$cryptKey = self::getCryptKey();
$merchantId = Configuration::get('CECA_MERCHANT_ID');
$acquirerBIN = Configuration::get('CECA_ACQUIRER_BIN');
$terminalId = Configuration::get('CECA_TERMINAL_ID');
return hash('sha2', $cryptKey.$merchantId.$acquirerBIN.$terminalId.$orderId.$importe.$tipoMondea.$exponente.$referencia);
}
но я получил ошибку при пропущенных параметрах.
Помощь будет высоко ценится.