2016-04-14 3 views
2

Hallo, ich versuche derzeit, das folgende zu implementieren: jemand zahlt für etwas per Paypal - eine dritte Person sollte wie 50% des Preises auf ihrem Paypal-Konto danach erhalten. Also ich möchte immer die Schritte folgen: Person A zahlt 10 €, ich bekomme 10 €, ich zahle 5 € an Person C.Paypal SDK Auszahlungen - kann nicht Ausnahme fangen und erhalten http 400

Der erste Teil arbeitet über paypal sdk in php, der zweite Teil (Überweisung von Geld an irgendwie eine andere Person nicht gut funktioniert derzeit ...)

das ist mein Code ist dieses für

$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'); 

kann ich den Fehler nicht fangen. Es sagt

PayPalConnectionException in PayPalHttpConnection.php Zeile 174: Got Http Response Code 400 beim Zugriff auf https://api.sandbox.paypal.com/v1/payments/payouts?sync_mode=true.

Ich bin der Umsetzung dieser mit Laravel 5.1

Irgendwelche Ideen?

Antwort

1

Basierend auf Ihrem Geschäftsmodell ist REST API keine gute Option. Paypal hat die adaptive Zahlung API, mit der Sie Geld in vielen verschiedenen Szenarien senden können, von einfach bis komplex.So in Ihrem Fall können Sie beziehen sich chained payment, der Absender zahlt dem primären Empfänger einen Betrag, von dem der primäre Empfänger sekundäre zahlt Empfänger. Der Sender kennt nur den primären Empfänger, nicht die sekundären Empfänger. Die sekundären Empfänger kennen nur den primären Empfänger, nicht den Absender. Adaptive Zahlung Demo download.

+0

Dank werde ich haben sehen ein Depper in diesem –

1

Setzen Sie ein '\' vor Ihrer Paypal-Fehlermeldung. Arbeitete für mich. Es ist ein Namensraumkonflikt.

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

Dank Mann! Verbrachte einige Stunden dafür. –