PayTR Entegrasyon Hizmeti

WooCommerce, OpenCart ve özel PHP projeleri için PayTR iframe & Direct API entegrasyonu. Hesap başvurusundan canlıya alınmasına kadar tüm süreci biz yönetiyoruz. Standart iframe kurulumu 2-3 iş gününde tamamlanır.

0
Tamamlanan Ödeme Entegrasyonu
0
İş Günü — Ortalama Teslimat
0
Desteklenen Platform
0
Müşteri Memnuniyeti %

PayTR Nedir? Türkiye'nin Yerli Sanal POS Sağlayıcısı

PayTR, 6493 sayılı Ödeme ve Menkul Kıymet Mutabakat Sistemleri Kanunu kapsamında TCMB lisanslı, yerli sermayeli bir ödeme kuruluşudur. Türkiye'de yüz binlerce e-ticaret sitesine sanal POS hizmeti sağlamakta; kredi kartı, banka kartı ve taksit ödeme gibi temel yöntemlere ek olarak Pay-by-Link ve Recurring Payment gibi ileri düzey özellikler sunmaktadır.

PayTR'ın öne çıkan avantajı, kurulum ve aylık kira ücreti almamasıdır. Komisyon yalnızca başarılı işlemler üzerinden kesilir; oran sektör ve ciro bandına göre %1,49–2,99 + işlem başı sabit ücret aralığında belirlenir. Bu yapı, özellikle düşük hacimli başlangıç projelerinde öngörülebilir bir maliyet sağlar.

Teknik Not: PayTR, PCI-DSS Level 1 sertifikalı altyapı üzerinde çalışmaktadır. iframe entegrasyon yönteminde kart bilgileri sitenizden geçmez; bu durum, PCI-DSS uyumluluğunu PayTR'ın sorumluluğuna devreder.
PayTR ödeme entegrasyonu — güvenli sanal POS

PayTR Entegrasyon Yöntemleri

Projenizin gereksinimlerine göre dört farklı entegrasyon seçeneği sunulmaktadır.

iframe Yöntemi — En Yaygın Tercih

PayTR iframe entegrasyonunda ödeme formu, PayTR'ın kendi altyapısında barındırılan güvenli bir iframe içinde açılır. Kart bilgileri doğrudan PayTR sunucularına iletilir; sitenizin ne sunucusuna ne de veritabanına değer.

  • PCI-DSS yükümlülüğü PayTR'a devredilir
  • Kurulum süresi en kısa (2-3 iş günü)
  • WooCommerce, OpenCart ve Magento için resmi eklenti mevcut
  • Callback URL ile sipariş durumu otomatik güncellenir
Kısıt: iframe yönteminde ödeme sayfasının görsel tasarımı PayTR'ın standart şablonuyla sınırlıdır. Tamamen özel bir ödeme deneyimi için Direct API gerekir.
<?php
// PayTR iframe Token Üretimi (sunucu tarafı)
$merchant_id  = getenv('PAYTR_MERCHANT_ID');
$merchant_key = getenv('PAYTR_MERCHANT_KEY');
$merchant_salt = getenv('PAYTR_MERCHANT_SALT');

$user_ip      = $_SERVER['REMOTE_ADDR'];
$merchant_oid = 'SIPARIS-' . time();
$email        = $customer_email;
$payment_amount = $total_kuruş; // örn: 15000 = 150 TL

$user_basket = base64_encode(json_encode([
    ['Ürün Adı', '150.00', 1]
]));

$no_installment = 0; // 0 = taksit açık
$max_installment = 12;
$currency = 'TL';
$test_mode = 0; // canlıda 0

$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)
);
?>

Direct API — Özel UX İçin

Kart bilgileri sitenizin sunucusundan PayTR API'sine iletilir. Sepet tasarımı tamamen sizin kontrolünüzdedir, ancak PCI-DSS uyumluluğunu siz sağlamak zorunda kalırsınız. Yüksek ciro hacimli, marka tutarlılığını ön planda tutan projeler için tercih edilir.

