Безопасность оплаты кнопкой PayPal

262
11 сентября 2017, 05:49

Я настраиваю PayPal оплату услуг на сайте. Все должно пройти автоматически до момента когда в админке засветится зеленая лампочка и скажет что все в полном порядке.

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

Мой алгоритм выглядит сейчас так, он пока не безопастный:

  • Пользователь выбирает услуги, жмет оплатить, они отправляются на сайт, создается запись заказа на все услуги и формируется кнопка PayPal.
  • Кнопка пейпал отправлена и получена пользователем, в форме написана цена, список услуг и номер заказа, который открыв консоль просто изменить.
  • Оплата переходит на пейпал и при успешном завершении возвращает обратно на сайт где на номер заказа цепляется txn_id, но номер заказа и цена уже могут не совпадать, что и есть моей прямой проблемой.
  • Далее все безопастно: на IPN слушатель приходит подтверждение и закрывается вопрос с оплатой "зеленой лампочкой".

Не подскажете как и что можно сделать? Благодарю за внимание.

READ ALSO
Хранение различных постов

Хранение различных постов

На сайте есть 3 раздела, в первом располагаются посты, во 2 располагается галерея с описанием и названием для каждой записи, в 3-м разные новостиВопрос...

199
Как прочитать строку из консоли

Как прочитать строку из консоли

Есть алгоритм для переворота строкиОн переводит только ту строку,которую я укажу в char string[] = "Hello, world"; Но как сделать так,чтобы он переводил...

308
Проблема с работой программы в разных IDE

Проблема с работой программы в разных IDE

Доброго времени суток! В свое время написал простенькое консольное приложение для проверки управления цифровыми TTL линиями платы L780 от L Card в легковесной...

319
message queue в нескольких потоках

message queue в нескольких потоках

Использую очередь сообщений и столкнулся с проблемой

302