Running an HVAC business with Odoo · Customer setup

How do I add a customer with different billing and service addresses in Odoo?

How do I add a customer with different billing and service addresses in Odoo? An illustrated HVAC owner connects one customer with a billing office and a service site.
AI-generated illustration. The step screenshots below show the actual Odoo interface.

Create the customer in Contacts, then use Add Related Contacts to add an Invoice address for billing and a Delivery address for the service site. Save the customer and reopen both addresses to check their details.

Your result

One customer with a saved billing-office address and a separate service-site address, ready for the later quotation workflow.

Alex Rivera runs Demo Air HVAC, a fictional heating and cooling business. His first customer, Demo Property H08, needs invoices sent to its billing office while the HVAC work happens at a different property. All example names and street addresses are fictional.

Follow the step-by-step setup

Before you begin

Complete the company-profile lesson and install the apps covered in the app-selection lesson. The demo has Contacts, Sales and Invoicing installed. Sign in with permission to create and edit contacts; this walkthrough uses the owner administrator.

The screenshots show Odoo 20.0-20260926 Community, using standard fields and native related contacts without Enterprise or customization. Have the correct customer name, billing address and service address ready. Search Contacts before using New to avoid creating a second copy of an existing customer.

Odoo calls the address types Invoice and Delivery. Here, Delivery represents the service site's address. This contact setup does not create an equipment register, dispatch a technician or automatically set a Project task's location.

Thirty-seven highlighted targets with a white pointer, gold border and English captions, without narration. The recording preserves the first creation and resumes the actual saved-address review after a trimmed pause. Screenshots were captured separately.

Create the customer contact

Step 1. Open the app menu

Click the grid-shaped app menu at the top left.

Step 1: Open the app menu. The actual Odoo control is highlighted in gold.
Open the app menu.

Step 2. Select Contacts

Select Contacts. Search for your customer before creating a new record. The example has no existing Demo Property H08 contact.

Step 2: Select Contacts. The actual Odoo control is highlighted in gold.
Select Contacts.

Step 3. Create a new customer contact

Click New. Odoo opens a blank contact form.

Step 3: Create a new customer contact. The actual Odoo control is highlighted in gold.
Create a new customer contact.

Step 4. Enter the customer name

Enter Demo Property H08 in Name (company or person). Use your own customer’s name in a real setup. The demo leaves email and phone blank.

Step 4: Enter the customer name. The actual Odoo control is highlighted in gold.
Enter the customer name.

Step 5. Find the customer country

Click Country and type United States. The matching country appears in the dropdown.

Step 5: Find the customer country. The actual Odoo control is highlighted in gold.
Find the customer country.

Step 6. Select United States

Select United States from the dropdown. This is the customer’s country for the example.

Step 6: Select United States. The actual Odoo control is highlighted in gold.
Select United States.

Step 7. Find the customer state

Click State and type Florida.

Step 7: Find the customer state. The actual Odoo control is highlighted in gold.
Find the customer state.

Step 8. Select Florida

Select Florida, shown with its US designation. Related addresses inherit these region values initially.

Step 8: Select Florida. The actual Odoo control is highlighted in gold.
Select Florida.

Step 9. Save the customer contact

Click the cloud-shaped Save manually control beside the customer name in the top bar. The customer is now saved.

Step 9: Save the customer contact. The actual Odoo control is highlighted in gold.
Save the customer contact.

Add the billing-office address

Step 10. Add the billing address

On the Contacts tab, click Add Related Contacts. The Create Related Contacts dialog opens.

Step 10: Add the billing address. The actual Odoo control is highlighted in gold.
Add the billing address.

Step 11. Choose Invoice address type

Select the Invoice badge. The dialog now shows invoice-address fields.

Step 11: Choose Invoice address type. The actual Odoo control is highlighted in gold.
Choose Invoice address type.

Step 12. Name the billing office

Enter Billing Office H08 in the name field so you can identify this address later.