PayTR mağaza panelinizden veya API aracılığıyla benzersiz bir ödeme linki oluşturursunuz. Linki WhatsApp, e-posta veya SMS üzerinden gönderin; müşteriniz bir e-ticaret sitesine ihtiyaç duymadan ödeme yapsın. Serbest çalışanlar ve danışmanlık firmaları için idealdir.

Recurring Payment — Abonelik Sistemi

Kayıtlı kart üzerinden otomatik aylık veya yıllık tahsilat yapılmasını sağlar. Abonelik platformları, SaaS ürünler ve üyelik siteleri için kritik bir özelliktir. İade ve iptal yönetimi API üzerinden yapılabilir.

PayTR Entegrasyonu Adım Adım — 7 Aşamalı Kurulum

Hesap başvurusundan canlıya alınmasına kadar standart süreç.

1

Hesap Başvurusu

PayTR.com'dan üye iş yeri başvurusu — vergi levhası, imza sirküleri ve ticaret sicil belgesiyle. Onay 2-5 iş günü.

2

Mağaza Onayı

PayTR'dan gelen onay e-postasıyla panele giriş yapılır, mağaza ayarları tamamlanır.

3

API Kimlik Bilgileri

merchant_id, merchant_key ve merchant_salt değerleri alınır; sunucu ortam değişkenlerine (env) güvenle eklenir.

4

SDK / iframe Kurulumu

WooCommerce için eklenti yüklenir ve yapılandırılır. Özel PHP projesi için token üretim kodu sunucu tarafına eklenir.

5

Callback URL Tanımlaması

merchant_ok_url, merchant_fail_url ve bildirim URL'si PayTR paneline eklenir; sunucu tarafında hash doğrulaması aktif hale getirilir.

6

Test Modu

PayTR test kartlarıyla başarılı ödeme, başarısız ödeme ve iade senaryoları simüle edilir; sipariş durumları doğrulanır.

7

Canlıya Alma

test_mode=0 olarak ayarlanır, ilk gerçek işlem izlenir, PayTR panelinden işlem logu doğrulanır.

PayTR Entegrasyon Hizmet Paketleri

Projenizin kapsamına göre sabit fiyatlı dört paket seçeneği.

WooCommerce PayTR Eklenti Kurulumu

Mevcut WooCommerce sitenize resmi PayTR eklentisinin kurulumu, API kimlik bilgileri yapılandırması, test ve canlıya alma. SSL doğrulaması ve temel webhook kurulumu dahil.

1.500 - 3.000 ₺ 1 gün

Özel Site PayTR iframe Entegrasyonu

Laravel, Symfony, CodeIgniter veya sade PHP projelerine iframe entegrasyon. Token üretimi, callback doğrulaması, sipariş durumu güncelleme ve başarısız ödeme yönetimi dahil.

3.000 - 7.000 ₺ 2-4 gün

Direct API Tam Entegrasyon

Özel sepet ve ödeme adımı tasarımı için Direct API entegrasyonu. Kart saklama, taksit tablosu, 3D Secure akışı ve tam özel UX. PCI-DSS kapsam değerlendirmesi dahil.

6.000 - 14.000 ₺ 5-10 gün

Recurring + İade Yönetim Sistemi

Abonelik SaaS ürünleri için otomatik aylık/yıllık tahsilat, kart güncelleme akışı, başarısız ödeme retry mantığı ve tam iade yönetim paneli.

8.000 - 20.000 ₺ 1-2 hafta

Desteklediğimiz Sistemler ve Platformlar

PayTR entegrasyonu aşağıdaki tüm platformlarda gerçekleştirilmektedir.

E-Ticaret Platformları

  • WooCommerce (WordPress)
  • OpenCart
  • Magento / Adobe Commerce
  • PrestaShop

