2010-03-10 3 views
2

PHP 스크립트 (curl + SOAP)에서 샌드 박스 모드로 PayPal Express를 사용하고 있습니다. 나는 "구매"버튼이 1 개인 간단한 구매 양식을 가지고 있습니다. 이 을 클릭 때 나는 초기 SetExpressCheckout 요청을 보내고도 Acc = 성공과 나는이 새로운 토큰으로 페이팔에 스크립트를 리디렉션하려고 신선한 토큰PayPal Express가 샌드 박스 모드에서 4011 오류 메시지를 반환합니다.

<Ack xmlns="urn:ebay:apis:eBLBaseComponents">Success</Ack> 
<Token xsi:type="ebl:ExpressCheckoutTokenType">EC-4GV76670YM092205U</Token></SetExpressCheckoutResponse> 

다음과 페이팔 에서 성공적인 응답을 얻을 :

header("Location: https://www.paypal.com/cgi-bin/webscr?cmd=_express-checkout&token=".$result[Token]."&address_override=1"); 

하지만 결과로 페이팔 오류 메시지가있는 페이지가 표시

죄송합니다, 우리는 일시적인 문제가 발생합니다. 나중에 다시 시도 해주십시오. 결제하는 동안이 오류가 발생하면 결제를 다시 보내기 전에 계정 개요를 확인하여 중복 된 결제를 피하십시오. 메시지이 오류의 원인이 할 수있는 작업

4011? 일반 US/USD 샌드 박스 계정을 사용하고 있습니다. 의심스러운 것으로 보이는 유일한 것은 paypal 응답에서 xml 사용자 이름과 암호 필드가 비어 있다는 것입니다.

답변

7

이 오류는 샌드 박스 자격 증명을 사용하여 샌드 박스가 아닌 URL로 리디렉션하는 중 발생했습니다. header("Location: https://www.sandbox.paypal.com/cgi-bin/webscr?cmd=_express-checkout&token=".$result[Token]."&address_override=1");

관련 문제