Name = Add Combo Product {product included in combo} (eg Add Combo Product - Coke 600ml)
Menu Item Name = {product included in combo}
Quantity = 1
Order State = Combo
Price = 0.00
Calculate Price = False
Create a Rule for Order Added To Ticket.
Name = Combo Product {the name of the combo meal} (eg Combo Product Burger Combo)
Menu Item Name - Equals - {the name of the combo meal} (eg Burger Combo)
Action - Add the above action you created
Now when you select your Combo Product, it will add another product with zero price and tag as a combo item.
Update your Ticket Template to include the following to remove the 0.00 price from the receipt.
[ORDERS:Combo]
-- Format for combo orders
<L00> * {QUANTITY} {NAME}
{ORDER TAGS}
NOTE - You can’t close a ticket with an Item that has a default 0.00 price. But you can close a ticket if the Item has been added via Add Order Action and its price changed to 0.00.
In the other words the reason you can close is setting Calculate Price to false.
I think a default order addedrule that changes calculate price to false for selected products should fix that.
Edit: (Just to clarify) it should work like John suggested, but by handling order added event filtered with product tag or zero price. Even they can be just gifts.
You can use order tags for the drinks, since they will be shared across may different breakfast meals.
Add Order Action is great for fixed combos like bacon, eggs & coffee. As coffee can be sold separately and can have order tags (milk, sugar, etc)
For drinks like Coke, Fanta, etc, using Order Tags can be easier, and can cut down on the Rules needed to get it working with many products.
So you have Breakfast set, you select options and for drinks you create additional order line to be able to print them to bar but you want to keep their prices as zero.
Leaving an items price as zero means in SambaPOS you’ll decide it’s price later so it won’t permit you to close ticket. To close ticket you need to change order’s Calculate Price setting to False by using Update Order action. But that needs additional clicks so at the time you add order you also need to update that order to set Calculate Price to False. A solution might be handling Order Added event and disable price calculation if order price is zero.
The problem I can see here is that the combo is manual and not an automatic addition of drinks, etc.
So we need to track how many combo meals and show that x number of beverages is free/discounted (this is where subtitle action set to Ticket Title can help). Then as a beverage is selected, it updates the free beverage count and adjusts the price of the beverage. The beverage order will print at the bar.
The other option is to use Add Order to add a beverage product (Combo Beverage) with Order Tags for the specific beverages on offer. That way it can print to the bar.
Better still.
We can detect when a specific Order Tag has been selected.
We select our Big Breakfast Combo, and use Order Tags to select the beverage to go with it.
We use the Rule Order Tagged to catch this and then use Add Order Action to add the product to the Ticket at the discounted price.
So whenever I add a Breakfast, the SET product automatically is added to the Order Line and once selected we can then select the required drink from portions list:
This does not only speed up the order taking process but also reduces user errors where sometimes the staff would forget to use set drink and select i.e coffee which would then overcharge the customer.
And most importantly I can finally close the ticket.
I’ve also added Allow Zero Priced Orders setting to Ticket Types but that may generate issues in some cases since having a single product with zero price will automatically close ticket. If it is an issue for you you can either handling portion changed rule to change Calculate Price setting or fine tune Ticket Payment Check rule to keep tickets open in a case ticket total is zero, no payments and orders exists.
However when null value portions are selected, we were unable to close orders until @emre worked his magic and added ‘Allow Zero Priced Orders’ for Ticket Types, see:
As a result we are now able to add null value drinks to our order and can now successfully close the order without the pop up box occurring telling us we cannot close the ticket:
I was curious to know if it is possible to add multiple set drinks automatically when multiple breakfast’s are ordered. So if the user hits 4 x Brunch Br, I only get one Set Drink. But it will have to appear on seperate order lines, as each drink might vary. See:
I’m away today, so I can help tonight when I get home.
After thinking more about it, Value Looper will not work.
We need to load a variable with the quantity when you add a combo order, then have another Order Added rule to add your free drinks until the variable reaches zero.