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

        // Convert captures data to Capture[]

        $captures = [];
        foreach ($this['captures'] as $capture) {
            $captureId = $capture[Capture::ID_FIELD];

            $object = new Capture(
                $this->connector,
                $this->getLocation(),
                $captureId
            );
            $object->exchangeArray($capture);

            $captures[] = $object;
        }

        $this['captures'] = $captures;


        // Convert refunds data to Refund[]
        if (isset($this['refunds'])) {
            $refunds = [];
            foreach ($this['refunds'] as $refund) {
                $refundId = null;
                if (isset($refund[Refund::ID_FIELD])) {
                    $refundId = $refund[Refund::ID_FIELD];
                }

                $object = new Refund(
                    $this->connector,
                    $this->getLocation(),
                    $refundId
                );
                $object->exchangeArray($refund);

                $refunds[] = $object;
            }
            $this['refunds'] = $refunds;
        }

        return $this;
    }