I would like to remove the Billing Name and Address section (which includes the fields First Name, Last Name, Street, City, Country, State, ZIP) from the donation page. What would be a good way to go about that?

The section shows when I am using a credit card payment processor (Stripe in my case).

I have tried commenting out the section from the smarty template /civicrm/templates/CRM/Core/BillingBlock.tpl. However, CiviCRM naturally still checks those fields upon form submission and gives an error that they are empty.

For background information, the reason for removing the section is that I noticed that the workflow of completing this section on a mobile device is extremely poor. It was difficult even for me to complete these fields on a mobile device - actually I quit trying after some effort. Additionally, our organization does not use this user data, so removing the section seems like a very good streamlining of the user experience without any disadvantage to the organization.

  • 1
    The fields required for a processor are configured in the processor code (ie. the Stripe extension)
    – user4278
    May 6, 2018 at 22:27

5 Answers 5


How are you collecting the payment? As far as I understand it, those fields are required by certain merchant account services. For instance, on our page if we do pay later or Paypal, those fields do not come up. But if you select credit card, which is run through Authorize.net, then those fields become available (and required). There's a checkbox to state that the information is the same as what was entered above.


If you are using latest version of stripe extension there’s a option to disable billing block.

Go to Administer >> CiviContribute >> Stripe Settings

enter image description here


[UPDATE FOR 2021!] - Different payment processors require different amounts of data. The older processors, like Authorize.net, required more. Newer processors require less.

Traditionally CiviCRM had a fixed set of required billing fields - see below. However, work has been done to allow payment processors to define an alternative set of billing fields. I know the Stripe processor does this but I don't know which others do.

This is the "traditional" hard-coded list of billing fields. It's in CRM/Core/BAO/UFField.php in the assignAddressField() function, it's called $requiredBillingFields. Note the lines directly above that let a payment processor define the alternate set.

  • first name
  • last name
  • street address
  • city
  • state/province
  • postal code
  • country

Finally, if you include all of the required fields in your page's top profile(s), you'll get the "My Billing Address is the same as above" checkbox. The fields must be associated to the Billing address.

Note: Adding these fields to another profile (bottom) won't create the My billing Address is the same as above checkbox.

  • I did not know that credit card companies require this data to process a transaction. Do you have any sources that could shed more light on that? The only one I found was this answer on Quora from someone who works at Stripe and says the minimum data they require to create a charge is the card number, expiration date and amount of the charge. May 9, 2018 at 18:27
  • 2
    Authorize.net requires them for their AVS service; it's true that perhaps this is an overcautious list of fields. I heard from a rep at Square that far fewer fields than we think are actually mandatory! However, my answer is an accurate reflection of Civi's requirements as of Civi 5.1. If you think they should be relaxed, I would talk to the folks on chat.civicrm.org in the "dev-financial" channel. May 10, 2018 at 0:29

Have you looked in the Manage Contribution Page > Profiles? This is where you control what displays there.

But some of that information maybe required to process the credit cards. I do not know what is the minimum required fields.

If you run into some of the address fields being required or you have to display one profile, you can edit the Billing Name and Address Profile under Administration > Custom Data and Screens > Profiles. Look for the Billing Address Profile and click Edit, then start disabling fields and test your donation page. You might be able to disable down to just the Postal Code.


You need to have:

  • First name (required)
  • Last name (required)
  • Street address (associated to Billing address and required)
  • City (associated to Billing address and required)
  • Sate/province (associated to Billing address and required)
  • Postal code (associated to Billing address and required)
  • Country (associated to Billing address and required)

This will allow for the "My Billing Address is the same as above" to appear and checked

Note: You must add these fields to the top profile on your Contribution or Event page for it to work properly.

In addition, on the Fees page "Billing address required" must be unchecked (or the user will be required to add billing info twice).

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.