JFIF x x C C " } !1AQa "q2#BR$3br %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz w !1AQ aq"2B #3Rbr{
File "PaymentAuthorizations.php"
Full Path: /var/www/laravel_filter/vendor/srmklive/paypal/src/Traits/PayPalAPI/PaymentAuthorizations.php
File size: 2.85 KB
MIME-type: text/x-php
Charset: utf-8
<?php
namespace Srmklive\PayPal\Traits\PayPalAPI;
trait PaymentAuthorizations
{
/**
* Show details for authorized payment.
*
* @param string $authorization_id
*
* @throws \Throwable
*
* @return array|\Psr\Http\Message\StreamInterface|string
*
* @see https://developer.paypal.com/docs/api/payments/v2/#authorizations_get
*/
public function showAuthorizedPaymentDetails(string $authorization_id)
{
$this->apiEndPoint = "v2/payments/authorizations/{$authorization_id}";
$this->verb = 'get';
return $this->doPayPalRequest();
}
/**
* Capture an authorized payment.
*
* @param string $authorization_id
* @param string $invoice_id
* @param float $amount
* @param string $note
*
* @throws \Throwable
*
* @return array|\Psr\Http\Message\StreamInterface|string
*
* @see https://developer.paypal.com/docs/api/payments/v2/#authorizations_capture
*/
public function captureAuthorizedPayment(string $authorization_id, string $invoice_id, float $amount, string $note)
{
$this->apiEndPoint = "v2/payments/authorizations/{$authorization_id}/capture";
$this->options['json'] = [
'amount' => [
'value' => $amount,
'currency_code' => $this->currency,
],
'invoice_id' => $invoice_id,
'note_to_payer' => $note,
'final_capture' => true,
];
$this->verb = 'post';
return $this->doPayPalRequest();
}
/**
* Reauthorize an authorized payment.
*
* @param string $authorization_id
* @param float $amount
*
* @throws \Throwable
*
* @return array|\Psr\Http\Message\StreamInterface|string
*
* @see https://developer.paypal.com/docs/api/payments/v2/#authorizations_reauthorize
*/
public function reAuthorizeAuthorizedPayment(string $authorization_id, float $amount)
{
$this->apiEndPoint = "v2/payments/authorizations/{$authorization_id}/reauthorize";
$this->options['json'] = [
'amount' => [
'value' => $amount,
'currency_code' => $this->currency,
],
];
$this->verb = 'post';
return $this->doPayPalRequest();
}
/**
* Void an authorized payment.
*
* @param string $authorization_id
*
* @throws \Throwable
*
* @return array|\Psr\Http\Message\StreamInterface|string
*
* @see https://developer.paypal.com/docs/api/payments/v2/#authorizations_void
*/
public function voidAuthorizedPayment(string $authorization_id)
{
$this->apiEndPoint = "v2/payments/authorizations/{$authorization_id}/void";
$this->verb = 'post';
return $this->doPayPalRequest(false);
}
}