Step 12: Name the billing office. The actual Odoo control is highlighted in gold.
Name the billing office.

Step 13. Enter the billing street

Enter 105 Demo Billing Lane in Street. This is a fictional example; use the actual billing street for your customer.

Step 13: Enter the billing street. The actual Odoo control is highlighted in gold.
Enter the billing street.

Step 14. Enter the billing city

Enter North Fort Myers in City.

Step 14: Enter the billing city. The actual Odoo control is highlighted in gold.
Enter the billing city.

Step 15. Enter the billing ZIP

Enter 33903 in ZIP.

Step 15: Enter the billing ZIP. The actual Odoo control is highlighted in gold.
Enter the billing ZIP.

Step 16. Review the inherited billing country

Check Country. It shows United States, inherited from the parent customer in this example. Use the correct country for the actual billing address.

Step 16: Review the inherited billing country. The actual Odoo control is highlighted in gold.
Review the inherited billing country.

Step 17. Review the inherited billing state

Check State. It shows Florida (US). Review inherited values whenever the billing office is in a different region.

Step 17: Review the inherited billing state. The actual Odoo control is highlighted in gold.
Review the inherited billing state.

Step 18. Save and close the billing address

Click Save & Close. The billing entry appears under the parent customer with the Invoice address type.

Step 18: Save and close the billing address. The actual Odoo control is highlighted in gold.
Save and close the billing address.

Add the service-site address

Step 19. Add the service-site address

Click Add Related Contacts again. Add the work location separately from the billing office.

Step 19: Add the service-site address. The actual Odoo control is highlighted in gold.
Add the service-site address.

Step 20. Choose Delivery address type

Select the Delivery badge. We use this stock address type for the HVAC service site.

Step 20: Choose Delivery address type. The actual Odoo control is highlighted in gold.
Choose Delivery address type.

Step 21. Name the service site

Enter Service Site H08 in the name field.

Step 21: Name the service site. The actual Odoo control is highlighted in gold.
Name the service site.

Step 22. Enter the service street

Enter 205 Demo Service Lane in Street. This fictional street differs from the billing office’s street.

Step 22: Enter the service street. The actual Odoo control is highlighted in gold.
Enter the service street.

Step 23. Enter the service city

Enter North Fort Myers in City.

Step 23: Enter the service city. The actual Odoo control is highlighted in gold.
Enter the service city.

Step 24. Enter the service ZIP

Enter 33903 in ZIP.

Step 24: Enter the service ZIP. The actual Odoo control is highlighted in gold.
Enter the service ZIP.

Step 25. Review the inherited service country

Check Country, which shows United States in the demo.

Step 25: Review the inherited service country. The actual Odoo control is highlighted in gold.
Review the inherited service country.

Step 26. Review the inherited service state

Check State, which shows Florida (US). Confirm the actual site’s region before saving.

Step 26: Review the inherited service state. The actual Odoo control is highlighted in gold.
Review the inherited service state.

Step 27. Save and close the service address

Click Save & Close. The service-site entry appears with the Delivery address type.

Step 27: Save and close the service address. The actual Odoo control is highlighted in gold.
Save and close the service address.

Save and reopen the addresses

Click Save manually in the customer’s top bar to save the related-address changes. This control disappears when the form has no pending changes. The screenshot shows it in a later unsaved capture; the video shows the original save of both addresses.

Step 28: Save both related addresses. The actual Odoo control is highlighted in gold.
Save both related addresses.

Step 29. Return to Contacts

Click Contacts in the breadcrumb to return to the contact list.

Step 29: Return to Contacts. The actual Odoo control is highlighted in gold.
Return to Contacts.

Step 30. Search for the saved customer

Type Demo Property H08 in the search box and press Enter. The demo shows the customer and its two related address rows.

Step 30: Search for the saved customer. The actual Odoo control is highlighted in gold.
Search for the saved customer.

Step 31. Reopen the saved customer

Select the row named exactly Demo Property H08, without the billing-office or service-site suffix. This opens the parent customer.

