2013-06-09 4 views
2

저는 지난 5 시간 동안이 문제로 어려움을 겪었습니다. 누군가가 나를 도와 줄 수 있는지 알아 보겠습니다.PayPal 적응 지불 및 배송 주소

저는 체인 지불 (단지 저와 제 2의 수신자)을 만들기 위해 페이팔의 적응 지불을 사용하고 있습니다. 문제는 다음과 같습니다. 구매자가 배송 주소를 입력하도록하는 방법을 알아낼 수 없습니다. 여기

내가 전화 만들고있어 방법은 다음과 같습니다

$primaryReceiver = new \Receiver(); 
$primaryReceiver->email = '[email protected]'; 
$primaryReceiver->primary = 'true'; 
$primaryReceiver->paymentType = 'SERVICE'; 
$primaryReceiver->amount = 100; 

$secondaryReceiver = new \Receiver(); 
$secondaryReceiver->email = '[email protected]'; 
$secondaryReceiver->primary = 'true'; 
$secondaryReceiver->paymentType = 'GOODS'; 
$secondaryReceiver->amount = 90; 

$receiverList = new \ReceiverList(array($primaryReceiver, $secondaryReceiver)); 

$payRequest = new \PayRequest(
    new \RequestEnvelope('en_US'), 
    'CREATE', 
    'http://my.site.url/pay/cancel', 
    'USD', 
    $receiverList, 
    'http://my.site.url/pay/success' 
); 

// maybe this Pay() call is wrong? should it be some other method? 
$paymentResponse = $service->Pay($payRequest); 

// setting payment options 
$payOptions = new \SetPaymentOptionsRequest(new \RequestEnvelope("en_US"), $paymentResponse->payKey); 
$payOptions->senderOptions = new \SenderOptions(); 
$payOptions->senderOptions->requireShippingAddressSelection = 'true'; 
$payOptionsResponse = $service->setPaymentOptions($payOptions); 

수령액() 나는 결제를 진행하면 호출이 성공하지만,에서 얻은 임금 키의 SetPaymentOptionsRequest의 응답을 배송 주소 요구하지 않습니다.

도움이 될 것입니다.

감사합니다.

+0

"true"대신 true로 시도 했습니까? 하나는 부울이고 다른 하나는 문자열입니다. PHP는 느슨한 타이핑을 true/false로 문자열에 당신을 위해 수행되지 않습니다. – Jessica

+0

Yeap. 같은 결과. –

+2

나는 이것도 완전히 잃어 버렸다. 더 이상 얻었습니까? PayPal 문서는 끔찍합니다. 그것은 선적 주소를 요구하는 것을 암시하지만 임베디드 지불 모드에서만 필요합니다. –

답변

1

나는 동일한 경험을 가지고 있으며 PayPal 지원팀으로부터 답장을받지 못했습니다.

이 기능은 포함 된 흐름 (리디렉션 대신 라이트 박스 또는 팝업)에서만 작동합니다. receiverOptions (제품에 대한 추가 세부 정보를 표시하려는 경우)와 동일합니다. 리디렉션 후에 displayOptions (예 : 업체명 설정) 만 작동합니다.

+1

와우, 그거 야! 나는 선적 비용, 일할 단위 등의 수를 얻기 위해 노력하고있는 지난 3 일 동안 고생하고 있었다. .. 그리고 그들은 그것도 가능하지 않다고 말한다? 그럼 그게 안됐어 :/ –

+0

임베디드 모드에서도 작동하지 않습니다. –