public function getBillingFields()
    {
        $fields = array(
            'billingAddress1' => TextField::create(
                $this->getFieldName('billingAddress1'),
                _t('SilverStripe\Omnipay\PaymentForm.BillingAddress1', 'Address')
            ),
            'billingAddress2' => TextField::create(
                $this->getFieldName('billingAddress2'),
                _t('SilverStripe\Omnipay\PaymentForm.BillingAddress2', 'Address line 2')
            ),
            'city' => TextField::create(
                $this->getFieldName('billingCity'),
                _t('SilverStripe\Omnipay\PaymentForm.BillingCity', 'City')
            ),
            'postcode' => TextField::create(
                $this->getFieldName('billingPostcode'),
                _t('SilverStripe\Omnipay\PaymentForm.BillingPostcode', 'Postcode')
            ),
            'state' => TextField::create(
                $this->getFieldName('billingState'),
                _t('SilverStripe\Omnipay\PaymentForm.BillingState', 'State')
            ),
            'country' => TextField::create(
                $this->getFieldName('billingCountry'),
                _t('SilverStripe\Omnipay\PaymentForm.BillingCountry', 'Country')
            ),
            'phone' => TextField::create(
                $this->getFieldName('billingPhone'),
                _t('SilverStripe\Omnipay\PaymentForm.BillingPhone', 'Phone')
            )
        );

        $this->cullForGateway($fields);

        return FieldList::create($fields);
    }