WooCommerce Sipariş İadesi ve İptali: Sanal POS ile Nasıl Yapılır?

WooCommerce sipariş iptali ve para iadesi arasındaki farklar; iyzico, PayTR ve NestPay banka sanal POS’ları ile tek tıkla iade süreci ve hata kodları.

Cenk Zafer Akkaya9 dk okuma
Bu yazıda 9 bölüm
  1. İptal (Void) ve İade (Credit/Refund) arasındaki fark nedir?
  2. WooCommerce sipariş iptali para iadesi nasıl çalışır?
  3. Sanal POS iade nasıl yapılır? Banka POS'larında süreç
  4. iyzico ve PayTR iade işlemleri
  5. Banka iadeyi reddederse ne olur? Hata kodları
  6. Cayma hakkı ve yasal iade süreci
  7. Invum POS planlarında iade özellikleri
  8. Özet
  9. Sık sorulan sorular

E-ticaret yapıyorsanız, sipariş iadeleri işinizin doğal ve ayrılmaz bir parçasıdır. Müşteri fikrini değiştirebilir, yanlış ürün seçmiş olabilir veya kargoda yaşanan bir gecikme nedeniyle ürünü almaktan vazgeçebilir. Bazen de siz stok sorunu yaşayabilir ve ürünü gönderemeyebilirsiniz. Bu gibi durumlarda müşterinin parasını hızlı, güvenli ve sorunsuz bir şekilde geri vermek, marka güveniniz için çok önemlidir. İade sürecini ne kadar pürüzsüz yönetirseniz, müşterinin mağazanızdan tekrar alışveriş yapma olasılığını o kadar artırırsınız.

WooCommerce mağazanızda iade süreçlerini yönetmek ilk bakışta karmaşık görünebilir. Siparişi WooCommerce üzerinden iptal edip, daha sonra banka veya ödeme kuruluşunun paneline giriş yaparak ilgili işlemi aramak, tutarı eşleştirmek ve iadeyi manuel olarak tetiklemek hem zaman alır hem de insan hatasına açıktır. Ancak, doğru sanal POS entegrasyonu ile bu işlemi WooCommerce sipariş yönetim ekranından tek tıkla çözebilirsiniz.

Bu yazıda “woocommerce iade” işlemlerinin arka planını, sipariş iptali ile para iadesi arasındaki teknik farkları ve ödeme kuruluşlarının bu süreci nasıl işlediğini detaylıca anlatıyoruz. Amacımız, iade sürecinde arka planda neler olduğunu anlamanızı sağlayarak operasyonlarınızı kolaylaştırmaktır.

İptal (Void) ve İade (Credit/Refund) arasındaki fark nedir?

Günlük hayatta mağaza yöneticileri veya müşteriler “siparişi iptal ettim” ya da “ürünü iade ettim” derken genellikle aynı sonucu kasteder: Ürün gönderilmez ve para iade edilir. Ancak sanal POS altyapısında ve bankacılık terimlerinde “iptal” (void) ve “iade” (refund veya credit) birbirinden tamamen farklı işleyen iki ayrı teknik işlemdir.

Müşteri sitenizden kredi kartıyla ödeme yaptığında, para anında sizin banka hesabınıza geçmez. İlk aşamada bankadan bir “provizyon” alınır ve kart limitinden ilgili tutar bloke edilir. Banka gün sonunda sistemlerinde gün sonu işlemini (batch close) yapar ve o günkü bekleyen tüm işlemleri kesinleştirerek hesaplaşma aşamasına geçirir.

Eğer siparişi aynı gün içinde, banka gün sonu işlemini yapmadan önce ve tutarın tamamı için geri çevirirseniz, bu işlem iptal (void) olarak adlandırılır. İptal işleminde provizyon tamamen silinir. Sistem açısından o para karttan hiç çekilmemiş gibi işlem görür.

Eğer gün sonu yapıldıktan sonra, ertesi gün veya daha sonraki günlerde işlemi geri çevirirseniz, bu işlem artık iade (credit veya refund) olur. Para karttan çekilmiş, gün sonu kapanmış ve hesaplaşma (settlement) gerçekleşmiştir. Bu aşamada siz, kendi üye işyeri hesabınızdan müşterinin kartına parayı geri gönderirsiniz.

Ayrıca, tutarın sadece bir kısmını geri veriyorsanız (örneğin müşteri üç üründen sadece birini iade ediyorsa), işlem yapıldığı gün bile olsa bu işlem her zaman iade (credit) olarak geçer. İptal (void) işlemi bir ödemenin sadece tamamı için yapılabilir, işlemi tamamen yok ettiği için kısmi iptal yapılamaz.