PHP Framework'leri

  • Laravel
  • Symfony
  • CodeIgniter
  • Sade PHP (vanilla)

Diğer Dil / Platformlar

  • Django (Python)
  • Node.js / Express
  • ASP.NET / .NET Core
  • Ruby on Rails

PayTR ve iyzico Karşılaştırması

Hangi ödeme sistemi projenize daha uygun?

Kriter PayTR iyzico
Ödeme Sayfası iframe (PayTR hostingi) Klasik form + hosted page seçenekleri
Komisyon %1,49–2,99 + sabit ücret (ciroya göre) %2,99 başlangıç (ciro bazlı indirim)
Aylık Kira Yok Yok
Pay-by-Link Güçlü — panel + API desteği Mevcut, API entegrasyon gerektirir
Taksit Yönetimi Kampanya ve banka bazlı taksit paneli Standart banka taksit desteği
Teknik Dokümantasyon Türkçe — örnek kodlar mevcut Türkçe + İngilizce — kapsamlı SDK
Başvuru Süresi 2-5 iş günü 1-3 iş günü
Recurring Payment API ile desteklenir API ile desteklenir
Öneri: PayTR, yerli sermayeli yapısı ve Pay-by-Link'in güçlü panel desteğiyle öne çıkar. iyzico ise uluslararası SDK zenginliği ve daha hızlı başvuru süreci açısından avantajlıdır. Her iki entegrasyonu da yapıyoruz — iyzico entegrasyon hizmetimize de göz atabilirsiniz.

PayTR Komisyon ve Ücret Yapısı

Başlamadan önce bilmeniz gerekenler.

Komisyon Oranı

%1,49–2,99 + işlem başı sabit ücret. Kesin oran sektörünüze ve aylık ciroya göre PayTR tarafından belirlenir. Sözleşme imzalandıktan sonra oran sabitleşir.

Sabit Ücretler

Kurulum ücreti yok. Aylık kira yok. Yalnızca başarılı işlemler komisyon doğurur; başarısız veya iptal edilen işlemler için ücret kesilmez.

Taksit Komisyonu

Taksitli işlemlerde ek komisyon uygulanır. Taksit kampanyalarını mağaza panelinizden belirli bankaları ve taksit sayılarını seçerek yönetebilirsiniz.

Güvenlik: iframe Yöntemi ve PCI-DSS

PCI-DSS (Payment Card Industry Data Security Standard), kart verisi işleyen tüm sistemlerin uymak zorunda olduğu uluslararası güvenlik standardıdır. Kendi sunucunuzda kart bilgisi işlediğinizde bu standardı kendiniz sağlamak zorundasınızdır; bu süreç yılda birkaç bin dolara ulaşabilen bağımsız denetim ve sertifikasyon içerir.

PayTR iframe yönteminde kart numarası, CVV ve son kullanma tarihi sitenizin sunucusuna hiç ulaşmaz. Veri doğrudan PayTR'ın PCI-DSS Level 1 sertifikalı altyapısına iletilir. Bu sayede:

  • PCI-DSS denetimi yükümlülüğü sizden kalkar
  • Kart veri ihlali riski sitenizde sıfırlanır
  • Banka uyum gereksinimleri daha kolay karşılanır
PayTR PCI-DSS güvenli ödeme entegrasyonu

Callback URL ve Webhook Yönetimi

Callback (bildirim) URL'si, PayTR'ın ödeme sonucunu sunucunuza ilettiği endpoint'tir. Bu endpoint doğru yapılandırılmazsa sipariş durumu hiçbir zaman güncellenmez. Yaygın hata: callback'i yalnızca başarılı senaryolar için kurmak; başarısız ve iptal senaryolarını atlamak.

