Как я могу (или Paypal) проверить данные post, которые отправляются в Paypal с кнопки на моем сайте?

#paypal

#paypal

Вопрос:

Я использую стандарт веб-сайта PayPal и передаю свой идентификатор заказа, который генерируется на моем сайте, через поле item_number. Мне было интересно, как paypal узнает, что содержимое формы не было изменено пользователем? Например, кто-то может просто изменить сумму с 10 долларов на 5 долларов, и у paypal не будет никакого способа узнать. Я делал это раньше с другим платежным процессором, и они заставляют меня отправлять им хэш суммы md5 и некоторые другие данные секретный ключ, но я не уверен, есть ли это у paypal?

Ответ №1:

Основываясь на этой статье, я полагаю, что это зависит от того, используете ли вы «Передачу платежных данных». Если вы просто используете кнопку, то вам нужно будет вручную подтвердить сумму платежа перед отправкой. Если вы используете PDT, вы должны иметь возможность проверить сумму payment_gross, отправленную обратно в ответе от PayPal.

Комментарии:

1. Я буду использовать PDT и IPN и проверю сумму. Спасибо за информацию и ссылку.

Ответ №2:

Ваше право — в общем, вы не можете запретить кому-либо изменять ваши данные. Если вы должны использовать PayPal (да, я знаю, без ежемесячной платы), насколько я знаю, у вас есть три варианта:

  1. Позвольте PayPal разместить данные вашей кнопки. Но это дает вам небольшой контроль над процессом.
  2. Вручную проверяйте каждую транзакцию, проверяя цену и т.д. Перед отправкой товара.
  3. Используя их API для получения завершенной транзакции для автоматической проверки данных.

Еще одна вещь, на которую следует обратить внимание, — это расчет налога с продаж. Подход PayPal был слишком упрощенным для наших нужд, что вынудило меня взять под контроль процесс оформления заказа.

Смотрите эту ссылку.

Комментарии:

1. Похоже, все сводится к использованию IPN / PDT и проверке сумм. спасибо за советы и ссылку

Ответ №3:

вы должны попытаться реализовать это с помощью ipn, pdt склонен не передавать переменные из paypal на ваш сайт, если пользователь не нажимает кнопку «Перейти в магазин». как ответили другие, размещение вашей кнопки сделает ее безопасной за счет гибкости. Вот ссылка на переменные, которые можно изменить на размещенных кнопках https://www.x.com/people/PP_MTS_Haack/blog/2009/11/11/override-variables-for-hosted-and-encrypted-buttons , поскольку вы изучаете переменные, вы не можете изменить важные из них.