/** * Build a plain signature * @param Object $order the order to be sent in a transaction request * @param string $merchantId the identifier of merchant * @param string $key authentication key * @return the plain message */ static function buildMessage($order, $merchantId, $key) { SignatureUtil::validateOrder($order, $merchantId); $txValueName = PayUKeyMapName::TX_VALUE; $referenceCode = $order->referenceCode; $value = $order->additionalValues->{$txValueName}->value; $floatValue = floatval($value); $valueRounded = round($floatValue, SignatureUtil::DECIMALS, PHP_ROUND_HALF_EVEN); $valueFormatted = number_format($valueRounded, SignatureUtil::DECIMALS, SignatureUtil::DECIMAL_POINT, SignatureUtil::THOUSANDS_SEPARATOR); $currency = $order->additionalValues->{$txValueName}->currency; $message = $key . '~' . $merchantId . '~' . $referenceCode . '~' . $valueFormatted . '~' . $currency; return $message; }