Kritik: PayTR, bildirimi POST yöntemiyle gönderir ve yanıt olarak OK metni bekler. Sunucu OK dönmezse PayTR 10 dakika aralıklarla 24 saat boyunca yeniden dener. hash parametresini doğrulamadan işlem kaydı yapmayın — kötü niyetli isteklere açık kapı bırakmış olursunuz.
<?php
// callback.php — sunucu tarafı PayTR bildirim doğrulaması
$merchant_key  = getenv('PAYTR_MERCHANT_KEY');
$merchant_salt = getenv('PAYTR_MERCHANT_SALT');

$post = $_POST;
$hash = base64_encode(
    hash_hmac('sha256',
        $post['merchant_oid'] . $merchant_salt . $post['status'] . $post['total_amount'],
        $merchant_key, true
    )
);

if ($hash !== $post['hash']) {
    die('PAYTR notification rejected: hash mismatch');
}

if ($post['status'] === 'success') {
    // Siparişi PAID olarak işaretle
} else {
    // Başarısız ödeme — müşteriyi bilgilendir
}

echo 'OK'; // PayTR bu metni bekliyor
?>

Sık Sorulan Sorular

WooCommerce eklenti kurulumu 1 iş günü, özel site için iframe entegrasyonu 2-3 iş günü, Direct API ile tam özel sepet entegrasyonu ise 5-10 iş günü sürmektedir.

iframe yönteminde kart bilgileri PayTR'ın güvenli sayfasında alınır, PCI-DSS yükümlülüğü PayTR'a geçer. Direct API'de kart bilgileri sunucunuzdan geçer; özel UX sağlar ancak PCI-DSS uyumluluğunu siz sağlamak zorunda kalırsınız.

PayTR komisyonu %1,49-2,99 + işlem başı sabit ücret aralığında değişmekte olup kesin oran ciro ve sektörünüze göre PayTR tarafından belirlenir. Taksitli işlemlerde ek komisyon uygulanır. Aylık kira veya kurulum ücreti yoktur.

PayTR.com üzerinden "Üye İş Yeri Başvurusu" bölümünden şirket belgelerinizle başvuru yapıp mağaza onayını beklersiniz. Onay genellikle 2-5 iş günü sürer. Onay sonrası merchant_id, merchant_key ve merchant_salt bilgileri tanımlanır.

Evet, PayTR Visa ve Mastercard'a ait bankalarda 2-12 taksit seçeneklerini destekler. Taksit komisyonu standart komisyonun üzerindedir ve mağaza panelinizden yönetilir.

Pay-by-Link, PayTR mağaza panelinizden veya API aracılığıyla oluşturulan benzersiz bir ödeme linki oluşturur. Bu linki WhatsApp, e-posta veya SMS ile müşterinize gönderirsiniz; müşteri e-ticaret sitenize gitmeden ödeme yapabilir.

Evet, PayTR'ın resmi WooCommerce eklentisi mevcuttur. Eklenti kurulumu ve mağaza ayarlarının yapılandırılması genellikle 1 iş günü içinde tamamlanır.

Evet, PayTR Recurring Payment API ile kayıtlı kart üzerinden otomatik aylık/yıllık tahsilat yapılabilir. Abonelik sistemi kurulumu entegrasyon hizmetimiz kapsamında gerçekleştirilir.

İade işlemleri PayTR mağaza panelinden manuel olarak veya PayTR İade API endpoint'i aracılığıyla programatik olarak gerçekleştirilebilir. Kısmi ve tam iade her iki yöntemle de desteklenir.

PayTR, fail_url parametresine yönlendirme yapar. Callback doğrulaması sunucu tarafında yapılmalı; başarısız işlem için müşteriye hata açıklaması gösterilip yeniden deneme imkânı sunulmalıdır. Hash token doğrulamasının atlanması yaygın bir nedendir.

Hayır. Kotivon ekibi hesap başvurusundan canlıya alınmasına kadar tüm süreci yönetir. Sadece PayTR mağaza onayı ve API kimlik bilgilerini almanız yeterlidir.

