2012-05-08 19 views
5

mam dużo kłopot głowę wokół tej płatności paypal rzeczy ...PayPal subskrypcje PDT/IPN - Proszę

Jak mogę potwierdzić, że użytkownik został pomyślnie zarejestrowany dla mojego abonamentu?

Znam 0 o IPN, ale na przykład: jeśli użytkownik zarejestruje się na mojej stronie internetowej pod adresem [email protected], ale skorzysta z konta paypal na przykł[email protected]@.com, aby zapłacić, a następnie, jak dopasować użytkownika.

Czytałem, że PDT nie wysyłają identyfikatora transakcji (tx) dla powtarzających się płatności (subskrypcji), czy to prawda?

Wystarczy pomóc z nim wszystko ... uczciwy i łatwe :)

Dzięki.

Odpowiedz

3

Tak, czasami trudno jest zrozumieć Paypal i całą ich dokumentację, ale dla każdego rodzaju abonamentu polecam Paypal IPN. Ustawiłeś URL IPN na swoim koncie paypal, na przykład: http://www.domain.com/ipn.php. Następnie należy utworzyć przycisk subskrypcji w paypal konta, gdzie można ustawić cenę, powtarzające cen itp

Więcej o Paypal IPN można przeczytać tutaj: https://www.paypal.com/ipn

Podczas tworzenia przycisku PayPal można również dodać kilka pól niestandardowych który może pomóc ci ustalić, który klient naprawdę płaci. Na przykład masz bazę użytkowników i jest użytkownik z userid = 100, username = Nickname i [email protected] Teraz możesz zdecydować, aby dodać userid = 100 jako pole niestandardowe i dodać to do przycisku PayPal. Na przykład CUSTOM = 100.

ipn.php w tym przypadku jest skryptem, który obsługuje całą logikę. Gdy użytkownik płaci, Paypal wysyła dowolny status do http://www.domain.com/ipn.php (ustawiasz go na swoim koncie PayPal jako IPN URL). Więc ipn.php w tym przypadku musi sprawdzić, czy płatność jest zakończona, a stan jest w porządku. Następnie pobierz pole CUSTOM ($ _POST ['custom']), które w tym przypadku wynosi 100 (identyfikator użytkownika). A następnie zaktualizuj bazę danych o użytkowników i w jakiś sposób oznaczyć, że ten użytkownik zapłacił oczywiście, jeśli status jest ukończony.

Mam nadzieję, że to trochę pomaga. Ale w tym przypadku nie jest tak naprawdę ważne, z którego konta paypal użytkownik płaci i który jest zarejestrowany w bazie danych. Wszystko czego potrzebujesz to to, że w jakiś sposób łączysz to ze sobą. W tym przypadku z identyfikatorem użytkownika lub czymś podobnym.

+0

w przypadku testu podczas korzystania z piaskownicy, z którego adresu URL powracać, i którego konta powinniśmy użyć? dzięki –

+0

Tak, to kolejny ból :) Zarejestruj nowe konto sandbox przy użyciu Twojego PRAWDZIWEGO adresu e-mail (https://developer.paypal.com/).Następnie zaloguj się za pomocą swojego adresu e-mail i hasła do konta PayPal SANDBOX, a następnie możesz utworzyć tam różne konta TEST. Możesz utworzyć jedno konto biznesowe na przykład i jedno lub więcej kont osobistych. Pamiętaj, że są to tylko konta TEST, ale naprawdę działasz jako PRAWDZIWE konta. Gdy zalogujesz się do serwisu PayPal, kliknij nowo utworzone konto biznesowe i ustaw URL IPN na prawdziwym koncie Paypal. Możesz również tam wygenerować przyciski płatności. – StudioArena

+0

Następnie utwórz co najmniej jedno konto użytkownika TEST, aby spróbować sprawdzić, czy płatności naprawdę działają. Podczas testowania wystarczy zmienić kod źródłowy HTML przycisku od firmy = YOUR_REAL_EMAIL_or_YOUR_REAL_BUSINESS_CODE na adres e-mail lub kod biznesowy konta TEST firmy (z PayPal). Również w twoim pliku IPN (ipn.php - który ustawiłeś jako URL IPN) musisz zmienić URL, w którym przesyłasz dane z powrotem do paypal. Zamiast prawdziwego adresu URL Paypal korzystasz z adresu URL Sandbox. Sprawdź tutaj przykład PHP: https://cms.paypal.com/cms_content/US/en_US/files/developer/IPN_PHP_41.txt – StudioArena

2

Jeśli chcesz realizować Paypal IPN i klientów nie używać tego samego e-maila z mojego doświadczenia można wykorzystać formularz w celu uwierzytelnienia użytkownika

  • logowania użytkownika na swojej stronie z [email protected]
  • użytkownik kliknie na swojej pozycji i płaci [email protected]
  • po płaci można przekierować go do formularza, w którym można je scalić konto PayPal z kontem na stronie
  • każdym razem, gdy użytkownik płaci wówczas IPN będzie objęte informacjami podanymi
  • Powinieneś zapisać swoje informacje o płatnościach do późniejszego wykorzystania.