ConvertPaymentAction action not called when capturing payment

ConvertPaymentAction action not called when capturing payment.

Steps to reproduce
I register the ConvertPayment action in PaymentGatewayFactory.php like below:

    // PaymentGatewayFactory.php

    protected function populateConfig(ArrayObject $config)
    {
        $config->defaults([
            .....,
            'payum.action.convert_payment' => new ConvertPaymentAction(),
            ......
        ]);
    }
   // ConvertPaymentAction.php

       public function execute($request)
    {
        RequestNotSupportedException::assertSupports($this, $request);

        /** @var PaymentInterface $payment */
        $payment = $request->getSource();

        /** @var OrderInterface $order */
        $order = $payment->getOrder();

        $details = ArrayObject::ensureArrayObject($payment->getDetails());

        $details['amount'] = $payment->getAmount();
        $details['currency'] = $payment->getCurrencyCode();
        $details['orderId'] =  $order->getNumber();
        $details['customer'] = [
            'email' => $order->getCustomer()->getEmail()
        ];

        $request->setResult((array) $details);
    }

    public function supports($request)
    {
        dd($request);
        return
            $request instanceof Convert &&
            $request->getSource() instanceof PaymentInterface &&
            $request->getTo() == 'array'
            ;
    }
}

May be i’m doing it wrong?