Sorularınız veya destek talepleriniz için [email protected] adresinden bize 7/24 ulaşabilirsiniz.

Pay Hesap Entegrasyon Dokümanı

Anasayfa

PayHesap API servisi web siteleriniz üzerinden sorunsuz bir şekilde ödeme hizmeti alabilmeniz için geliştirilmiştir.

  • Pay Hesap Panel Adresimiz : https://www.payhesap.com
  • Sorularınız veya destek talepleriniz için [email protected] adresinden bize 7/24 ulaşabilirsiniz.
  • Ödeme isteği gönderebilmek için gerekli olan, üye işyerinize özel oluşturulan API Hash bilginize panel üzerinden ulaşabilirsiniz.
  • Kullanacağınız ödeme modeline göre soldaki menüden ilerleyip entegrasyon işlemlerinizi gerçekleştirebilirsiniz.

Entegrasyon Sürecimiz

  • Kullanacağınız ödeme modeline göre entegrasyon işlemlerinizi gerçekleştirdikten sonra test bilgileri ile işlem gerçekleştirerek sisteme sorunsuz bir şekilde entegre olduğunuzdan emin olmalısınız.
  • İşlem sonuçlarını kullanıcılarınızın daha rahat anlayabilmesi için bizden gelen hata kod ve mesajlarını kendinize göre düzenlemelisiniz.
  • İşlem sonunda sizin belirttiğiniz geri dönüş sayfasına verilerin eksiksiz ve doğru bir şekilde geldiğinden emin olmalısınız.
  • Tüm bu süreçler de sorularınızı veya destek taleplerinizi [email protected] adresinden bize ulaştırabilirsiniz.

Yaygın kullanım ağına sahip e-ticaret sistemleri için ödeme işlemlerinizi gerçekleştirmeye imkan sağlayan Pay Hesap hazır modüllerini indirip kolayca ödeme almaya başlayabilirsiniz.

OpenCart, PHP tabanlı MySQL veritabanı ile MVC olarak geliştirilmiş açık kaynaklı bir e-ticaret yönetim sistemidir. Kolay kurulumunun yanı sıra geniş tema ve eklenti desteği sayesinde en çok kullanılan e-ticaret altyapılarından birisidir. Basit bir hosting hesabı üzerinde dahi çalıştırabileceğiniz hafif bir yapıda kodlanmıştır. Pay Hesap OpenCart modülleri eklentisiz opencart kurulumu üzerinden geliştirilip test edilmiştir. Kullanılan OpenCart sürümüne göre ilgili Pay Hesap modülünü aşağıdan indirip sitenize kurabilirsiniz.

Opencart Dönüş Callback URL Adresi : Opencart kullanacağınızı bize bildirmeniz durumunda , dönüş urlniz ayarlanacaktır.

Opencart (v3.0) İndir.

WooCommerce, WordPress'in açık kaynaklı e-ticaret eklentisidir. Wordpress kullanıcıları tarafından kolaylıkla yönetilebilen WooCommerce pratik ve kullanışlı bir e-ticaret çözümü sunmakatdır. Pay Hesap WooCommerce modülü eklentisiz WooCommerce kurulumu üzerinden geliştirilip test edilmiştir.

WooCommerce (v2 Yeni Tasarım) İndir.

WooCommerce (v1 Eski Tasarım) İndir.

WHMCS, tüm gereklilikleri içerisinde barındıran hazır paket bir web hosting yönetim yazılımı, otomasyonudur. WHMCS kurulumu üzerinden geliştirilip test edilmiştir.

WHMCS İndir.

iFrame Ödeme Modeli

Güvenli Ödeme Sayfası Servisi İstek Modeli;

Metod API URL
POST https://www.payhesap.com/api/iframe/pay

Güvenli ödeme sayfası modelini kullanarak başarılı bir tahsilat gerçekleştirmek için aşağıda maddeler halinde açıklanan işlemleri takip ederek entegrasyonunuzu tamamlamanız gerekmektedir.

İstek Mesajı

PARAMETRE AÇIKLAMA
hash Üye işyerinize özel oluşturulan kullanıcı bilginizdir. (PayHesap paneli üzerinden bu bilgiye erişebilirsiniz.)
callback_url Ödeme işlemi sonlandığında arka planda POST atılacak olan sayfa
success_url Ödeme işlemi başarılı ise bulunan sayfa hangi adrese yönlensin
fail_url Ödeme işlemi başarısız ise bulunan sayfa hangi adrese yönlensin
amount Gerçekleştirmek istediğiniz işleme ait tutar bilgisidir. (Örn: 15,90)
order_id Ödeme isteğinde bulunurken gönderdiğiniz işleme ait referans numarasıdır. Ödemenizi bu referans numarası ile takip edebilirsiniz. (Maksimum 24 Karekter Olmalıdır.)
currency Gerçekleştirmek istediğiniz işleme ait para birimi (TRY / EUR / USD)
installment İşlem için istenen taksit sayısının belirtildiği paremetredir. (Örn: Tek çekim işlem için "1" göndermelisiniz.)
name İşlemi gerçekleştiren müşterinin ad soyad bilgisidir.
address İşlemi gerçekleştiren müşterinin adres bilgisidir.
email İşlemi gerçekleştiren müşterinin mail bilgisidir.
phone İşlemi gerçekleştiren müşterinin telefon numarası bilgisidir.
city İşlemi gerçekleştiren müşterinin şehir bilgisidir.
state İşlemi gerçekleştiren müşterinin ilçe bilgisidir.
ip (customer değişken içerisinde array olarak gönderilmelidir) İşlemi gerçekleştiren müşterinin IP adresi bilgisidir.

