Hash Hesaplama
Request Hash Testi
paynkolay'a gönderdiğiniz her istekte ilgili hash'i de oluşturup göndermelisiniz. Hash aşağıdaki yöntemlerle hesaplanmaktadır. Size özel sx ve merchantSecretKey bilgilerinizi panelizden alabilirsiniz.
PHP ile Ortak Ödeme ve API'ler için Hash oluşturma
$hashstr = $sx . $clientRefCode . $amount . $successUrl . $failUrl . $rnd . $merchantSecretKey . $customerKey;
$hashData = base64_encode(pack('H*', sha1($hashstr)));
.NET ile Ortak Ödeme ve API'ler için Hash oluşturma
String rnd = (DateTime.Now);
String str = sx + clientRefCode + amount + successUrl + failUrl + rnd + merchantSecretKey + customerKey;
System.Security.Cryptography.SHA1 sha = new System.Security.Cryptography.SHA1CryptoServiceProvider();
byte[] bytes = System.Text.Encoding.UTF8.GetBytes(str);
byte[] hashingbytes = sha.ComputeHash(bytes);
String hashData = Convert.ToBase64String(hashingbytes);
Hash değerini bize diğer parametreler ile post ettiğinizde, biz de aynı değerleri hashliyoruz. Sizin gönderdiğiniz hash ile bizim ürettiğimiz hash bir birini tutar ise, request’in sizden geldiğini teyit ediyoruz.
PHP ile İptal-İade servisi için Hash oluşturma
$hashstr = $sx . $referenceCode . $type . $amount . $trxDate . $merchantSecretKey;
// $sx değeri Cancel sx değeridir. $referenceCode paynkolay referans numarası, $type işlem tipi (cancel, refund), $amount işlem tutarı, $trxDate işlem tarihi ( ödemenin alındığı tarih ) ( yyyy.mm.dd ), $merchantSecretKey paynkolay panelinizdeki secretkey'dir
$hashData = base64_encode(pack('H*', sha1($hashstr)));
.NET ile İptal-İade servisi için Hash oluşturma
String str = sx + referenceCode + type + amount + trxDate + merchantSecretKey;
// sx değeri Cancel sx değeridir. referenceCode paynkolay referans numarası, type işlem tipi (cancel, refund), amount işlem tutarı, trxDate işlem tarihi ( ödemenin alındığı tarih ) ( yyyy.mm.dd ), merchantSecretKey paynkolay panelinizdeki secretkey'dir
System.Security.Cryptography.SHA1 sha = new System.Security.Cryptography.SHA1CryptoServiceProvider();
byte[] bytes = System.Text.Encoding.UTF8.GetBytes(str);
byte[] hashingbytes = sha.ComputeHash(bytes);
String hashData = Convert.ToBase64String(hashingbytes);
PHP ile Raporlama servisi için Hash oluşturma
$hashstr = $sx . $startDate . $endDate . $clientRefCode . $merchantSecretKey;
// $sx değeri Listeleme sx değeridir. $startDate raporlama başlangıç tarihi ( dd.mm.yyyy ), $endDate raporlama bitiş tarihi ( dd.mm.yyyy ), $clientRefCode sizin referans numaranız (tüm işlemleri görmek için boş gönderebilirsiniz), $merchantSecretKey paynkolay panelinizdeki secretkey'dir
$hashData = base64_encode(pack('H*', sha1($hashstr)));
.NET ile Raporlama servisi için Hash oluşturma
String str = sx + startDate + endDate + clientRefCode + merchantSecretKey;
// sx değeri Listeleme sx değeridir. startDate raporlama başlangıç tarihi ( dd.mm.yyyy ), endDate raporlama bitiş tarihi ( dd.mm.yyyy ), clientRefCode sizin referans numaranız (tüm işlemleri görmek için boş gönderebilirsiniz), merchantSecretKey paynkolay panelinizdeki secretkey'dir
System.Security.Cryptography.SHA1 sha = new System.Security.Cryptography.SHA1CryptoServiceProvider();
byte[] bytes = System.Text.Encoding.UTF8.GetBytes(str);
byte[] hashingbytes = sha.ComputeHash(bytes);
String hashData = Convert.ToBase64String(hashingbytes);
PHP ile Pay By Link için Hash oluşturma
$hashstr = $sx . $full_name . $email . $gsm . $amount .$link_expiration_time . $merchantSecretKey;
// $sx değeri Listeleme sx değeridir. $link_expiration_time linkin geçerliği olacağı son tarihi ( yyyy-mm-dd ), $merchantSecretKey paynkolay panelinizdeki secretkey'dir
$hashData = base64_encode(pack('H*', sha1($hashstr)));
.NET ile Pay By Link için Hash oluşturma
String str = sx + full_name + email + gsm + amount + link_expiration_time + merchantSecretKey;
// sx değeri Listeleme sx değeridir. link_expiration_time linkin geçerliği olacağı son tarihi ( yyyy-mm-dd ), merchantSecretKey paynkolay panelinizdeki secretkey'dir
System.Security.Cryptography.SHA1 sha = new System.Security.Cryptography.SHA1CryptoServiceProvider();
byte[] bytes = System.Text.Encoding.UTF8.GetBytes(str);
byte[] hashingbytes = sha.ComputeHash(bytes);
String hashData = Convert.ToBase64String(hashingbytes);