2014-09-01 2 views
-1

나는 상인이며 paypal을 통해 지불이 완료된 후 eBook 다운로드를 제공합니다. 페이팔 거래가 완료되면 paypal에서 고유 한 거래 ID를 가져 와서 내 데이터베이스에 저장합니다. 그런 다음 거래 ID가 내 DB에서 발견되면 eBook을 다운로드 할 수 있으므로 해커 또는 사기 대신 paypal에서 거래 ID를 확인해야합니다. 모든 API가 그렇게 할 수 있습니까? 내 사이트는 PHP를 사용하고 있습니다.Paypal - 거래 id 신분 확인

+0

당신이 IPN에 대해 얘기하는 경우, 확인 절차가 완전히 설명되어 있습니다. 다른 PayPal API에 대해 이야기하고 있다면 실제로 PayPal 서버와 통신하고 있는지 확인해야합니다. – EJP

+0

네, 무슨 뜻인지 이해합니다. 당신은 트랜잭션 프로세스에서 일어난 일이라고 말했지만, 해커가 불법적 인 트랜잭션 ID를 내 DB에 삽입 할 수 있기 때문에 트랜잭션이 완료된 후 문제가 발생합니다. 따라서 고객이 디지털 상품에 액세스하기 전에 거래 ID를 확인해야했습니다. 도와주세요. 감사합니다 –

답변

0

고객이 돈을 지불 할 때 PDT (지불 데이터 전송)가 도움이된다고 생각합니다. PayPal은 귀하의 계정 프로필에 지정한 URL에 거래 ID를 첨부하여 지불 거래 ID를 보냅니다. . 당신이 트랜잭션 ID를 얻을 후

TX = transactionId는

, 당신은 페이팔에 양식을 게시 트랜잭션 ID 및 사용자의 ID 토큰하는을 포함한다 :이 정보는이 이름/값 쌍으로 HTTP GET을 통해 전송됩니다 paypal에 귀하의 계정을 식별하는 문자열 값. 아래에 ID 토큰을 얻는 방법을 설명하는 지침이 있습니다. 양식은 다음과 같습니다의

SUCCESS 
first_name=Jane+Doe 
last_name=Smith 
payment_status=Completed 
payer_email=janedoesmith%40hotmail.com 
payment_gross=3.99 
mc_currency=USD 
custom=For+the+purchase+of+the+rare+book+Green+Eggs+%26+Ham 

:

<form method=post action="https://www.paypal.com/cgi-bin/webscr"> 
<input type="hidden" name="cmd" value="_notify-synch"> 
<input type="hidden" name="tx" value="TransactionID"> 
<input type="hidden" name="at" value="YourIdentityToken"> 
<input type="submit" value="PDT"> 
</form> 

지금 그 후이가 (HTTP 헤더가 생략 된) 페이팔에 올바른 트랜잭션임을 나타내는 그 요청에 페이팔의 응답을받을 물론이 모든 것은 귀하가 페이팔 판매자 계정에서 PDT를 켜야 할 필요가 있음에 달려 있습니다.

도움이 더 필요한 경우

이 링크를 참조하십시오 Paypal Payment Data Transfer

+0

나는 이미 PDT를 사용하고 있습니다. 이 방법을 시도하겠습니다. 문제가 발생하면 여기에서 다시 묻습니다. 감사! –

+0

Payments를 확인하는 가장 좋은 방법은 PayPal로 거래 데이터를 게시하고 PayPal에서 "유효하지 않은"또는 "확인 된"상태를받을 수있는 IPN을 사용하는 것입니다. IPN을 사용하지 않는 경우 GetTransactionDetails API를 사용하여 PayPal에서 모든 거래 관련 정보를 가져 와서 거래 세부 정보를보고 유효하게 할 수 있습니다. 아래 링크를 참조하십시오. https : //developer.paypal.com/webapps/developer/docs/classic/api/merchant/GetTransactionDetails_API_Operation_NVP/ – Eshan