iyzico

iyzico sanal POS. Checkout Form ile kart ödemeleri; 3D Secure iyzico'nun sayfasında.

Gereken bilgiler

iyzico Yönetim Paneli → Ayarlar → API anahtarları:

  • api_key
  • secret_key

Panelinizde Ayarlar → Ödemeler → Yöntem ekle → iyzico seçin, iki değeri girin.

Sandbox: iyzico'nun test ortamı için sandbox-… ile başlayan anahtarları girin ve sandbox (test) modu kutusunu işaretleyin; panel istekleri sandbox-api.iyzipay.com'a gönderir. Canlıya geçerken canlı anahtarları girip kutuyu kaldırın.

Callback adresi her ödemeye otomatik eklenir; iyzico panelinde ayrıca bir ayar gerekmez. Adres kalıbı:

https://<panel-alan-adınız>/payments/iyzico/callback

Akış

  1. Müşteri tutarı ve telefon numarasını girer, iyzico'yu seçer. (Telefon iyzico'nun zorunlu alanıdır.)
  2. iyzico'nun barındırdığı ödeme sayfasına yönlendirilir; kart bilgisi ve 3D Secure orada, sizin sunucunuza kart verisi hiç uğramaz.
  3. Ödeme bitince iyzico müşterinin tarayıcısını panelinize geri gönderir. Bu dönüşte yalnız bir token vardır ve tek başına güvenilmez.
  4. Panel, token'ı sunucudan sunucuya imzalı bir istekle iyzico'ya sorar (retrieve). iyzico SUCCESS derse ve sepet numarası bizim ödememizse bakiye yüklenir; müşteri "Bakiye yükle" sayfasına başarı mesajıyla döner.
  5. Sonuç FAILURE ise ödeme "başarısız" olarak kaydedilir, iyzico'nun hata mesajı ödeme notuna yazılır.

Aynı token için ikinci dönüş yok sayılır; bakiye iki kez yüklenmez.

Dolandırıcılık incelemesi

iyzico bazı ödemeleri incelemeye alır (fraudStatus = 0). Böyle bir ödeme panelde beklemede görünür ve bakiye yüklenmez; iyzico onayladığında (yönetim panelinden ya da webhook ile) Admin → Ödemeler'den tamamlayabilirsiniz. Reddedilen ödeme (-1) başarısız sayılır.

Para birimleri

iyzico TRY, USD, EUR, GBP, NOK ve CHF kabul eder. Panelinizin para birimi bunlardan biri olmalı; iyzico'nun kabul etmediği bir birimde ödeme başlatılamaz.

Sık sorunlar

  • "callbackUrl gönderilmesi zorunludur" / SSL hatası: iyzico callback adresinin geçerli bir SSL sertifikası olmasını ister; panelinizin alan adı henüz bize yönlenmediyse ödeme başlatılamaz. Önce DNS devrini tamamlayın.
  • Sandbox'ta kart reddediliyor: iyzico'nun test kartlarını kullanın (dokümandaki "Test Cards" listesi); gerçek kart sandbox'ta çalışmaz.
  • Ödeme başarılı ama bakiye yok: Admin → Ödemeler'de kaydın notuna bakın. Retrieve çağrısı hata verdiyse (anahtar yanlış, sandbox/canlı karışmış) not orada.