Arama Yap Mesaj Gönder
Biz Sizi Arayalım
+90
X

Lütfen Ülke (Bölge) Seçiniz

Türkiye (Türkçe)Türkiye (Türkçe) Almanya (German)Almanya (German) Worldwide (English)Worldwide (English)
X

Lütfen Para Birimi Seçiniz

Türk Lirası $ US Dollar Euro
X

Lütfen Ülke (Bölge) Seçiniz

Türkiye (Türkçe)Türkiye (Türkçe) Almanya (German)Almanya (German) Worldwide (English)Worldwide (English)
X

Lütfen Para Birimi Seçiniz

Türk Lirası $ US Dollar Euro

Bilgi Bankası

Anasayfa Bilgi Bankası Genel PayTR iFrame API Entegrasyonu: Adım...

Bize Ulaşın

Konum Halkalı merkez mahallesi fatih cd ozgur apt no 46 , Küçükçekmece , İstanbul , 34303 , TR

PayTR iFrame API Entegrasyonu: Adım Adım Bilgilendirici Rehber

PayTR, türkiye merkezli ödeme altyapısı sağlayıcılarından biridir ve iFrame API entegrasyonu sayesinde web sitenize kolayca ödeme formu ekleyebilirsiniz. Bu makalede PayTR iFrame API entegrasyonunu en doğru ve güvenli şekilde nasıl yapabileceğinizi adım adım öğreteceğiz. Ayrıca PayTR entegrasyonunda karşılaşabileceğiniz kritik noktaları da örneklerle anlatacağız.

Ayrıca geliştirme sürecinizde REST API güvenlik iyileştirmeleri ve middleware kullanımı gibi konulara da dikkat etmenizi tavsiye ederiz:


PayTR iFrame API Entegrasyonu Nasıl Yapılır?

1. Adım: Token İsteği Oluşturma

iFrame ödeme formunu kullanabilmek için öncelikle bir token talebinde bulunmanız gerekiyor. Bu istek server tarafından (backend) POST yöntemiyle yapılmalı.

POST URL:

https://www.paytr.com/odeme/api/get-token

Zorunlu POST Parametreleri:

  • merchant_id: PayTR Mağaza ID

  • user_ip: Kullanıcının IP adresi

  • merchant_oid: Sipariş numarası

  • email: Kullanıcı email adresi

  • payment_amount: Ödeme tutarı (kuruş bazında)

  • currency: Para birimi (TL, USD, EUR vb.)

  • user_basket: Sepet içeriği (JSON formatında, base64 encoded)

  • no_installment: 0 veya 1

  • max_installment: En fazla taksit sayısı

  • paytr_token: Özel imzalanmış token değeri

  • merchant_ok_url, merchant_fail_url: Ödeme sonucu yönlendirme adresleri

  • user_name, user_address, user_phone

paytr_token Nasıl Hesaplanır?

$hash_str = $merchant_id.$user_ip.$merchant_oid.$email.$payment_amount.$user_basket.$no_installment.$max_installment.$currency.$test_mode;
$paytr_token = base64_encode(hash_hmac('sha256', $hash_str.$merchant_salt, $merchant_key, true));

2. Adım: iFrame ile Ödeme Formu Gösterme

Token alındıktan sonra, kullanıcıya aşağıdaki gibi bir iframe sunulur:

<script src="https://www.paytr.com/js/iframeResizer.min.js"></script>
<iframe src="https://www.paytr.com/odeme/guvenli/<?php echo $token;?>" id="paytriframe" frameborder="0" scrolling="no" style="width: 100%;"></iframe>
<script>iFrameResize({},'#paytriframe');</script>

3. Adım: Bildirim URL ile Kesin Ödeme Sonucu Alın

Müşteri ödeme yapıp merchant_ok_url'e yönlendirilse bile, gerçek sipariş onayı ya da iptali "Bildirim URL" (server tarafından alınan asenkron POST isteği) ile yapılır.

Önemli Not:

merchant_ok_url veya merchant_fail_url sayfalarında kesinlikle sipariş onayı/iptali yapmayın!

Sipariş işlemlerini sadece gelen asenkron bildirim POST isteği ile yürütün.


Örnek iFrame API Bağlantı Akışı

  1. Kullanıcı "Ödeme Yap" butonuna basar.

  2. Server, gerekli verileri toplayıp PayTR API'sinden iframe_token alır.

  3. Bu token ile bir iframe oluşturulur.

  4. Kullanıcı iframe üzerinden kart bilgilerini girerek ödeme yapar.

  5. Ödeme sonucunda PayTR, sisteminize Bildirim URL aracılığı ile sonucu bildirir.

  6. Siz de bu bildirim verisine göre siparişi onaylar veya iptal edersiniz.


Geliştirme ve Test Tavsiyeleri

  • Localhost geliştirme yaparken mutlaka dış IP adresinizi kullanın.

  • Test modunda debug_on=1 gönderin, hata mesajlarını net görün.

  • payment_amount değerini 100 ile çarparak gönderin.

  • merchant_oid değerini her ödeme için benzersiz yapın.


Sonuç: PayTR iFrame API ile Kolay ve Güvenli Ödeme Entegrasyonu

PayTR iFrame API, doğru uygulandığında hem kullanıcı dostu hem de PCI-DSS standartlarına uygun güvenli bir ödeme deneyimi sunar. Bu rehberi takip ederek sorunsuz ve profesyonel bir PayTR entegrasyonu gerçekleştirebilirsiniz.

Daha fazla API güvenlik bilgisi ve geliştirme pratiği için şu yazıları da mutlaka inceleyin:

Aradığınız Bilgiyi Bulamıyor musunuz?

Bilgi bankasını detaylı olarak incelediniz, fakat ihtiyacınız olan bilgiyi bulamıyorsanız,

Bir Destek Talebi Oluşturun.
Faydalı Buldunuz mu?
(1941 defa görüntülendi. / 160 kişi faydalı buldu.)

Ürün ve hizmetlerimiz hakkında daha detaylı bilgi almak için hemen arayın.

Top