PayPal, bu gibi çalışır:
Eğer bir "satın alma" düğmesi ile bir form var. Tıklandığında o zaman, PayPal bilgi (ürün, fiyat, hesap adınızı, vb) gönderir.
Alıcı daha sonra size ödemeyi kabul eder ve işlem tamamlandığında, PayPal bildirmek URL için bir "IPN" (anında ödeme bildirim) göndermek - işlemek için sunucu için bu URL'ye POST veri gönderir. Eğer onlar (yerine bir taklitçi değil) POST veri gönderdi ve onlar o zaman gerçek bir işlem olduğunu yanıt ise, müşteriye ürünü serbest eğer sormak için PayPal cevap. Lütfen alıcı PayPal web sitesinde "at" hala iken bu tüm arka planda olur unutmayın.
PayPal web sitenize alıcı döndüren bir nihai isteğe bağlı aşama vardır. Bu durumda, onlar geri "dönüş" url alıcı göndermek ve onlar (isteğe bağlı) (bu FDT diyoruz), yeniden işlem verilerini geri iletebilirsiniz. Ve yine bu geçerli bir işlem olup olmadığını Paypal ile kontrol ve bu noktada bir indirme vb sağlayabilir.
Kimse açıklıyor en zor biti buyer sizin bildirmek URL'ye yönlendirildi almaz olmasıdır. yani web sitenizin haber URL "ziyaretçi" PayPal, not the buyer, bu nedenle bu alıcının oturumun parçası olarak olmaz. Bu sürecin üç bölümden genelinde bir oturumu devam etmek istiyorsanız, o zaman formda alıcı izleme bir araç yaratmak ve "özel" olarak adlandırılan formun bir alanda PayPal bu geçmesi gerekiyor. Bu veriler IPN ve PDT veri size geri geçirilir ve özgün kullanıcı oturumu ile yeniden kurmak bir bağlantı için kullanabilirsiniz.
Eğer gerçekten IPN'i ve FDT hem de uygulamak gerekir - IPN-posta sonra bir yedek olarak FDT sahip başarısız olursa. Onlar geri PDT sayfasına yönlendirilirsiniz önce kullanıcının kendi web tarayıcısını kapatır ve eğer, o zaman bir yedek olarak bir IPN e-posta gönderdik.
IPN ve PDT arama ve bilgi oldukça bir sürü bulabilirsiniz. Paypal da tam dokümantasyon ve örnek komut dosyaları var.
Here's a PHP script Bunun için sorular tam olarak ne hemen hemen yok. O FDT işlemek değil unutmayın, bu yüzden risk IPN-posta alıcı ulaşmak için başarısız olabilir ve onlar ödemiş olacak ama hiçbir şey almış olmasıdır. Ama bu iyi bir başlangıç.