▶️ Introduction
Default POS receipts in Odoo are functional, but what if you want to add personalized details like a customer’s email and phone number or include a cleaner “Thank You” message? This blog shows you how to customise the Odoo 19 POS receipt template so your business receipts are more informative and professional — just like in our Odooistic video tutorial. YouTube
🎥 Watch the video tutorial here:
📌 What You’ll Achieve
By the end of this guide, you’ll be able to:
✔ Add the customer’s email address to the POS receipt
✔ Display the customer’s phone number
✔ Insert a custom “Thank You” message
✔ Maintain a clean and readable format — ideal for both printed and on-screen POS receipts YouTube
🛠 Step-by-Step Customization Guide
🔹 1. Locate the POS Receipt Template
Odoo’s POS receipts use QWeb templates. To customise these, you’ll need to extend or override the existing receipt template in your custom module. Typically, the receipt template file lives under:
addons/point_of_sale/static/src/xml/pos_receipt.xml
Copy this into your custom module and update it with the new fields you want.
🔹 2. Add Customer Email & Phone
Inside the receipt template, identify where customer details are displayed. You’ll need to insert code like the following (example QWeb):
<t t-if="order.get_client()"> <div>Email: <t t-esc="order.get_client().email"/></div> <div>Phone: <t t-esc="order.get_client().phone"/></div> </t>
This snippet checks if the order has a customer and then prints the email and phone on the receipt.
🔹 3. Clean “Thank You” Message
At the bottom of the receipt, you can add your own styled message. For example:
<div class="text-center"> <strong>Thank You for Your Purchase!</strong> <div>Visit Again 😊</div> </div>
This creates a friendly and professional closing on the receipt, making it more user-friendly.
🔹 4. Update Your Custom Module
Make sure your custom XML is included in the module manifest (__manifest__.py). It might look like:
'data': [ 'views/pos_receipt_custom.xml', ],
Then upgrade the module in Odoo to see the changes reflected.
🧠 Tips & Best Practices
✔ Test with multiple customers to ensure the email and phone fields show correctly.
✔ If a customer has no email or phone, gracefully hide those lines to avoid blank entries.
✔ Use CSS to format the text so it prints cleanly on receipt paper.
✔ Keep receipt length short to save paper and avoid clutter.
📌 Conclusion
Customising the POS receipt in Odoo 19 is a simple yet powerful way to make your point-of-sale experience more personalised and professional. By adding customer email, phone number, and a thank-you message, you enhance communication and leave a positive impression on your customers. YouTube
If you found this helpful, be sure to watch the full Odooistic video for a visual walkthrough and code demonstration: