Поток для: заполнить форму, произвести платеж PayPal, создать учетную запись - PullRequest
5 голосов
/ 08 октября 2010

Я уже реализовывал транзакцию PayPal, но у этой проблемы есть изюминка, что я не совсем уверен, как лучше всего справиться с ней.

Основная идея заключается в том, что я хочу создать учетную запись для пользователя, когда он предоставляет некоторые данные и совершает платеж через PayPal. Пока ОБА пользовательские данные не будут заполнены правильно и платеж сделан правильно, я не должен создавать учетную запись для пользователя.

Установка, которую я сделал ранее, была просто кнопкой PayPal, которую пользователь нажимает, делает платеж и перенаправляет обратно на обычную страницу «Ваш заказ будет обработан и отправлен», поэтому не было формы предварительного заказа участвует.

Этот отличается, потому что

  • до PayPal, мне нужно собрать начальные данные пользователя
  • после PayPal мне нужно создать новую учетную запись пользователя и использовать в ней пользовательские данные, собранные из формы предварительной оплаты

Я уверен, что есть логичный способ реализовать это, но я не совсем уверен, какой поток я должен следовать, чтобы сделать это.

Кстати, я пользуюсь фреймворком Zend, что не должно иметь значения, но на всякий случай, если у Zend есть более простой способ помочь мне с тем, что я пытаюсь сделать.

1 Ответ

4 голосов
/ 08 октября 2010

Я делаю следующее (хотя я делаю это в ASP.NET):

  1. Пользователь заполняет форму
  2. Информация сохраняется в таблице заказов в дБ с уникальным номером счета
  3. Номер счета передается в PayPal вместе с URL-адресом уведомления IPN, когда вы выполняете перенаправление
  4. Пользователь отправляется в Paypal для оплаты, а затем возвращается на общую страницу успеха
  5. За кулисами Paypal звонит на URL-адрес уведомления IPN после завершения обработки. Эта страница получает номер вашего счета-фактуры, который PP возвращает со своим вызовом, а затем выполняет обработку создания учетной записи для этого заказа после получения сведений из базы данных. [Это страница без пользовательского интерфейса, так как только PP нажимает на нее.]
  6. От этого процесса отправлено электронное письмо, которое уведомляет клиента о том, что его учетная запись была создана, и сообщает ему подробности.

Это упрощенная версия процесса, но она попадает в основные моменты. Вы можете проверить страницу PayPal об IPN и выполнить поиск в Google для интеграции IPN с PHP.

...