using System.Security.Cryptography;
public class SignatureVerification
public static void Main()
string secretKey = "sandbox-UuLnD7wZa0a3DmytfIrwHQqAMfqCNJrs";
string iyziEventType = "CHECKOUT_FORM_AUTH";
string iyziPaymentId = "22502046";
string token = "67921f98-792a-400a-a7b0-1a553d7e6297";
string paymentConversationId = "conversationId";
string status = "SUCCESS";
string key = secretKey + iyziEventType + iyziPaymentId + token + paymentConversationId + status;
string hmac256Signature = CalculateHMACSHA256(key, secretKey);
string signature_v3 = "67712f0a5918839d9032e5560e1678324d045f66e33bef934e013faf504f9c58";
if (hmac256Signature == signature_v3)
Console.WriteLine("HMAC-SHA256 Signature Verified: " + hmac256Signature);
Console.WriteLine("Enjoy your code...");
Console.WriteLine("Signature verification failed.");
private static string CalculateHMACSHA256(string data, string key)
byte[] keyBytes = Encoding.UTF8.GetBytes(key);
byte[] dataBytes = Encoding.UTF8.GetBytes(data);
using (var hmac = new HMACSHA256(keyBytes))
byte[] hmacBytes = hmac.ComputeHash(dataBytes);
return BitConverter.ToString(hmacBytes).Replace("-", "").ToLower();