Durumİşlem Tipi (Teknik)Açıklama
Aynı gün, tam tutarİptal (Void)Gün sonu öncesi yapılır. Provizyon iptal edilir.
Ertesi gün veya sonrası, tam tutarİade (Credit/Refund)Gün sonu sonrasıdır. Hesabınızdan müşterinin kartına para iadesi yapılır.
Herhangi bir gün, kısmi tutarİade (Credit/Refund)İptal işlemi kısmi olamayacağı için her zaman iade akışı çalışır.

WooCommerce sipariş iptali para iadesi nasıl çalışır?

WooCommerce altyapısı, sipariş detayları ekranında varsayılan olarak bir “İade Et” düğmesi sunar. Sipariş yönetimi yaparken bu düğmeyi kullanarak ürün stoklarını geri alabilir ve iade edilecek tutarı belirleyebilirsiniz. Eğer mağazanızda doğru yapılandırılmış, API destekli bir sanal POS eklentisi kullanıyorsanız, iade işlemi yalnızca WooCommerce veritabanında kalmaz, doğrudan bankaya da iletilir.

İade Et düğmesine bastığınızda eklenti, parayı çeken POS hesabını ve işlemin referans numaralarını arka planda kendisi bulur. Hangi siparişin hangi bankadan veya sağlayıcıdan çekildiğini hatırlamanıza gerek kalmaz. Sizin banka paneline veya ödeme kuruluşu paneline gidip işlemi elle aramanıza, tutarı kontrol etmenize gerek yoktur. İlgili tutar doğrudan müşterinin kartına geri gönderilmek üzere altyapıya iletilir.

Bu noktada müşterileriniz sıkça iadenin ne zaman hesaplarına geçeceğini soracaktır. İade işleminin süresi kartı çıkaran bankaya göre değişir. Siz WooCommerce üzerinden iadeyi onayladığınızda eklenti bunu anında işleme alır ve ödeme altyapısına iletir. Ancak paranın müşterinin ekstresine veya hesabına yansıması, tamamen müşterinin kendi bankasının iç süreçlerine bağlıdır. Bu süreç mağazanızın kontrolünde değildir.

Sanal POS iade nasıl yapılır? Banka POS’larında süreç

Bankaların sanal POS altyapılarında iptal ve iade süreçleri, ödeme kuruluşlarına göre daha katı kurallara ve farklı entegrasyon standartlarına bağlıdır. Birden fazla bankanın altyapısını yönetirken, eklentinizin bankanın beklediği kuralları bilmesi ve ona göre davranması gerekir.

Örneğin Akbank, Ziraat Bankası, İş Bankası, Halkbank gibi NestPay (EST) altyapısı kullanan bankalarda işlem yaparken, eklentinin iptal ve iade arasında akıllıca karar vermesi önemlidir. Invum POS, NestPay bankaları için arka planda otomatik bir karar mekanizması işletir:

  • Eğer işlem aynı gün yapılmışsa ve tam tutar iade ediliyorsa, eklenti bankaya önce “İptal (Void)” isteği gönderir.
  • Eğer o esnada banka gün sonunu sizden önce kapatmışsa ve iptal isteğini reddederse, eklenti işlemi otomatik olarak “İade (Credit)” isteğine çevirerek yeniden dener.
  • Öte yandan, kısmi bir tutar girmişseniz, eklenti iptal (void) denemez. Kısmi iade her zaman iade (credit) olarak bankaya iletilir. Aksi halde yanlışlıkla siparişin tüm tutarının müşteriye geri verilmesi riski doğar.

Farklı banka altyapıları, aynı işlem için farklı parametreler talep edebilir. Örneğin, Garanti BBVA NestPay’i değil kendi altyapısını kullanır ve iade için ayrı bir iade kullanıcısı (çoğunlukla PROVRFN) ister; iade ve iptal bu kullanıcıyla yapılır. Bu yüzden Garanti’ye başvururken iade kullanıcısını da istemeyi unutmayın. Eklenti her ödeme denemesini kendi sipariş numarasıyla gönderir ve iadeyi de bu numarayla yapar. Banka POS’ları ile diğer ödeme sistemlerinin temel çalışma farklarını merak ediyorsanız sanal POS nedir yazımızı inceleyebilirsiniz.

iyzico ve PayTR iade işlemleri

