addressBuilder = $addressBuilder; } /** * Returns card data params based on payment and billing address info * * @param Order $order * @return array */ public function build(Order $order) { $result = []; $address = $order->getBillingAddress(); if ($address === null) { return $result; } $payment = $order->getPayment(); $result = [ 'card' => [ 'cardHolderName' => $address->getFirstname() . ' ' . $address->getLastname(), 'last4' => $payment->getCcLast4(), 'expiryMonth' => $payment->getCcExpMonth(), 'expiryYear' => $payment->getCcExpYear(), 'billingAddress' => $this->addressBuilder->build($address) ] ]; return $result; } }