🎯 The problem
You want to show texts that only appear if:
Multiple services are ticked together
One service is ticked but another is not
A specific combination of services has been chosen
For example: only show "Complete disassembly & reassembly package" if both services have been chosen.
Who is this article for?
This article is for administrators who already have basic knowledge of if-statements. First read the article "How do I set which service descriptions appear in my quote?"
⚙️ What you need
Basic knowledge of if-statements (see previous article)
Administrator rights in Bas Software
Access to the template editor
✅ How to solve it
Type 1: Multiple services TOGETHER (AND)
When do you use this? You only want to show text if service A AND service B are both ticked.
Example: Disassembly AND reassembly
{% if project.usesService('disassemble') and project.usesService('assemble') %}COMPLETE FURNITURE PACKAGEWe disassemble here, move everything safely and professionally reassemble it all on site!{% endif %}This text only appears if both services are ticked.
Type 2: One service YES but another NOT (AND NOT)
When do you use this? You want to show text if service A is ticked but service B is not.
Example: Packing but no unpacking
{% if project.usesService('packing') and not project.usesService('unpack') %}⚠️ PLEASE NOTE: UNPACKING YOURSELFWe pack your belongings, but you take care of the unpacking in your new home yourself.{% endif %}Type 3: Three or more services together
Example: Deluxe package
{% if project.usesService('disassemble') and project.usesService('assemble') and project.usesService('storage') %}🌟 DELUXE REMOVALS PACKAGEWe disassemble everything, move it, store it safely if needed, and reassemble it all again.{% endif %}📖 Practical examples
Example 1: Warning about a missing service
{% if project.usesService('disassemble') and not project.usesService('assemble') %}⚠️ IMPORTANTYou have chosen disassembly but not reassembly. Make sure you have your own tools.{% endif %}Example 2: Extra information for a service combination
{% if project.usesService('packing') and project.usesService('provide_boxes') %}💡 GOOD TO KNOWWe deliver the boxes 3 working days before the moving date. Our packers will come and pack everything on moving day.{% endif %}Example 3: Storage with insurance
{% if project.usesService('storage') and project.usesService('insurance') %}⚡ STORAGE WITH FULL COVERYour belongings are stored safely with complete insurance cover. Total peace of mind!{% endif %}🔍 Syntax overview
What you want | Syntax |
Both A and B |
|
A yes, B no |
|
A or B (at least one) |
|
A, B and C all three |
|
⚠️ Common mistakes
Mistake 1: Forgotten spaces around 'and'
❌ WRONG: project.usesService('packing')andproject.usesService('unpack')
✅ CORRECT: project.usesService('packing') and project.usesService('unpack')
Mistake 2: 'NOT' in the wrong place
❌ WRONG: project.usesService('packing') not and project.usesService('unpack')
✅ CORRECT: project.usesService('packing') and not project.usesService('unpack')
The not comes directly before the service you want to exclude.
💡 Pro tips
Tip 1: Test all combinations
Create test quotes with these combinations:
Only service A
Only service B
A and B together
All services
No services
Tip 2: Keep it clear
With more than 3 and statements, consider whether you're making it too complex. Can it be simpler?
Tip 3: Add comments
{# This only shows for packing + storage #}{% if project.usesService('packing') and project.usesService('storage') %}Text here{% endif %}Comments between {# ... #} are invisible to customers.
❓ Frequently asked questions
Can I use OR instead of AND?
Yes! or means: the text appears if at least one service is ticked.
{% if project.usesService('packing') or project.usesService('unpack') %}You have chosen the packing and/or unpacking service.{% endif %}How many ANDs can I put in a row?
Technically unlimited, but keep it clear. More than 4 and becomes confusing.
Does this also work with other template fields?
Yes! You can also check other project details, but that's beyond the scope of this article.
🔗 Related articles
How do I set which service descriptions appear in my quote?
Overview of all service names for quote templates
🆘 Not managing?
Is your combination not testing as expected? Send us:
Your if-statement code
Which services you tick
What happens vs. what you expect
We're happy to help via chat or email! 💬
📋 Checklist before going live
☐ Tested with only service A ticked
☐ Tested with only service B ticked
☐ Tested with A and B ticked together
☐ Logic is correct: texts appear when you expect them to
☐ Every {% if %} has an {% endif %}