Eğer banka POS’u yerine iyzico veya PayTR gibi bir ödeme kuruluşu kullanıyorsanız, iade süreci bankalara benzer bir güvenlikle ve pratiklikle ilerler. Invum POS’un ücretsiz Lite sürümü ile iyzico ve PayTR üzerinden WooCommerce sipariş iadelerini doğrudan panelinizden yapabilirsiniz.

iyzico iade WooCommerce entegrasyonu

iyzico, siparişleri sepet tabanlı bir yaklaşımla işler. Müşteri sepetine birden fazla ürün eklediğinde, iyzico bunları kendi sisteminde ayrı işlem satırları (item transactions) olarak kaydeder. Invum POS, ödeme başarılı olduğunda iyzico’nun döndürdüğü işlem kimliğini siparişe kaydeder ve iade anında bu kimlikle iyzico’nun iade servisine istek gönderir. Bu yapı sayesinde, iyzico panelinize giriş yapmanıza gerek kalmadan WooCommerce üzerinden iadenizi sorunsuzca yönetebilirsiniz.

PayTR iade süreci

PayTR tarafında mağazalar, tercihlerine göre iFrame (ödeme formu) veya Direkt API altyapılarını kullanabilir. PayTR’de iade süreci, her iki entegrasyon yönteminde de aynı özel servis uç noktası üzerinden yönetilir. WooCommerce sipariş detaylarından iade başlattığınızda, eklenti WooCommerce sipariş numarası, iade edilecek tutar ve mağazanıza ait gizli anahtarlarınızla güvenli bir kriptografik şifre (token) oluşturur. Bu şifre ile PayTR sistemine istek atılır. Anahtarlarınız yanlışsa PayTR isteği reddeder ve ret nedeni sipariş notuna yazılır.

Banka iadeyi reddederse ne olur? Hata kodları

Her iade işlemi her zaman başarıyla sonuçlanmayabilir. WooCommerce panelinizden “İade Et” tuşuna bastığınızda, işlem başarısız olursa ekranda ERR_REFUND_FAILED gibi hata kodları görebilirsiniz.

Invum POS, banka veya ödeme kuruluşu bir iadeyi reddettiğinde, bu ret nedenini işlem geçmişine bakabilmeniz için sipariş notuna detaylı olarak yazar. Yaygın iade reddi nedenleri şunlardır:

  • Asıl ödeme işlemi banka sisteminde bulunamadı ya da bu işlem zaten daha önce iade edilmiş.
  • Girdiğiniz kısmi iade tutarı, ilk ödeme tutarını aşıyor.
  • Ödeme yöntemine ait API bilgileriniz geçersiz veya şifrenizin süresi dolmuş.
  • PayTR’de iade süresi dolmuş olabilir (süre bankaya göre değişir).

Eğer iade işlemi WooCommerce üzerinden geçmiyorsa ve hata alıyorsanız, ilgili hatayı WooCommerce sipariş notlarında inceleyebilirsiniz. Karşılaştığınız yaygın hatalar hakkında daha fazla bilgi için POS ve banka hata kodları kılavuzumuza bakabilirsiniz.

Cayma hakkı ve yasal iade süreci

E-ticaret sitenizden alışveriş yapan tüketicilerin yasal bir iade hakkı vardır. Mesafeli Sözleşmeler Yönetmeliği kapsamında, müşterileriniz satın aldıkları ürünleri teslim aldıktan sonra mevzuatta belirtilen süre içinde hiçbir gerekçe göstermeden siparişi iade etme, yani cayma hakkına sahiptir.

Bu süreci yönetmek için sitenizde ödeme adımından önce müşteriye Mesafeli Satış Sözleşmesi ve Ön Bilgilendirme Formu sunmanız zorunludur. Müşteri yasal süre içinde cayma hakkını kullanarak iade talebinde bulunduğunda ve ürünü size geri gönderdiğinde, siz de ürün bedelini iade etmekle yükümlüsünüz. Siz para iadesini gerçekleştirdikten sonra, tutarın müşterinin kartına ne zaman yansıyacağı tamamen kartı çıkaran bankaya göre değişir. İadenin sizin tarafınızdan hemen yapıldığını ancak karta yansımanın banka süreçlerine bağlı olduğunu sitenizin iade politikası sayfasında şeffafça açıklamanız müşteri ilişkileri açısından oldukça faydalıdır.

Invum POS planlarında iade özellikleri

