2015-01-16 4 views
0

내 PHP 응용 프로그램에 대한 동기화 된 지불금을 테스트하려고하지만 서버의 응답은 항상 동일하고 나를 INTERNAL_ERROR 가리 킵니다. 내가 사용하고있다 paypal/rest-api-sdk-php 버전 v1.0.0 (composer.json는 아무것도 말하지 않는다)을 믿고있다 - 내 JSON에서 가장 최신 버전이어야한다. 버전은 dev-master이다.PayPal 지불금 항상 (샌드 박스)

try { 
    /** @var PayoutBatch $payoutBatch */ 
    $payoutBatch = $payout->createSynchronous($apiContext); 
} catch (\Exception $ex) { 
    echo $ex->getMessage(); 
} 

try { 
    /** @var PayoutBatch $response */ 
    $response = Payout::get($payoutBatch->getBatchHeader()->getPayoutBatchId(), $apiContext); 

    $status = $response->getBatchHeader()->getBatchStatus(); 

    if ($status === "SUCCESS") { 
     //do some logic 
    } 

} catch (\Exception $ex) { 
    echo $ex->getMessage(); 
} 

혹시이 문제가 발생 했습니까?

또한 하위 질문인데, PayPal PHP SDK가 메시지 상태를 찾을 수있는 몇 가지 상수를 정의하지 않았습니까?

+0

죄송합니다.이 문제를 직접 해결할 수는 없지만 내 [PayPal PHP 클래스 라이브러리] (https://github.com/angelleye/paypal-php-library)를 살펴 보시기 바랍니다.) 대신 사용하십시오. PayPal의 SDK보다 사용하기가 훨씬 쉽고 [Composer와 호환] (https://packagist.org/packages/angelleye/paypal-php-library)도 있습니다. –

+0

판매 대금은 어떻게됩니까? 도서관에서 처리 할 수 ​​있습니까? – Cockootec

+0

예, Pay API 또는 MassPay API를 사용하면됩니다. 내 라이브러리는이 두 가지를 모두 지원합니다. –

답변

1

당신은 Payouts Enabled in your sandbox environment.을 가지고 있는지 확인하십시오. 지불 할 때 필요한 적절한 범위를 얻을 수 있습니다.

Payout Settings

그러나, 당신은 이미했을 경우 여전히 실패, 당신은 SDK와 함께 제공되는 출력 샘플을 시도하십시오 수 있습니다. 샘플 서버를 시작, 당신은 주위 재생할 수

php -f vendor/paypal/rest-api-sdk-php/sample/index.php 

here을 언급 한 바와 같이

모두 당신이해야 할 하나의 명령을 실행하고, 실행 샘플을해야합니다.

enter image description here

그것은 그냥 클릭하고 실행 수, 배당 샘플을 가지고있다. 이러한 작업을 통해 이제 고객 ID와 비밀번호를 사용하기위한 샘플을 얻을 수 있습니다. sdk 코드에서 samples/bootstrap.php을 찾고 해당 clientId와 secret를 변경하고 샘플을 다시 실행하십시오. 실패한 경우 알려 주시면 문제를 더 자세히 살펴볼 수 있습니다.

+0

샌드 박스 PayPal에서 판매 대금을 사용할 수 있으며 샘플도 사용할 수 있습니다. 작동하지 않는 것은 지불금뿐입니다. 어떤 제안? – Cockootec

+0

샘플이 작동한다고 할 때 기본적으로 제공되는 clientId와 Secret을 전환 할 수 있습니까? 이것은 매우 도움이 될 것입니다. 이 작업을 몇 번 반복 해 주실 것을 부탁 드려서 죄송합니다. 그러나이 문제는 정말 빨리 해결됩니다. sdk 코드에서/bootstrap.php (https://github.com/paypal/PayPal-PHP-SDK/blob/master/sample/bootstrap.php#L29) 샘플을 찾아 해당 clientId와 secret를 변경하고 다시 샘플. 실패한 경우 알려 주시면 문제를 더 자세히 살펴볼 수 있습니다. –

+0

협조 해 주셔서 감사합니다. 그것은 내 'clientId'와'clientSecret'과 함께 실패하고 페이 아웃 (payout)은 페이팔 (Paypal) 샌드 박스에서 제 설정으로 체크했습니다. 내 샌드 박스 계정에 대한 정보를 보내 주셔서 더 자세히 확인해야합니까? 또한 라이브 사이드도 응답합니다 (지급금도 확인했습니다). 나는 고객 서비스에 썼다. 그러나 아직까지 대답이 없다. 그래서 나는 아직도 기다리고있다. – Cockootec

관련 문제