Step 31: Reopen the saved customer. The actual Odoo control is highlighted in gold.
Reopen the saved customer.

Step 32. Open the saved billing address

Click Billing Office H08 on the customer’s Contacts tab. Open the address to inspect its full details; the compact card shows its name, type and city.

Step 32: Open the saved billing address. The actual Odoo control is highlighted in gold.
Open the saved billing address.

Step 33. Review the saved billing street

Confirm 105 Demo Billing Lane in Street. Also check the Invoice type, billing name, city, ZIP, country and state against your intended billing address.

Step 33: Review the saved billing street. The actual Odoo control is highlighted in gold.
Review the saved billing street.

Step 34. Close the billing review without edits

Click Discard to leave the review without changing the saved address. The existing-address dialog has Save and Discard controls.

Step 34: Close the billing review without edits. The actual Odoo control is highlighted in gold.
Close the billing review without edits.

Step 35. Open the saved service address

Click Service Site H08 to inspect the second saved address.

Step 35: Open the saved service address. The actual Odoo control is highlighted in gold.
Open the saved service address.

Step 36. Review the saved service street

Confirm 205 Demo Service Lane in Street. Check the Delivery type and the remaining address details against the site where the work will happen.

Step 36: Review the saved service street. The actual Odoo control is highlighted in gold.
Review the saved service street.

Step 37. Close the service review without edits

Click Discard. Both saved related addresses remain on the customer record.

Step 37: Close the service review without edits. The actual Odoo control is highlighted in gold.
Close the service review without edits.

Check the final result

The customer has two related records: Billing Office H08, type Invoice, at 105 Demo Billing Lane; and Service Site H08, type Delivery, at 205 Demo Service Lane. Both have the checked city, ZIP and region. The addresses remain attached to the same customer after reopening.

Odoo copied the parent’s country and state when the related addresses were created. Its native address lookup resolved the configured Invoice and Delivery records correctly in this single-site example. No quotation, invoice or job was created. Check the selected addresses again when preparing the later quotation.

If your screen differs

The contact search can show the customer and related addresses together. Open the parent row before adding or reviewing related records. In the tested version, select Invoice or Delivery to expose the address fields. Save the related-address changes on the parent before leaving it.

If Save manually is absent and there are no pending changes, reopen the address to inspect the saved values. Avoid creating another record just to repeat the example. If an address is under the wrong customer or has the wrong type, correct that relationship before using it in a transaction.

Questions about customer addresses in Odoo

How do I use different invoice and delivery addresses in Odoo?

Create or open the customer, then use Add Related Contacts. Choose Invoice for the billing office and Delivery for the service site, enter their correct addresses and save. Reopen both related records to check their types and details.

Can one Odoo customer have multiple HVAC service addresses?

Related contacts provide separate address records under one customer. This walkthrough tests one Invoice address and one Delivery address. If you keep several sites, review the address selected on each later quotation; selection among multiple Delivery records was not tested here.

Why does Odoo select the wrong delivery address?

Check the address type and its parent customer, and distinguish the parent from related rows in search results. Then inspect the address selected on the transaction. In this example, the native lookup chose the single configured Delivery child; it does not establish selection behavior for several competing site addresses.

Does an Odoo contact store HVAC equipment history?

This lesson stores customer and address details. It does not create an installed-unit register, service history or automatic dispatch location. Those business needs require their own verified workflow; an address record alone does not establish them.

What is the difference between Invoice and Delivery addresses in Odoo?

Invoice identifies the billing address; Delivery identifies the delivery destination. For this HVAC example, the Delivery record represents the service site. Save the correct type and check the intended address when using it on later work.

Continue preparing the first job

Alex’s first customer now has a checked billing office and service site. Next, prepare the service products, supplier and materials that the first quotation will need.

Get help connecting your Odoo customer and job workflows

Review your customer setup, quotations and HVAC business workflows with an Odoo partner.

Talk to an Odoo partner