Hi Ali,
By default, Odoo makes the email field required at checkout because it’s used to identify the customer, send confirmations, and link the contact to the sales order. There’s no setting to disable this in Community.
If you really want to make it optional, you’d need a small customization:
-
Inherit the website sale checkout template (website_sale.checkout) and remove the required="1" from the email input.
-
Override the controller (website_sale) to bypass the validation that checks for the email field.
-
Make sure you still have another way to identify the customer (phone, login, or generated contact), otherwise you’ll run into duplicate/anonymous customers issues.
Best practice: instead of removing it completely, some people replace it with an optional field and auto-generate a placeholder email for customers who don’t enter one (e.g., guest123@yourshop.com).
Hope this helps!