2016-04-14 50 views
2

'u yakalayamıyorum Merhaba Şu anda aşağıdakileri uygulamaya çalışıyorum: birisi paypal yoluyla bir şey için ödeme yapıyor - üçüncü bir kişi daha sonra paypal hesabındaki fiyatın% 50'si kadar almalıdır. Bu yüzden her zaman adımlar atmak istiyorum: Kişi A 10 € öder, ben 10 €, ben 5 € ödeyerek C kişisine 5 € ödedim.Paypal SDK Ödemeleri - İstisnayı yakalayamaz ve http 400

İlk bölüm, paypal sdk ile php, ikinci kısımda çalışıyor. başka bir kişi ben bir şekilde hata yakalayamaz Bu, bu

$payouts = new \PayPal\Api\Payout(); 

$senderBatchHeader = new \PayPal\Api\PayoutSenderBatchHeader(); 

$senderBatchHeader->setSenderBatchId(uniqid()) 
    ->setEmailSubject("Test."); 

$senderItem1 = new \PayPal\Api\PayoutItem(); 

$senderItem1->setRecipientType('Email') 
      ->setNote('Test.') 
      ->setReceiver('[email protected]') 
      ->setSenderItemId('test ' . uniqid()) 
      ->setAmount(new \PayPal\Api\Currency('{ 
        "value": "5.00", 
        "currency":"EUR" 
       }')); 


$payouts->setSenderBatchHeader($senderBatchHeader) 
    ->addItem($senderItem1); 

// For Sample Purposes Only. 
$request = clone $payouts; 

// ### Create Payout 
try { 
    $output = $payouts->createSynchronous($this->_api_context); 
} catch (PayPapl\Exception\PayPalConnectionException $ex) { 
      //todo add exception handler 
    dd('test'); 

    ResultPrinter::printError("Created Batch Payout", "Payout", null, $request, $ex); 
    exit(1); 
} 

dd('test'); 

benim kodudur)

... şu anda iyi çalışmıyor. https://api.sandbox.paypal.com/v1/payments/payouts?sync_mode=true'a erişirken, Http yanıt kodu 400 var HttpConnection.php satırında 174: PayPal'ta PayPalConnectionException

.

Bunu kullanarak laravel 5,1

Herhangi Fikirler uygulayan ediyorum?

cevap

1

İş modelinize dayanarak REST API kullanımı iyi bir seçenek değildir. Paypal, birçok farklı senaryoda, basitten karmaşıklığa kadar para göndermenizi sağlayan adaptif ödeme API'sine sahiptir. Sizin durumunuzda, gönderenin, birincil alıcının, birincil alıcının ikincil ödeyeceği bir miktarını ödediği, chained payment alıcılar. Gönderici, yalnızca birincil alıcıyı değil, ikincil alıcıları bilir. İkincil alıcılar sadece gönderici değil birincil alıcıyı bilirler. Uyarlamalı ödeme demosu download.

+0

teşekkürler depper bu –

1

Paypal hata iletinizin önüne bir '\' koyun. Benim için çalıştı. Onun bir ad alanı çakışması. Ben

try { 
    $output = $payouts->createSynchronous($this->_api_context); 
} catch (\PayPal\Exception\PayPalConnectionException $ex) { 
    //todo add exception handler 
    dd('test'); 
    ResultPrinter::printError("Created Batch Payout", "Payout", null, $request, $ex); 
    exit(1); 
}catch (\Exception $e){ 
    dd($e->getMessage(); 
} 

See this post

+0

sayesinde adamın içine bakmak var LL! Bunun için birkaç saat geçirdim. –