public function setReason($reason)
    {
        if (! Type::isValidReason($reason)) {
            throw new \Exception(sprintf('The action "%s" isn\'t supported!', $reason));
        }

        $this->reason = $reason;

        return $this;
    }
public function setReason($reason)
    {
        if (! Type::isValidReason($reason)) {
            throw new \Exception(sprintf('The action "%s" isn\'t supported!', $reason));
        }

        $this->reason = $reason;

        return $this;
    }
@param string $reason

@return Payload

@throws \Exception