Cevap Mesajı

PARAMETRE AÇIKLAMA
STATUS İşlem sonuç durumu
errors Başarısız işlemler için hata mesajı.
data[token] İframe için kullanacağınız token
data[orderID] Gönderdiğiniz sipariş numarası

Örnek PHP Kod

İstek Kod
                

<?php $posts = [ "hash" => "xxxxxxxxxxxx", "order_id" => "43", "callback_url" => "xxxxxxxxxxx", //İşlem durumu hakkında bilgiler ve Payhesap üzerinden ödeme sorgulama aşaması "amount" => "1", "installment" => "1", "success_url" => "https://payhesap.com/success.php", //Ödeme başarılı ise sayfa buraya yönlencek "fail_url" => "https://payhesap.com/fail.php", //Ödeme başarısız ise sayfa buraya yönlencek "name" => "Onur Samancı", "email" => "[email protected]", "phone" => "123123123", "city" => "İstanbul", "state" => "Şişli", "address" => "Test işlem adres", "ip" => $_SERVER['REMOTE_ADDR'] ]; $encode = json_encode($posts, JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES); $ch = curl_init('https://www.payhesap.com/api/iframe/pay'); curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST"); curl_setopt($ch, CURLOPT_POSTFIELDS, $encode); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HTTPHEADER, [ 'Content-Type: application/json', 'Content-Length: ' . strlen($encode) ] ); $result = curl_exec($ch); $decode = json_decode($result, true); if(isset($decode['data']['token'])){ ?> <script src="https://www.payhesap.com/iframe/iframeResizer.min.js"></script> <iframe src="https://payhesap.com/api/iframe/<?=$decode['data']['token'];?>" id="payhesapiframe" frameborder="0" scrolling="yes" style="width: 100%;"></iframe> <script>iFrameResize({},'#payhesapiframe');</script> <?php }else{ print_r($decode); // Bir sorun var mesajlar burada }

Cevap Kod (Callback)
                    

<?php if(isset($_POST['STATUS'])){ $orderID = $_POST['ORDER_REF_NUMBER']; $hash = $_POST['HASH']; $ch = curl_init('https://www.payhesap.com/api/pay/checkOrder'); curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST"); curl_setopt($ch, CURLOPT_POSTFIELDS, array('hash' => $hash)); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);; $result = json_decode(curl_exec($ch),true); //$orderID ile siparişinizn işlemlerini yapabilirsiniz if($result['statusID'] == 1 ){ // Ödeme Başarılı }else{ // Ödeme Başarısız } }


3D Ödeme Servisi İstek Modeli

Metod API URL
POST https://www.payhesap.com/api/pay

3D Ödeme Servisi İşlem Akışı;

3D ödeme modelini kullanarak başarılı bir tahsilat gerçekleştirmek için aşağıda maddeler halinde açıklanan işlemleri takip ederek entegrasyonunuzu tamamlamanız gerekmektedir.

İstek Mesajı

PARAMETRE AÇIKLAMA
hash Üye işyerinize özel oluşturulan kullanıcı bilginizdir. (PayHesap paneli üzerinden bu bilgiye erişebilirsiniz.)
callback_url Opencart veya WooCommerce modülü kullanmıyorsanız ödeme sonucunu alabilmek için geri dönüş URLsi göndermeniz gerekmektedir
amount Gerçekleştirmek istediğiniz işleme ait tutar bilgisidir. (Örn: 15,90)
order_id Ödeme isteğinde bulunurken gönderdiğiniz işleme ait referans numarasıdır. Ödemenizi bu referans numarası ile takip edebilirsiniz. (Maksimum 24 Karekter Olmalıdır.)
currency Gerçekleştirmek istediğiniz işleme ait para birimi (TRY / EUR / USD)
cardnumber Ödeme işlemini gerçekleştireceğiniz karta ait 16 haneli numarasını içeren paremetredir.
cardcustomername Kart sahibinin ad ve soyad bilgisinin belirtildiği parametredir.
cardexpmonth Kartın son kullanım tarihinin ay bilgisinin belirtildiği parametredir. (Örn: 06)
cardexpyear Kartın son kullanım tarihinin yıl bilgisinin belirtildiği parametredir. (Örn: 2023)
cardcvv Kartın arka yüzeyinde bulunan güvenlik kodunun bilgisinin belirtildiği parametredir. (Örn: 000)
installment İşlem için istenen taksit sayısının belirtildiği paremetredir. (Örn: Tek çekim işlem için "1" göndermelisiniz.)
customer['firstname'] (customer değişken içerisinde array olarak gönderilmelidir) İşlemi gerçekleştiren müşterinin adı bilgisidir.
customer['lastname'] (customer değişken içerisinde array olarak gönderilmelidir) İşlemi gerçekleştiren müşterinin soyadı bilgisidir.
customer['address'] (customer değişken içerisinde array olarak gönderilmelidir) İşlemi gerçekleştiren müşterinin adres bilgisidir.
customer['email'] (customer değişken içerisinde array olarak gönderilmelidir) İşlemi gerçekleştiren müşterinin mail bilgisidir.
customer['phone'] (customer değişken içerisinde array olarak gönderilmelidir) İşlemi gerçekleştiren müşterinin telefon numarası bilgisidir.
customer['city'] (customer değişken içerisinde array olarak gönderilmelidir) İşlemi gerçekleştiren müşterinin şehir bilgisidir.
customer['state'] (customer değişken içerisinde array olarak gönderilmelidir) İşlemi gerçekleştiren müşterinin ilçe bilgisidir.
customer['ip'] (customer değişken içerisinde array olarak gönderilmelidir) İşlemi gerçekleştiren müşterinin IP adresi bilgisidir.

Örnek İstek

"hash" => "TEST1234", "order_id" => "001", "amount" => "15" "cardnumber" => "4159562885391991", "cardexpmonth" => "12", "cardexpyear" => "2023", "cardcvv" => "000", "cardcustomername" => "test", "installment" => "1" "customer" => [ "firstname" => "Firstname", "lastname" => "Lastname", "email" => "[email protected]", "phone" => "02122356600", "city" => "İstanbul", "state" => "Şişli", "address" => "Merkez Mah. Akar Cd. No:3/115 ITower Plaza Kat:17 Bomonti Şişli/İstanbul" ]

Cevap Mesajı

PARAMETRE AÇIKLAMA
ORDER_REF_NUMBER Ödeme isteğinde bulunurken gönderdiğiniz işleme ait referans numarası
STATUS İşlem sonuç durumu
errors Başarısız işlemler için hata mesajı.
payUrl Kullanıcıyı yönlendireceğiniz 3D Doğrulama Sayfası url adresi.
returnHash İşleme ait hash numarası
Örnek PHP Kod

<?php $posts = [ "hash" => "12312312312", "order_id" => "1", "callback_url" => "payhesap.com/callback", "amount" => "1", "cardnumber" => "11111111111", "cardexpmonth" => "22", "cardexpyear" => "24", "cardcvv" => "222", "cardcustomername" => "Test İşlem", "installment" => "1", "customer" => [ "firstname" => "Test", "lastname" => "İşlem", "email" => "[email protected]", "phone" => "123123123", "city" => "İstanbul", "state" => "Şişli", "address" => "Test işlem adres şişli / İstanbul", "ip" => $_SERVER['REMOTE_ADDR'] ] ]; $encode = json_encode($posts, JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES); $ch = curl_init('https://www.payhesap.com/api/pay'); curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST"); curl_setopt($ch, CURLOPT_POSTFIELDS, $encode); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HTTPHEADER, [ 'Content-Type: application/json', 'Content-Length: ' . strlen($encode) ] ); $result = curl_exec($ch); $decode = json_decode($result, true); if(isset($decode['payUrl'])){ header('Location:'.$decode['payUrl']); }else{ print_r($decode); // Bir sorun var mesajlar burada }


Sipariş Durumu Sorgulama

Metod API URL
POST https://www.payhesap.com/api/pay/checkOrder

Oluşturulan siparişin durumunu kontrol etmek için aşağıdaki komutları kullanabilirsiniz.

İstek Mesajı

PARAMETRE AÇIKLAMA
hash Callback dosyanıza post olarak gelen sipariş hash kodu
Örnek PHP Kod
                    

<?php if(isset($_POST['STATUS'])){ $orderID = $_POST['ORDER_REF_NUMBER']; $hash = $_POST['HASH']; $ch = curl_init('https://www.payhesap.com/api/pay/checkOrder'); curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST"); curl_setopt($ch, CURLOPT_POSTFIELDS, array('hash' => $hash)); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);; $result = json_decode(curl_exec($ch)); //$orderID ile siparişinizn işlemlerini yapabilirsiniz if($result['statusID'] == 1 ){ // Ödeme Başarılı }else{ // Ödeme Başarısız }