/ / Zwróć pieniądze użytkownikom korzystającym z Paypal Rest API - PHP, Laravel-4, Paypal, Paypal-Rest-SDK

Zwróć użytkowników korzystających z interfejsu API paypal - php, laravel-4, paypal, paypal-rest-sdk

Zajmuję się tworzeniem aplikacji internetowej, w której pozwalam użytkownikom kupić bilet na wydarzenie. Użyłem Paypal Rest API do wysyłania pieniędzy i zakupu biletów.Wszystko działa dobrze. Teraz próbuję użyć metody zwrotu, aby zwrócić wszystkim użytkownikom związanym ze zdarzeniem, kiedy to wydarzenie zostanie anulowane. Przeglądając dokumentację interfejsu API REST, zauważyłem, że istnieje sposób na zwrot, ale podczas wyszukiwania w pakiecie interfejsu API REST laravel Nie znalazłem sposobu na zwrot lub użycie metody zwrotu rest-api-sdk-php nie obsługuje metody zwrotu pieniędzy? A jeśli tak, jak go wykorzystać w projekcie laravel? PS: płatność odbywa się bez karty kredytowej. Używam tylko konta PayPal z piaskownicą. --edit-- Otrzymuję ten wynik, gdy próbuję kod zwrotu reszty interfejsu API:

{"name":"TRANSACTION_REFUSED","message":"The request was refused.{0}","information_link":"https://developer.paypal.com/webapps/developer/docs/api/#TRANSACTION_REFUSED","debug_id":"97f33dd89f4c8"}

Odpowiedzi:

2 dla odpowiedzi № 1

Występuje błąd (prośba została odrzucona).

Bez wyświetlania kodu przyczyną może być dowolna z poniższych sytuacji:

Kwota częściowego zwrotu musi być mniejsza lub równa pierwotnej kwocie transakcji

Kwota częściowego zwrotu musi być mniejsza lub równa pozostałej kwocie

Częściowa kwota zwrotu jest nieprawidłowa

Częściowy zwrot musi być w tej samej walucie, co pierwotna transakcja

Ponieważ istnieje skarga dotycząca tej transakcji, można wydać tylko zwrot pełnej lub pełnej pozostałej kwoty transakcji

Przekroczono limit czasu na zwrot pieniędzy za tę transakcję

Po częściowym zwrocie nie można dokonać pełnego zwrotu pieniędzy

Ta transakcja została już w pełni zwrócona

Nie możesz zwrócić tego rodzaju transakcji

Nie możesz dokonać częściowego zwrotu kosztów tej transakcji

Konto sprzedawcy ma ograniczenia lub ograniczenia


2 dla odpowiedzi nr 2

Nie jestem pewien co do projektu laravel, ale PHP SDK ma możliwość zwrotu pieniędzy. Po prostu utwórz obiekt zwrotu i przekaż go do metody zwrotu w obiekcie sprzedaży. Przykładowy kod z https://github.com/paypal/PayPal-PHP-SDK/blob/master/sample/sale/RefundSale.php:

// ### Refund object
$refund = new Refund();
$refund->setAmount($amt);
// ###Sale
// A sale transaction.
// Create a Sale object with the
// given sale transaction id.
$sale = new Sale();
$sale->setId($saleId);
try {
// Create a new apiContext object so we send a new
// PayPal-Request-Id (idempotency) header for this resource
$apiContext = getApiContext($clientId, $clientSecret);
// Refund the sale
// (See bootstrap.php for more on `ApiContext`)
$refundedSale = $sale->refund($refund, $apiContext);
} catch (Exception $ex) {
ResultPrinter::printError("Refund Sale", "Sale", $refundedSale->getId(), $refund, $ex);
exit(1);
}