PayTR Entegrasyonu: iframe, Direct API ve Pay-by-Link Üzerine Operasyonel Rehber

PayTR entegrasyonu, kart bilgilerinin PayTR'ın güvenli iframe'inde alınıp sitenizden geçmemesini sağlayan bir ödeme sistemi kurulumudur. Standart iframe kurulumu 2-3 iş günü sürer. Ancak entegrasyon kararını doğru vermek, hem teknik yükü hem de uzun vadeli bakım maliyetini doğrudan etkiler; bu yüzden her yöntemi operasyonel düzeyde anlamak gerekir.

iframe Yöntemi: Neden Çoğu Proje için Doğru Başlangıç Noktasıdır

iframe yöntemi, PayTR'ın kendi sunucularında barındırdığı ödeme sayfasını sitenize bir çerçeve içinde gömmek anlamına gelir. Kullanıcı görsel olarak sitenizden ayrılmaz, ancak kart verisinin gittiği yer PayTR sunucularıdır. Bu mimari seçim beraberinde somut ticari avantajlar getirir: PCI-DSS sertifika denetiminden muaf olursunuz, sigorta primleriniz düşer ve güvenlik ihlali sorumluluğu büyük ölçüde PayTR'a geçer.

Teknik açıdan değerlendirildiğinde, iframe yönteminin en kritik parçası sunucu tarafında doğru token üretmektir. merchant_id, user_ip, merchant_oid, email, payment_amount, user_basket, no_installment, max_installment, currency ve test_mode parametrelerinden oluşturulan hash_hmac SHA-256 tokenı, her istek için benzersiz olmalı ve asla istemci tarafında üretilmemelidir. Token üretiminin frontend'e taşınması, PayTR'ın tokenı reddetmesine neden olur.

Sık Yapılan Hata: Token'ı JavaScript ile üretmeye çalışmak. merchant_key değeri istemci tarafında hiçbir zaman açığa çıkmamalıdır. Tüm token hesaplaması PHP, Python, Node.js veya kullandığınız dildeki sunucu tarafı kodunda gerçekleşmelidir.

Direct API: Ne Zaman Tercih Edilmeli?

Direct API, kart bilgilerinin kendi sunucunuzdan PayTR API'sine iletildiği yöntemdir. Sepet adımından ödeme onayına kadar ekran tasarımı tamamen sizin kontrolünüzdedir. Büyük e-ticaret markaları, özel ödeme adımı animasyonları veya marka kimliğiyle bütünleşik ödeme akışları gerektiren SaaS ürünleri için Direct API anlamlıdır.

Ancak tradeoff net olarak anlaşılmalıdır: kart bilgisi sunucunuzdan geçtiği anda PCI-DSS kapsamına girersiniz. Bu, yıllık bağımsız güvenlik denetimi, kart veri şifreleme, log yönetimi ve çeşitli teknik kontroller anlamına gelir. Aylık işlem hacmi ve teknik ekip kapasitesi değerlendirilerek bu maliyet iframe yöntemine kıyasla ölçülmelidir.

Pay-by-Link, PayTR'ın en az teknik kurulum gerektiren ve en hızlı gelir elde edilebilen özelliğidir. Mağaza panelinizden ürün adı, tutar ve açıklamayla bir ödeme linki oluşturursunuz. Bu linki WhatsApp mesajına, e-postaya, faturanıza veya Instagram profilinize ekleyebilirsiniz. Müşteri linke tıkladığında doğrudan PayTR'ın güvenli ödeme sayfasına yönlendirilir.

API entegrasyonu yapıldığında linkler programatik olarak üretilebilir: sipariş kaydı oluşturulduğunda otomatik bir ödeme linki üretip müşteriye e-posta veya SMS göndermek, link açıldığında takip etmek ve link süresi dolduğunda yeni link üretmek gibi senaryolar tamamen otomatize edilebilir. Danışmanlık firmaları, serbest çalışanlar ve muhasebe yazılımı entegrasyonu yapanlar için özellikle pratik bir yöntemdir.

