forked from LiveCarta/PayPal-PHP-Server-SDK
Beta Release 0.7.0 including: - Bug fixes - Updated model/function names - Updated models to reflect changes in APIs
231 lines
5.4 KiB
PHP
231 lines
5.4 KiB
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
/*
|
|
* PaypalServerSdkLib
|
|
*
|
|
* This file was automatically generated by APIMATIC v3.0 ( https://www.apimatic.io ).
|
|
*/
|
|
|
|
namespace PaypalServerSdkLib\Models;
|
|
|
|
use PaypalServerSdkLib\ApiHelper;
|
|
use stdClass;
|
|
|
|
/**
|
|
* The payment source definition.
|
|
*/
|
|
class OrderAuthorizeRequestPaymentSource implements \JsonSerializable
|
|
{
|
|
/**
|
|
* @var CardRequest|null
|
|
*/
|
|
private $card;
|
|
|
|
/**
|
|
* @var Token|null
|
|
*/
|
|
private $token;
|
|
|
|
/**
|
|
* @var PaypalWallet|null
|
|
*/
|
|
private $paypal;
|
|
|
|
/**
|
|
* @var ApplePayRequest|null
|
|
*/
|
|
private $applePay;
|
|
|
|
/**
|
|
* @var GooglePayRequest|null
|
|
*/
|
|
private $googlePay;
|
|
|
|
/**
|
|
* @var VenmoWalletRequest|null
|
|
*/
|
|
private $venmo;
|
|
|
|
/**
|
|
* Returns Card.
|
|
* The payment card to use to fund a payment. Can be a credit or debit card. Note: Passing card number,
|
|
* cvv and expiry directly via the API requires PCI SAQ D compliance. *PayPal offers a mechanism by
|
|
* which you do not have to take on the PCI SAQ D burden by using hosted fields - refer to this
|
|
* Integration Guide*.
|
|
*/
|
|
public function getCard(): ?CardRequest
|
|
{
|
|
return $this->card;
|
|
}
|
|
|
|
/**
|
|
* Sets Card.
|
|
* The payment card to use to fund a payment. Can be a credit or debit card. Note: Passing card number,
|
|
* cvv and expiry directly via the API requires PCI SAQ D compliance. *PayPal offers a mechanism by
|
|
* which you do not have to take on the PCI SAQ D burden by using hosted fields - refer to this
|
|
* Integration Guide*.
|
|
*
|
|
* @maps card
|
|
*/
|
|
public function setCard(?CardRequest $card): void
|
|
{
|
|
$this->card = $card;
|
|
}
|
|
|
|
/**
|
|
* Returns Token.
|
|
* The tokenized payment source to fund a payment.
|
|
*/
|
|
public function getToken(): ?Token
|
|
{
|
|
return $this->token;
|
|
}
|
|
|
|
/**
|
|
* Sets Token.
|
|
* The tokenized payment source to fund a payment.
|
|
*
|
|
* @maps token
|
|
*/
|
|
public function setToken(?Token $token): void
|
|
{
|
|
$this->token = $token;
|
|
}
|
|
|
|
/**
|
|
* Returns Paypal.
|
|
* A resource that identifies a PayPal Wallet is used for payment.
|
|
*/
|
|
public function getPaypal(): ?PaypalWallet
|
|
{
|
|
return $this->paypal;
|
|
}
|
|
|
|
/**
|
|
* Sets Paypal.
|
|
* A resource that identifies a PayPal Wallet is used for payment.
|
|
*
|
|
* @maps paypal
|
|
*/
|
|
public function setPaypal(?PaypalWallet $paypal): void
|
|
{
|
|
$this->paypal = $paypal;
|
|
}
|
|
|
|
/**
|
|
* Returns Apple Pay.
|
|
* Information needed to pay using ApplePay.
|
|
*/
|
|
public function getApplePay(): ?ApplePayRequest
|
|
{
|
|
return $this->applePay;
|
|
}
|
|
|
|
/**
|
|
* Sets Apple Pay.
|
|
* Information needed to pay using ApplePay.
|
|
*
|
|
* @maps apple_pay
|
|
*/
|
|
public function setApplePay(?ApplePayRequest $applePay): void
|
|
{
|
|
$this->applePay = $applePay;
|
|
}
|
|
|
|
/**
|
|
* Returns Google Pay.
|
|
* Information needed to pay using Google Pay.
|
|
*/
|
|
public function getGooglePay(): ?GooglePayRequest
|
|
{
|
|
return $this->googlePay;
|
|
}
|
|
|
|
/**
|
|
* Sets Google Pay.
|
|
* Information needed to pay using Google Pay.
|
|
*
|
|
* @maps google_pay
|
|
*/
|
|
public function setGooglePay(?GooglePayRequest $googlePay): void
|
|
{
|
|
$this->googlePay = $googlePay;
|
|
}
|
|
|
|
/**
|
|
* Returns Venmo.
|
|
* Information needed to pay using Venmo.
|
|
*/
|
|
public function getVenmo(): ?VenmoWalletRequest
|
|
{
|
|
return $this->venmo;
|
|
}
|
|
|
|
/**
|
|
* Sets Venmo.
|
|
* Information needed to pay using Venmo.
|
|
*
|
|
* @maps venmo
|
|
*/
|
|
public function setVenmo(?VenmoWalletRequest $venmo): void
|
|
{
|
|
$this->venmo = $venmo;
|
|
}
|
|
|
|
/**
|
|
* Converts the OrderAuthorizeRequestPaymentSource object to a human-readable string representation.
|
|
*
|
|
* @return string The string representation of the OrderAuthorizeRequestPaymentSource object.
|
|
*/
|
|
public function __toString(): string
|
|
{
|
|
return ApiHelper::stringify(
|
|
'OrderAuthorizeRequestPaymentSource',
|
|
[
|
|
'card' => $this->card,
|
|
'token' => $this->token,
|
|
'paypal' => $this->paypal,
|
|
'applePay' => $this->applePay,
|
|
'googlePay' => $this->googlePay,
|
|
'venmo' => $this->venmo
|
|
]
|
|
);
|
|
}
|
|
|
|
/**
|
|
* Encode this object to JSON
|
|
*
|
|
* @param bool $asArrayWhenEmpty Whether to serialize this model as an array whenever no fields
|
|
* are set. (default: false)
|
|
*
|
|
* @return array|stdClass
|
|
*/
|
|
#[\ReturnTypeWillChange] // @phan-suppress-current-line PhanUndeclaredClassAttribute for (php < 8.1)
|
|
public function jsonSerialize(bool $asArrayWhenEmpty = false)
|
|
{
|
|
$json = [];
|
|
if (isset($this->card)) {
|
|
$json['card'] = $this->card;
|
|
}
|
|
if (isset($this->token)) {
|
|
$json['token'] = $this->token;
|
|
}
|
|
if (isset($this->paypal)) {
|
|
$json['paypal'] = $this->paypal;
|
|
}
|
|
if (isset($this->applePay)) {
|
|
$json['apple_pay'] = $this->applePay;
|
|
}
|
|
if (isset($this->googlePay)) {
|
|
$json['google_pay'] = $this->googlePay;
|
|
}
|
|
if (isset($this->venmo)) {
|
|
$json['venmo'] = $this->venmo;
|
|
}
|
|
|
|
return (!$asArrayWhenEmpty && empty($json)) ? new stdClass() : $json;
|
|
}
|
|
}
|