<?php
namespace PayPal\Api;
use PayPal\Common\PayPalModel;
use PayPal\Validation\UrlValidator;
/**
* Class Incentive
*
* A resource representing a incentive.
*
* @package PayPal\Api
*
* @property string id
* @property string code
* @property string name
* @property string description
* @property \PayPal\Api\Currency minimum_purchase_amount
* @property string logo_image_url
* @property string expiry_date
* @property string type
* @property string terms
*/
class Incentive extends PayPalModel
{
/**
* Identifier of the instrument in PayPal Wallet
*
* @param string $id
*
* @return $this
*/
public function setId($id)
{
$this->id = $id;
return $this;
}
/**
* Identifier of the instrument in PayPal Wallet
*
* @return string
*/
public function getId()
{
return $this->id;
}
/**
* Code that identifies the incentive.
*
* @param string $code
*
* @return $this
*/
public function setCode($code)
{
$this->code = $code;
return $this;
}
/**
* Code that identifies the incentive.
*
* @return string
*/
public function getCode()
{
return $this->code;
}
/**
* Name of the incentive.
*
* @param string $name
*
* @return $this
*/
public function setName($name)
{
$this->name = $name;
return $this;
}
/**
* Name of the incentive.
*
* @return string
*/
public function getName()
{
return $this->name;
}
/**
* Description of the incentive.
*
* @param string $description
*
* @return $this
*/
public function setDescription($description)
{
$this->description = $description;
return $this;
}
/**
* Description of the incentive.
*
* @return string
*/
public function getDescription()
{
return $this->description;
}
/**
* Indicates incentive is applicable for this minimum purchase amount.
*
* @param \PayPal\Api\Currency $minimum_purchase_amount
*
* @return $this
*/
public function setMinimumPurchaseAmount($minimum_purchase_amount)
{
$this->minimum_purchase_amount = $minimum_purchase_amount;
return $this;
}
/**
* Indicates incentive is applicable for this minimum purchase amount.
*
* @return \PayPal\Api\Currency
*/
public function getMinimumPurchaseAmount()
{
return $this->minimum_purchase_amount;
}
/**
* Logo image url for the incentive.
*
* @param string $logo_image_url
* @throws \InvalidArgumentException
* @return $this
*/
public function setLogoImageUrl($logo_image_url)
{
UrlValidator::validate($logo_image_url, "LogoImageUrl");
$this->logo_image_url = $logo_image_url;
return $this;
}
/**
* Logo image url for the incentive.
*
* @return string
*/
public function getLogoImageUrl()
{
return $this->logo_image_url;
}
/**
* expiry date of the incentive.
*
* @param string $expiry_date
*
* @return $this
*/
public function setExpiryDate($expiry_date)
{
$this->expiry_date = $expiry_date;
return $this;
}
/**
* expiry date of the incentive.
*
* @return string
*/
public function getExpiryDate()
{
return $this->expiry_date;
}
/**
* Specifies type of incentive
* Valid Values: ["COUPON", "GIFT_CARD", "MERCHANT_SPECIFIC_BALANCE", "VOUCHER"]
*
* @param string $type
*
* @return $this
*/
public function setType($type)
{
$this->type = $type;
return $this;
}
/**
* Specifies type of incentive
*
* @return string
*/
public function getType()
{
return $this->type;
}
/**
* URI to the associated terms
*
* @param string $terms
*
* @return $this
*/
public function setTerms($terms)
{
$this->terms = $terms;
return $this;
}
/**
* URI to the associated terms
*
* @return string
*/
public function getTerms()
{
return $this->terms;
}
}