WooCommerce PayTR Kurulumu: Eklenti mi, Özel Kod mu?

PayTR'ın resmi WooCommerce eklentisi çoğu standart mağaza için yeterlidir. Eklenti kurulduktan sonra WooCommerce > Ayarlar > Ödemeler ekranından merchant_id, merchant_key ve merchant_salt değerleri girilir. Test modu aktif edilip deneme siparişi tamamlandığında callback alındıysa ve sipariş durumu "İşleme Alındı" olarak güncellendiyse entegrasyon tamamdır.

Özel ödeme akışı, çoklu döviz desteği veya abonelik ürünleriyle çalışıyorsanız WooCommerce Subscriptions veya WooCommerce Payments entegrasyonuyla birlikte özel PHP kodu gerekebilir. Bu durumda Kotivon ekibi mevcut eklentiyi temel alarak özel hook ve filtrelerle entegrasyonu genişletir; eklentiyi sıfırdan yeniden yazmak yerine mevcut ekosistemi korur.

Recurring Payment: Abonelik Sisteminde Dikkat Edilmesi Gerekenler

PayTR Recurring Payment API, kullanıcının ilk ödeme sırasında kartını kaydetmesine ve sonraki tahsilatların otomatik yapılmasına olanak tanır. Kritik operasyonel detaylar şunlardır:

  • Başarısız tahsilat durumunda müşteriyi bilgilendirme ve kart güncelleme akışı zorunludur.
  • Abonelik iptal ve duraklatma senaryoları PayTR panelinden veya API ile yönetilir.
  • Kısmi ve tam iade PayTR İade API'si üzerinden programatik olarak tetiklenebilir.
  • KVKK kapsamında kart saklama onayı kullanıcıdan açıkça alınmalı ve kayıt altına alınmalıdır.

Test'ten Canlıya Geçiş: Atlanan Adımlar

Test modunda her şey çalışıyorken canlıya geçişte sorun yaşanmasının en yaygın nedenleri şunlardır: test_mode parametresinin 0 yapılmayı unutulması, sunucu ortam değişkenlerinin (env) canlı sunucuya taşınmaması ve SSL sertifikasının callback URL'sini kapsamaması. PayTR, bildirim URL'leri için HTTPS zorunlu kılar; HTTP callback URL'leri canlıda çalışmaz.

Kotivon ekibi, canlıya almadan önce kontrol listesi adımlarını sistematik biçimde uygular: test kart numaralarıyla başarılı, başarısız ve kısmi iade senaryoları test edilir; tüm webhook bildirimleri log dosyasına yazılır ve ardından canlıya geçilir. İlk gerçek işlem bizzat takip edilip PayTR panelindeki işlem kaydıyla çapraz doğrulanır.

  • PayTR iframe yöntemi PCI-DSS yükünü PayTR'a devreder, en hızlı kurulum seçeneğidir.
  • Direct API tam UX kontrolü sağlar ancak PCI-DSS kapsamına girer.
  • Pay-by-Link altyapı gerektirmeden satış imkânı sunar.
  • Callback doğrulaması hash ile yapılmalı; doğrulamasız callback asla işleme alınmamalıdır.
  • WooCommerce için resmi eklenti çoğu mağaza senaryosunu karşılar; özel ihtiyaçlar için hook genişletmesi kullanılır.

PayTR entegrasyonu için ücretsiz danışmanlık almak veya bütçenize uygun teklif oluşturmak için teklif hesaplayıcımızı kullanabilir ya da iletişim sayfamızdan doğrudan ulaşabilirsiniz.

PayTR Entegrasyonunuzu Bugün Başlatın

WooCommerce'den özel PHP projesine, iframe'den Direct API'ye — hangi senaryo olursa olsun projenize uygun yöntemi belirleyip 2-3 iş günü içinde canlıya alıyoruz.