Invum POS, tek bir WooCommerce mağazasından büyük ajanslara kadar her ölçekteki işletme için uygun çözümler sunar. iyzico ve PayTR iade özellikleri eklentinin doğrudan ücretsiz Lite sürümünde kullanıma hazırdır.

Banka POS’larını doğrudan mağazanıza bağlamak isterseniz ücretli planlarımız devreye girer. Tüm ücretli planlarımız yıllık olarak ücretlendirilir, fiyatlara KDV dahildir ve hiçbir planımızda otomatik yenileme yoktur:

  • Pro Plan (₺3.500): 19 entegrasyonun tamamını kapsar: NestPay altyapılı 12 banka (Akbank, Alternatif Bank, Anadolubank, Cardplus, Halkbank, ING, İş Bankası, QNB, Şekerbank, TEB, Türkiye Finans, Ziraat Bankası), Garanti BBVA, Yapı Kredi (Posnet), VakıfBank (PayFlex), Craftgate ve Moka. Bu planla birlikte akıllı iptal/iade karar mekanizmasından yararlanırsınız.
  • Studio Plan (₺4.990): Pro plandaki her şeye ek olarak gelişmiş kuralları (BIN, taksit sayısı, azami taksit sınırı) ve Paid Memberships Pro ile GiveWP köprülerini içerir.
  • Agency Plan (₺9.490): Studio planına ek olarak 5 canlı ve 5 test site, kural içe/dışa aktarma, beyaz etiket ve dört ek köprü (EDD, LearnPress, Events Calendar, Traveler) sunar.

Hangi bankalarla çalışıyorsanız veya çalışmayı planlıyorsanız, Invum POS planları sayfamızdan işletmenize en uygun olanı seçebilirsiniz.

Özet

  • İptal ve iade farklıdır: Aynı gün tam tutar geri verilirse “iptal” (void), gün sonu geçtikten sonra veya kısmi tutar geri verilirse “iade” (credit) olur.
  • Doğru sanal POS eklentisiyle, manuel işlem yapmadan WooCommerce sipariş ekranındaki “İade Et” düğmesi ile işlemi doğrudan bankaya iletebilirsiniz.
  • NestPay bankalarında eklenti aynı gün iadesinde otomatik olarak “İptal (Void)”, gün sonu geçmişse “İade (Credit)” dener; kısmi iadeler daima iade olarak gider.
  • iyzico ve PayTR için de WooCommerce panelinden çıkmadan iade mümkündür. PayTR güvenli şifreleme ile, iyzico ise sipariş satır kimlikleriyle işlemi gerçekleştirir.
  • Banka iadeyi reddederse, asıl işlemin bulunamaması veya sürenin dolması gibi ret nedenleri WooCommerce sipariş notlarına işlenir.
  • İade işlemini yaptığınızda paranın müşterinin kartına yansıma süresi, mağazanıza değil müşterinin bankasına bağlıdır.

Sık sorulan sorular

Sanal POS iadesi kaç günde hesaba geçer?

Siz iadeyi WooCommerce üzerinden onayladığınızda işleminiz anında ödeme kuruluşuna iletilir. Ancak tutarın müşterinin ekstresine yansıma süresi kartı çıkaran bankaya göre değişir.

Kısmi iade yaparsam gün sonu beklenir mi?

Hayır, kısmi iadeler aynı gün yapılsa bile ödeme sistemlerinde iptal olarak değil, her zaman iade olarak işlenir. Parayı çeken POS hesabı üzerinden doğrudan iade işlemi başlatılır ve bankaya iletilir.

ERR_REFUND_FAILED hatası alıyorum, param gitti mi?

Hayır, bu hata iade isteğinizin ödeme altyapısı tarafından reddedildiği anlamına gelir. Asıl işlem bulunamamış, iade süresi dolmuş veya iade tutarı hatalı olabilir. Red nedeni sipariş notlarınıza yazılır. Gerekirse iadeyi sağlayıcının panelinden yapıp WooCommerce siparişine elle kaydedebilirsiniz.

WooCommerce sipariş ekranında İade Et butonu yok, ne yapmalıyım?

Düğme yalnızca ödemesi alınmış (İşleniyor ya da Tamamlandı durumundaki) siparişlerde çıkar. Sipariş beklemedeyse ödeme hiç alınmamıştır; iade edilecek bir tutar yoktur.

Ücretsiz Invum POS Lite ile iyzico ve PayTR iadesi yapabilir miyim?

Evet, ücretsiz Lite sürümümüz iyzico ve PayTR ödemelerinde WooCommerce sipariş ekranından iadeyi destekler.