2011-12-06 2 views
2

나는 다음과 같은 방법으로 페이팔을 통합하고 싶지만, 내가 인식하지 못하는 결함이있을 수 있습니다.Paypal과 웹 사이트 결제 표준의 통합 이메일로 다운로드 링크를 보내십시오.

PHP 스크립트를 실행하는 notify_url 매개 변수와 함께 지금 구매 버튼을 만들 것입니다. 이 스크립트는 다음을 수행합니다 :

  1. 저장 지불 이메일, 트랜잭션 ID와 MySQL 데이터베이스에 몇 가지 유용한 물건을.
  2. 고유 키를 생성하고 저장하십시오.
  3. 이메일을 작성하여 사용자 주소로 보내주십시오. 이 전자 메일에는 고유 키와 같은 매개 변수가있는 .php 파일에 대한 링크가 포함됩니다. (.php?key=xxxxxxx) 고객이 링크를 클릭하면 파일에서 데이터베이스의 키를 확인하고 다운로드 할 파일에 대한 실제 링크를 만듭니다.

이 방법이 효과가 있는지, 아니면이 솔루션에 몇 가지 문제가 있습니까? 아마 어떤 종류의 세션 처리를 사용해야합니까?

읽어 주셔서 감사합니다. 어떤 아이디어/조언을 환영합니다.

ps : 먼저 결제 후 사용자를 리디렉션하고 싶지만 페이팔 계정을 사용하는 사용자 만 항상 작동하는 것은 아닙니다.

답변

1

당신이 Paypal IPN 경로를 사용하고 있다면 위의 스크립트가 IPN 콜백 후에 발생한다고 생각합니다.

필자는 유사한 시스템을 직접 구현했으며 매우 간단합니다. 여러분이 제시 한 디자인은 제가 가지고있는 것과 거의 같습니다. Paypal 거래가 완료되면 Paypal 거래가 완료 될 때까지 약간의 연결이 끊어집니다 (Paypal의 사이트에서 결제를 마치면 사이트에서 '지불 해 주셔서 감사합니다'페이지로 돌아갑니다). 그리고 이메일에 파일 다운로드 링크가 생기면, 그러나 그것은 효과적이다. 고유 한 키가 실제로 고유하다고 확신하고 키가 추측되거나 도난당하는 것에 대해 걱정하지 않는 한 문제가되어서는 안됩니다. 또한 각 키가 가능한 "키 공유"를 주시하기 위해 다운로드에 사용 된 횟수를 추적했습니다. 하나의 구매 정책을 수행하려면 bool을 사용하여이를 추적 할 수 있습니다.

+0

의견을 보내 주셔서 감사합니다. 또한 "키 공유"를 확인하는 것이 좋습니다. 나는 이것을 줄 것이다. – Alex

1

예, 거래가 완료되면 IPN, Paypal의 대화 방법에 대해 살펴 봅니다. Paypal은 여러 가지 상황에 대해 IPN 고지문을 발송할 것이므로 상당히 복잡하며 다른 상황을 조심해야합니다. 내 경험에서

는 :

  • 1) 고객이 신용 카드를 통해 페이팔에서 구매를하거나 트랜잭션이 완료되었는지 확인) IPN를 보내드립니다
  • 2) 페이팔 서버 스크립트
  • 3은 응답 계정 및
  • 4) 키 다운로드
  • 5 생성) 고객에게 이메일을 보류하지
,

구매 후 사이트를 다시 방문하는 고객에게 의존하지 마십시오. IPN 스크립트가 모든 작업을 수행하게하십시오.

+0

일반적인 메커니즘을 작성해 주셔서 감사합니다. 매우 유용합니다. – Alex

관련 문제