저는 PayPal IPN을 사용하여 지불을 받고 처리하여 transactionId를 참조로 저장했습니다.transactionId에서 payKey를 어떻게 얻습니까?
나는 개발중인 시스템을 통해 지불금을 환불 할 수있게되었을 것이며, 여기서 투쟁이 있습니다.
올바른 인증 정보 및 응용 프로그램 ID와 업데이트 된 PHP SDK에서 GetPaymentDetails.php
샘플에 payKey 필드에 transactionId는 진입하여, 내가 얻을 : 그것은 예상대로
Error ID: 580022
Domain: PLATFORM
Severity: Error
Category: Application
Message: Invalid request parameter: payKey with value [REMOVED (transactionId)]
Parameter: Array
이것은 이해할 수있다 payKey. 이제 사양에 따라 $pdRequest->payKey = $payKey;
을 $pdRequest->transactionId = $payKey;
으로 변경할 수 있습니다. 이제 transactionId를 transactionId로 보내고 작업해야하지만 다음과 같이 응답합니다.
Error ID: 520002
Domain: PLATFORM
Severity: Error
Category: Application
Message: Internal Error
그래, 뭔가 문제가 있습니다. 나는 transactionId가 참조로 사용되는 것을 허용하지 않으며 그들의 문서를 업데이트하지 않았다고 생각한다. 그 이유는 내가 사용했던 원 SDK가 trackingId 및 다른 식별자뿐만 아니라 transactionId 필드도 포함했기 때문입니다. 그러나 이제 업데이트 된 SDK는 payKey 만 묻습니다.
이제 막혔습니다. 나는 수천 개의 실제 transactionIds를 수집했습니다. 각 거래마다 payKey를 얻거나 원래의 문제를 해결할 수있는 방법을 알고 계십니까?
감사
추가 정보 :
다음전송 된 HTTP 헤더이다 : 여기
X-PAYPAL-SECURITY-SIGNATURE: [removed]
X-PAYPAL-SECURITY-USERID: [removed]
X-PAYPAL-SECURITY-PASSWORD: [removed]
X-PAYPAL-APPLICATION-ID: [removed]
X-PAYPAL-REQUEST-SOURCE: PHP_SOAP_SDK_V1.4
X-PAYPAL-DEVICE-IPADDRESS: 127.0.0.1
X-PAYPAL-MESSAGE-PROTOCOL: SOAP11
X-PAYPAL-REQUEST-SOURCE: PHP_SOAP_SDK_V1.4
그리고는
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body><PaymentDetailsRequest>
<requestEnvelope>
<errorLanguage>en_US</errorLanguage>
</requestEnvelope>
<transactionId>[removed]</transactionId>
</PaymentDetailsRequest></soap:Body>
</soap:Envelope>
https://svcs.paypal.com/AdaptivePayments/PaymentDetails
0,123,516 할 내용입니다
NVP 문자열을 공유 할 수 있습니까? 자격 증명을 제거하십시오. SDK를 사용하지 않고 개발 한 시스템에서 API를 사용하여 환불을 처리하며 transactionID도 사용합니다. –
당신이 메인 포스트에 물어 봤던 것을 추가 한 것 같아요 –
거기에 우리가 가서 내용 : –