'string',
'tender_id' => 'string',
'reason' => 'string',
'amount_money' => '\SquareConnect\Model\Money'
);
/**
* Array of attributes where the key is the local name, and the value is the original name
* @var string[]
*/
static $attributeMap = array(
'idempotency_key' => 'idempotency_key',
'tender_id' => 'tender_id',
'reason' => 'reason',
'amount_money' => 'amount_money'
);
/**
* Array of attributes to setter functions (for deserialization of responses)
* @var string[]
*/
static $setters = array(
'idempotency_key' => 'setIdempotencyKey',
'tender_id' => 'setTenderId',
'reason' => 'setReason',
'amount_money' => 'setAmountMoney'
);
/**
* Array of attributes to getter functions (for serialization of requests)
* @var string[]
*/
static $getters = array(
'idempotency_key' => 'getIdempotencyKey',
'tender_id' => 'getTenderId',
'reason' => 'getReason',
'amount_money' => 'getAmountMoney'
);
/**
* $idempotency_key A value you specify that uniquely identifies this refund among refunds you've created for the tender. If you're unsure whether a particular refund succeeded, you can reattempt it with the same idempotency key without worrying about duplicating the refund. See [Idempotency](/basics/api101/idempotency) for more information.
* @var string
*/
protected $idempotency_key;
/**
* $tender_id The ID of the tender to refund. A [`Transaction`](#type-transaction) has one or more `tenders` (i.e., methods of payment) associated with it, and you refund each tender separately with the Connect API.
* @var string
*/
protected $tender_id;
/**
* $reason A description of the reason for the refund. Default value: `Refund via API`
* @var string
*/
protected $reason;
/**
* $amount_money The amount of money to refund. Note that you specify the amount in the __smallest denomination of the applicable currency__. For example, US dollar amounts are specified in cents. See [Working with monetary amounts](#workingwithmonetaryamounts) for details. This amount cannot exceed the amount that was originally charged to the tender that corresponds to `tender_id`.
* @var \SquareConnect\Model\Money
*/
protected $amount_money;
/**
* Constructor
* @param mixed[] $data Associated array of property value initializing the model
*/
public function __construct(array $data = null)
{
if ($data != null) {
if (isset($data["idempotency_key"])) {
$this->idempotency_key = $data["idempotency_key"];
} else {
$this->idempotency_key = null;
}
if (isset($data["tender_id"])) {
$this->tender_id = $data["tender_id"];
} else {
$this->tender_id = null;
}
if (isset($data["reason"])) {
$this->reason = $data["reason"];
} else {
$this->reason = null;
}
if (isset($data["amount_money"])) {
$this->amount_money = $data["amount_money"];
} else {
$this->amount_money = null;
}
}
}
/**
* Gets idempotency_key
* @return string
*/
public function getIdempotencyKey()
{
return $this->idempotency_key;
}
/**
* Sets idempotency_key
* @param string $idempotency_key A value you specify that uniquely identifies this refund among refunds you've created for the tender. If you're unsure whether a particular refund succeeded, you can reattempt it with the same idempotency key without worrying about duplicating the refund. See [Idempotency](/basics/api101/idempotency) for more information.
* @return $this
*/
public function setIdempotencyKey($idempotency_key)
{
$this->idempotency_key = $idempotency_key;
return $this;
}
/**
* Gets tender_id
* @return string
*/
public function getTenderId()
{
return $this->tender_id;
}
/**
* Sets tender_id
* @param string $tender_id The ID of the tender to refund. A [`Transaction`](#type-transaction) has one or more `tenders` (i.e., methods of payment) associated with it, and you refund each tender separately with the Connect API.
* @return $this
*/
public function setTenderId($tender_id)
{
$this->tender_id = $tender_id;
return $this;
}
/**
* Gets reason
* @return string
*/
public function getReason()
{
return $this->reason;
}
/**
* Sets reason
* @param string $reason A description of the reason for the refund. Default value: `Refund via API`
* @return $this
*/
public function setReason($reason)
{
$this->reason = $reason;
return $this;
}
/**
* Gets amount_money
* @return \SquareConnect\Model\Money
*/
public function getAmountMoney()
{
return $this->amount_money;
}
/**
* Sets amount_money
* @param \SquareConnect\Model\Money $amount_money The amount of money to refund. Note that you specify the amount in the __smallest denomination of the applicable currency__. For example, US dollar amounts are specified in cents. See [Working with monetary amounts](#workingwithmonetaryamounts) for details. This amount cannot exceed the amount that was originally charged to the tender that corresponds to `tender_id`.
* @return $this
*/
public function setAmountMoney($amount_money)
{
$this->amount_money = $amount_money;
return $this;
}
/**
* Returns true if offset exists. False otherwise.
* @param integer $offset Offset
* @return boolean
*/
public function offsetExists($offset)
{
return isset($this->$offset);
}
/**
* Gets offset.
* @param integer $offset Offset
* @return mixed
*/
public function offsetGet($offset)
{
return $this->$offset;
}
/**
* Sets value based on offset.
* @param integer $offset Offset
* @param mixed $value Value to be set
* @return void
*/
public function offsetSet($offset, $value)
{
$this->$offset = $value;
}
/**
* Unsets offset.
* @param integer $offset Offset
* @return void
*/
public function offsetUnset($offset)
{
unset($this->$offset);
}
/**
* Gets the string presentation of the object
* @return string
*/
public function __toString()
{
if (defined('JSON_PRETTY_PRINT')) {
return json_encode(\SquareConnect\ObjectSerializer::sanitizeForSerialization($this), JSON_PRETTY_PRINT);
} else {
return json_encode(\SquareConnect\ObjectSerializer::sanitizeForSerialization($this));
}
}
}