2010-08-14 1 views
1

Можно ли считать, что платеж завершен для транзакции, когда клиент автоматически возвращается на наш сайт?Paypal PDT & IPN Question - Можно ли предположить, что платеж будет завершен при возврате на сайт?

Paypal советует нам использовать свою систему IPN для других видов платежей, например, электронную проверку, но также говорит нам рассказать клиенту что-то вроде строки «Спасибо за ваш платеж». Ваша транзакция завершена, и квитанция для вашей покупки была отправлена ​​вам по электронной почте. Вы можете войти в свою учетную запись на странице www.paypal.com/ca, чтобы просмотреть сведения об этой транзакции ».

Каковы недостатки, связанные с использованием IPN, и при условии, что оплата будет завершена, если PayPal автоматически вернет пользователей на наш сайт?

Спасибо!

ответ

1

Опираясь исключительно на обратный URL-адрес, это довольно плохая идея. Было бы легко для плохого парня пропустить платеж и просто посетить ваш код возврата, чтобы выполнить заказ.

Существует довольно всеобъемлющая статья об этом here

+0

Наши ценности формируют шифруются - так обычно они не имеют доступа к возвратного URL - но я решил пойти подход IPN - кажется более надежным, безопасным и обеспечить безопасность всех. – stringo0

0

No.

Однако, используя опцию автоматического возврата в вашем аккаунте Paypal в сочетании с Transfer Оплата данных (Профиль/Мои Продажа Инструменты/настройки сайта/Предпочтения Сайт оплаты) даст вам данные подтверждения оплаты в URL, который используется для автоматического возврата, например:

www.yourReturnURL.com?tx=9XV61416UY0043254&st=Completed&amt=9%2e00&cc=USD&cm= 9601&item_number=2

Вам нужно подтвердите эти данные (любой может отправить фальшивый запрос), отправив ссылку на платеж (параметр «tx» выше) обратно в Paypal и ожидая ответа VERIFIED.

Этот последний шаг идентичен тому, который вы делаете для реализации IPN (мгновенного оповещения о платежах).

  • С помощью PDT вы получаете уведомление мгновенно. PDT имеет серьезную слабость: он отправляет подтверждения заказа один раз и только один раз. В результате, когда PDT отправляет подтверждение, ваш сайт должен работать; в противном случае он никогда не получит сообщение.

  • С IPN, напротив, доставка подтверждений заказа практически гарантирована, так как IPN передает подтверждение, пока ваш сайт не подтвердит получение. По этой причине PayPal рекомендует внедрять IPN, а не PDT.

  • Примечание: Если ваш сайт должен быть немедленно уведомлен о платежах, вы можете реализовать как IPN, так и PDT.

Больше информации здесь: https://developer.paypal.com/docs/classic/ipn/integration-guide/IPNPDTAnAlternativetoIPN/

Смежные вопросы