public function execute()
    {
        parent::execute();

        $rewardSvc = new HpsGiftCardService($this->service->servicesConfig());
        if ($this->token != null && ($this->token instanceof HpsTokenData)) {
            if ($this->card == null) {
                $this->card = new HpsGiftCard();
            }
            $this->card->tokenValue = $this->token->tokenValue;
        }
        return $rewardSvc->reward(
            $this->card,
            $this->amount,
            $this->currency,
            $this->gratuity,
            $this->tax
        );
    }