You need to wrap this in:

    $card = $this->getCard()
    if ($card) {

Because the extra customer details may not always be passed. E.g.

https://github.com/omnipay/paypal/blob/master/src/Omnipay/PayPal/Message/ExpressAuthorizeRequest.php#L32