FooSales integrates with the WooCommerce Product Add-Ons extension, so you can offer customizable product options directly at the FooSales POS. It’s included in the FooSales free trial y Plan FooSales Plus. Any product add-on settings you apply in WooCommerce are available in the FooSales web app, where staff can select and edit them when adding items to the cart or completing orders.
Requisitos
Para que funcione la integración FooEvents se necesita lo siguiente:
- Un activo Plan FooSales Plus O 7 días de prueba gratuita
- Plugin FooSales WordPress installed (1.41+)
- En WooCommerce Complementos de productos el plugin debe estar instalado y activo en su sitio
Important Notes #
- This integration is available only during the FooSales free trial or with the Plan FooSales Plus.
- Full support for adding and editing product add-ons is currently only available in the FooSales web version (built-in version and hosted version). In the iPad and Android Tablet versions, you can currently only view add-ons captured online (e.g., through the WooCommerce storefront). We are actively working on integrating full compatibility into the mobile apps to enable adding and editing add-ons directly. Sign up to receive a notification when full compatibility to released on the iPad and Android Tablet apps.
- For detailed setup and management of product add-ons in WooCommerce, refer to the official WooCommerce documentation: WooCommerce Product Add-Ons.
How the WooCommerce Product Add-ons Integration Works #
Add-ons in FooSales work the same way they do with the standard WooCommerce Product Add-Ons plugin. When you add a product with add-ons to the cart, its options appear in the Product Tools Panel in FooSales. This makes order fulfillment straightforward and, combined with alertas de pedido, is especially useful for restaurants and takeout operations handling online orders.
Product Tools Panel
The FooSales web version lets merchants view and modify add-ons for items already added to the cart.
Order List
Product add-on selections appear under each order’s items in the FooSales order list.
Receipt Printing
Add-ons are printed on receipts, giving staff and customers a clear record. This is especially useful for restaurants and take-out services, helping kitchen or service staff fulfil orders accurately.
Global Add-Ons
Global Product Add-ons allow merchants to apply Product Add-on options to multiple products across their store. These product add-ons are organized into groups and can be limited to specific product categories.
- Vaya a Products > Add-Ons in your WooCommerce dashboard.
- Haga clic en Create your first add-on to start a new global add-on group.
- Configure the group settings:
- Name: A unique internal identifier (not visible to customers).
- Product Categories: Optionally limit the add-on to specific categories; otherwise, it applies store-wide.
- Display Order: A numerical value to control the add-on’s position on product pages (lower numbers appear higher; per-product add-ons default to order 10).
- Within the group, select an add-on type from the Add field dropdown and configure its options (see Add-On Types below).
In FooSales, global add-ons appear automatically when adding eligible products to the cart, allowing real-time selection at the POS.
For more details, see WooCommerce Global Add-Ons.
Per-Product Add-Ons
Per-product add-ons allow you to set product add-ons for specific products.
- Edit the desired product in WooCommerce.
- Ir a la Product data > Add-ons tab.
- Select an add-on type from the Add field dropdown and configure it.
- Optionally, import add-ons from another product.
- To exclude global add-ons for this product, uncheck Use Global Add-Ons?.
In FooSales, per-product add-ons display when the product is added to the cart, with options selectable or modifiable in the Product Tools Panel.
For more details, see WooCommerce Per-Product Add-Ons.
Add-On Types
The WooCommerce Product Add-Ons extension supports various field types. These can be configured as free or paid options for both global and per-product add-ons. Below is a list of supported types, with setup notes and examples relevant to FooSales usage.
- Multiple Choice: Allows single selection from a list, displayed as dropdowns, radio buttons, or images. Includes a default “None” option for radio buttons.
- Configurar: Define options with labels and prices; enable “Require selection” if mandatory.
- Example: Selecting a single sauce for a meal.
- FooSales Usage: Options appear as selectable during cart addition.
- Checkboxes: Permits multiple selections for optional extras.
- Configurar: Add options with labels and prices; set defaults if needed.
- Example: Adding toppings like cheese or onions.
- FooSales Usage: Useful for quick multi-select at POS.
- Custom Price (Customer Defined Price): Allows customers to enter a numerical value added to the product price.
- Configurar: Set a label and optional minimum/maximum values.
- Example: A donation amount or custom engraving cost.
- FooSales Usage: Merchants can input the value at the POS.
- Short Text: Accepts a single line of text input.
- Configurar: Define a label and optional character limit.
- Example: A custom message for a gift.
- FooSales Usage: Input field appears when adding the product.
- Long Text: Allows multi-line text input.
- Configurar: Define a label and optional character limit.
- Example: Special instructions for an order.
- FooSales Usage: Input field available in the cart or Product Tools Panel.
- Date: Enables selection of a date via a date picker.
- Configurar: Set a label and optional date range.
- Example: Choosing a delivery date.
- FooSales Usage: Date picker available at POS.
Note that the File Upload type is not supported in FooSales.
For a complete list and detailed configuration, see WooCommerce Add-On Types.
WooCommerce Product Add-ons Pricing Options
Product Add-ons can be configured as free or have associated costs, configurable during setup. Pricing options include:
- Flat Fee: Adds a fixed amount to the product price per add-on selection (e.g $2 for extra cheese).
- Quantity-Based: Multiplies the add-on price by the product quantity (e.g $1 per topping, with the total cost scaled by the number of items ordered).
- Percentage-Based: Adds a percentage of the product’s base price (e.g A 10% surcharge for premium packaging).
- Custom Price: For the Custom Price add-on type, the customer-entered value is added to the product price (donation amount specified by the customer).
In FooSales, pricing is calculated automatically based on the selected add-ons and displayed in the cart, ensuring transparency at the POS.
For more details, see WooCommerce Add-On Pricing Options.
Importing and Exporting Add-Ons
WooCommerce Product Add-Ons supports importing and exporting global add-ons via JSON files. Below are two sample JSON files that you can use for testing or modify for your store:
Burger Add-Ons Sample:
Configures add-ons for a burger, such as toppings or sauces.
[ { "name": "Bun", "title_format": "label", "description_enable": 0, "description": "", "placeholder_enable": 0, "placeholder": "", "type": "multiple_choice", "display": "radiobutton", "position": 0, "required": 1, "restrictions": 0, "restrictions_type": "any_text", "adjust_price": 0, "price_type": "flat_fee", "price": "", "id": "1757422001", "min": 0, "max": 0, "default": 0, "options": [ { "label": "Standard", "price": "", "image": "", "price_type": "flat_fee", "visibility": 1 }, { "label": "Sesame", "price": "", "image": "", "price_type": "flat_fee", "visibility": 1 }, { "label": "Brioche", "price": "5", "image": "", "price_type": "flat_fee", "visibility": 1 }, { "label": "Gluten Free", "price": "10", "image": "", "price_type": "flat_fee", "visibility": 1 }, { "label": "Lettuce Wrap (no bun)", "price": "", "image": "", "price_type": "flat_fee", "visibility": 1 } ] }, { "name": "Patty Size", "title_format": "label", "description_enable": 0, "description": "", "placeholder_enable": 0, "placeholder": "", "type": "multiple_choice", "display": "radiobutton", "position": 1, "required": 1, "restrictions": 0, "restrictions_type": "any_text", "adjust_price": 0, "price_type": "flat_fee", "price": "", "id": "1757422002", "min": 0, "max": 0, "default": 0, "options": [ { "label": "Single Patty", "price": "", "image": "", "price_type": "flat_fee", "visibility": 1 }, { "label": "Double Patty", "price": "35", "image": "", "price_type": "flat_fee", "visibility": 1 }, { "label": "Triple Patty", "price": "70", "image": "", "price_type": "flat_fee", "visibility": 1 } ] }, { "name": "Doneness", "title_format": "label", "description_enable": 0, "description": "", "placeholder_enable": 0, "placeholder": "", "type": "multiple_choice", "display": "radiobutton", "position": 2, "required": 1, "restrictions": 0, "restrictions_type": "any_text", "adjust_price": 0, "price_type": "flat_fee", "price": "", "id": "1757422003", "min": 0, "max": 0, "default": 0, "options": [ { "label": "Rare", "price": "", "image": "", "price_type": "flat_fee", "visibility": 1 }, { "label": "Medium Rare", "price": "", "image": "", "price_type": "flat_fee", "visibility": 1 }, { "label": "Medium", "price": "", "image": "", "price_type": "flat_fee", "visibility": 1 }, { "label": "Medium Well", "price": "", "image": "", "price_type": "flat_fee", "visibility": 1 }, { "label": "Well Done", "price": "", "image": "", "price_type": "flat_fee", "visibility": 1 } ] }, { "name": "Cheese", "title_format": "label", "description_enable": 0, "description": "", "placeholder_enable": 0, "placeholder": "", "type": "multiple_choice", "display": "radiobutton", "position": 3, "required": 1, "restrictions": 0, "restrictions_type": "any_text", "adjust_price": 0, "price_type": "flat_fee", "price": "", "id": "1757422004", "min": 0, "max": 0, "default": 0, "options": [ { "label": "No Cheese", "price": "", "image": "", "price_type": "flat_fee", "visibility": 1 }, { "label": "Cheddar", "price": "10", "image": "", "price_type": "flat_fee", "visibility": 1 }, { "label": "Swiss", "price": "12", "image": "", "price_type": "flat_fee", "visibility": 1 }, { "label": "American", "price": "8", "image": "", "price_type": "flat_fee", "visibility": 1 }, { "label": "Blue Cheese", "price": "15", "image": "", "price_type": "flat_fee", "visibility": 1 } ] }, { "name": "Extra Meat Toppings", "title_format": "label", "description_enable": 0, "description": "", "placeholder_enable": 0, "placeholder": "", "type": "checkbox", "display": "select", "position": 4, "required": 0, "restrictions": 0, "restrictions_type": "any_text", "adjust_price": 0, "price_type": "flat_fee", "price": "", "id": "1757422005", "min": 0, "max": 0, "default": "", "options": [ { "label": "Crispy bacon", "price": "18", "image": "", "price_type": "flat_fee", "visibility": 1 }, { "label": "Fried egg", "price": "12", "image": "", "price_type": "flat_fee", "visibility": 1 }, { "label": "Extra beef patty", "price": "35", "image": "", "price_type": "flat_fee", "visibility": 1 }, { "label": "Grilled chicken strip", "price": "20", "image": "", "price_type": "flat_fee", "visibility": 1 }, { "label": "Pulled pork", "price": "22", "image": "", "price_type": "flat_fee", "visibility": 1 } ] }, { "name": "Extra Veggie Toppings", "title_format": "label", "description_enable": 0, "description": "", "placeholder_enable": 0, "placeholder": "", "type": "checkbox", "display": "select", "position": 5, "required": 0, "restrictions": 0, "restrictions_type": "any_text", "adjust_price": 0, "price_type": "flat_fee", "price": "", "id": "1757422006", "min": 0, "max": 0, "default": "", "options": [ { "label": "Lettuce", "price": "", "image": "", "price_type": "flat_fee", "visibility": 1 }, { "label": "Tomato", "price": "", "image": "", "price_type": "flat_fee", "visibility": 1 }, { "label": "Pickles", "price": "", "image": "", "price_type": "flat_fee", "visibility": 1 }, { "label": "Onions (raw)", "price": "", "image": "", "price_type": "flat_fee", "visibility": 1 }, { "label": "Caramelized onions", "price": "5", "image": "", "price_type": "flat_fee", "visibility": 1 }, { "label": "Jalapeños / chili", "price": "5", "image": "", "price_type": "flat_fee", "visibility": 1 }, { "label": "Mushrooms", "price": "8", "image": "", "price_type": "flat_fee", "visibility": 1 }, { "label": "Avocado", "price": "18", "image": "", "price_type": "flat_fee", "visibility": 1 } ] }, { "name": "Sauces", "title_format": "label", "description_enable": 0, "description": "", "placeholder_enable": 0, "placeholder": "", "type": "checkbox", "display": "select", "position": 6, "required": 0, "restrictions": 0, "restrictions_type": "any_text", "adjust_price": 0, "price_type": "flat_fee", "price": "", "id": "1757422007", "min": 0, "max": 0, "default": "", "options": [ { "label": "Ketchup", "price": "", "image": "", "price_type": "flat_fee", "visibility": 1 }, { "label": "Mustard", "price": "", "image": "", "price_type": "flat_fee", "visibility": 1 }, { "label": "Mayonnaise", "price": "", "image": "", "price_type": "flat_fee", "visibility": 1 }, { "label": "BBQ sauce", "price": "5", "image": "", "price_type": "flat_fee", "visibility": 1 }, { "label": "Garlic aioli", "price": "5", "image": "", "price_type": "flat_fee", "visibility": 1 }, { "label": "Peri-Peri", "price": "5", "image": "", "price_type": "flat_fee", "visibility": 1 } ] }, { "name": "Extras", "title_format": "label", "description_enable": 0, "description": "", "placeholder_enable": 0, "placeholder": "", "type": "checkbox", "display": "select", "position": 7, "required": 0, "restrictions": 0, "restrictions_type": "any_text", "adjust_price": 0, "price_type": "flat_fee", "price": "", "id": "1757422008", "min": 0, "max": 0, "default": "", "options": [ { "label": "Extra cheese slice", "price": "15", "image": "", "price_type": "flat_fee", "visibility": 1 }, { "label": "Extra pickles", "price": "3", "image": "", "price_type": "flat_fee", "visibility": 1 }, { "label": "Extra sauce", "price": "3", "image": "", "price_type": "flat_fee", "visibility": 1 } ] }, { "name": "Exclusions (Remove)", "title_format": "label", "description_enable": 0, "description": "", "placeholder_enable": 0, "placeholder": "", "type": "checkbox", "display": "select", "position": 8, "required": 0, "restrictions": 0, "restrictions_type": "any_text", "adjust_price": 0, "price_type": "flat_fee", "price": "", "id": "1757422009", "min": 0, "max": 0, "default": "", "options": [ { "label": "No lettuce", "price": "", "image": "", "price_type": "flat_fee", "visibility": 1 }, { "label": "No tomato", "price": "", "image": "", "price_type": "flat_fee", "visibility": 1 }, { "label": "No onions", "price": "", "image": "", "price_type": "flat_fee", "visibility": 1 }, { "label": "No pickles", "price": "", "image": "", "price_type": "flat_fee", "visibility": 1 }, { "label": "No sauce", "price": "", "image": "", "price_type": "flat_fee", "visibility": 1 } ] } ]
Pizza Add-Ons Sample:
Configures add-ons for a pizza, such as extra toppings or crust options.
[{"name":"Base","title_format":"label","description_enable":0,"description":"","placeholder_enable":0,"placeholder":"","type":"multiple_choice","display":"radiobutton","position":0,"required":1,"restrictions":0,"restrictions_type":"any_text","adjust_price":0,"price_type":"flat_fee","price":"","id":"1757411846","min":0,"max":0,"default":0,"options":[{"label":"Standard","price":"","image":"","price_type":"flat_fee","visibility":1},{"label":"Gluten Free","price":"10","image":"","price_type":"flat_fee","visibility":1},{"label":"Linseed","price":"","image":"","price_type":"flat_fee","visibility":1}]},{"name":"Cheese Options","title_format":"label","description_enable":0,"description":"","placeholder_enable":0,"placeholder":"","type":"multiple_choice","display":"radiobutton","position":1,"required":1,"restrictions":0,"restrictions_type":"any_text","adjust_price":0,"price_type":"flat_fee","price":"","id":"1757411111","min":0,"max":0,"default":0,"options":[{"label":"Mozzarella","price":"","image":"","price_type":"flat_fee","visibility":1},{"label":"Extra Mozzarella","price":"15","image":"","price_type":"flat_fee","visibility":1},{"label":"Cheddar","price":"15","image":"","price_type":"flat_fee","visibility":1},{"label":"Parmesan","price":"20","image":"","price_type":"flat_fee","visibility":1}]},{"name":"Extra Meat Toppings","title_format":"label","description_enable":0,"description":"","placeholder_enable":0,"placeholder":"","type":"checkbox","display":"select","position":2,"required":0,"restrictions":0,"restrictions_type":"any_text","adjust_price":0,"price_type":"flat_fee","price":"","id":"1757411112","min":0,"max":0,"default":"","options":[{"label":"Pepperoni","price":"15","image":"","price_type":"flat_fee","visibility":1},{"label":"Salami","price":"13","image":"","price_type":"flat_fee","visibility":1},{"label":"Chicken","price":"8","image":"","price_type":"flat_fee","visibility":1},{"label":"Ham","price":"22","image":"","price_type":"flat_fee","visibility":1},{"label":"Sausage (Italian, chorizo, chicken, etc.)","price":"11","image":"","price_type":"flat_fee","visibility":1},{"label":"Ground beef","price":"13","image":"","price_type":"flat_fee","visibility":1}]},{"name":"Extra Veggie Toppings","title_format":"label","description_enable":0,"description":"","placeholder_enable":0,"placeholder":"","type":"checkbox","display":"select","position":3,"required":0,"restrictions":0,"restrictions_type":"any_text","adjust_price":0,"price_type":"flat_fee","price":"","id":"1757411113","min":0,"max":0,"default":"","options":[{"label":"Mushrooms","price":"5","image":"","price_type":"flat_fee","visibility":1},{"label":"Bell peppers","price":"8","image":"","price_type":"flat_fee","visibility":1},{"label":"Onions (red, white, caramelized)","price":"3","image":"","price_type":"flat_fee","visibility":1},{"label":"Jalape\u00f1os or chili peppers","price":"5","image":"","price_type":"flat_fee","visibility":1},{"label":"Olives (black, green, kalamata)","price":"3","image":"","price_type":"flat_fee","visibility":1},{"label":"Spinach","price":"5","image":"","price_type":"flat_fee","visibility":1}]}]
Steps to Import/Export
- Export: In WooCommerce, go to Products > Add-Ons, select a global add-on group, and export it as a JSON file.
- Import: Upload the JSON file in the same section to apply the add-on group to your store.
- Test the imported add-ons in FooSales by adding relevant products to the cart to ensure they display and function as expected.
For detailed instructions, see WooCommerce Importing and Exporting Add-Ons.
Potential Use Cases for FooSales and WooCommerce Product Add-Ons Integration
The FooSales integration with WooCommerce Product Add-Ons enables businesses to offer highly customizable products online and at the point of sale. Below is a categorized list of use cases, showcasing how various industries can leverage this integration to capture detailed customer preferences.
Food and Beverage
- Pizzeria: Customize size, crust (thin, gluten-free), sauce (marinara, BBQ), toppings (mushrooms, pepperoni), extra cheese, cut style, and bake level (well-done, light).
- Burger Joint: Select patty (beef, plant-based), cook temperature, bun (brioche, lettuce wrap), cheese, toppings (bacon, avocado), sauces, and meal deals (fries, drink).
- Build-Your-Own Salad Bar: Choose greens (kale, romaine), protein (grilled chicken, tofu), toppings (croutons, nuts), dressing, and toasting option for add-ons like bread.
- Coffee Shop: Specify size, milk (soy, oat), extra shots, syrups (hazelnut, vanilla), foam level, temperature (hot, iced), and toppings (whipped cream, cocoa).
- Bubble Tea Bar: Select tea base (black, green), sugar level, ice level, toppings (boba, aloe vera), size, and lactose-free options.
- Sushi Bar: Customize rolls with add-ins (tempura, avocado), sauce (soy, eel), extra fish, wasabi/ginger portions, and sides (miso soup, seaweed salad).
- Ramen Shop: Choose broth (miso, shio), noodle firmness, protein (chashu, tofu), spice level, toppings (nori, egg), and bowl size.
- Indian Takeaway: Specify spice level (mild, hot), base (rice, naan), sides (raita, pickle), combo platters, and dietary options (vegan, gluten-free).
- Mexican Taqueria: Select tortilla (corn, flour), protein (al pastor, chicken), salsa (verde, habanero), toppings (cilantro, onions), add-ons (guacamole, queso), and sides.
- Sandwich/Deli: Choose bread (rye, whole wheat), protein (ham, turkey), cheese, toppings (lettuce, tomato), sauces, toasting, size, and meal deals.
- BBQ Smokehouse: Customize cut (brisket, ribs), rub/sauce (spicy, sweet), sides (mac and cheese, beans), bread (roll, cornbread), and platter options.
- Breakfast/Brunch Spot: Select egg style (fried, poached), toast type, side swaps (sausage, avocado), and pancake toppings (maple syrup, fruit).
- Ice Cream/Gelato Shop: Choose cup/cone, flavors, mix-ins (cookie dough, nuts), sauces, waffle cone upgrade, and sprinkles.
- Smoothie/Juice Bar: Select base (water, almond milk), fruits, boosts (protein, chia), sweetness level, and size.
- Pasta Bar: Choose pasta (penne, spaghetti), sauce (alfredo, marinara), add-ins (meatballs, mushrooms), cheese, bake option, and gluten-free.
- Mediterranean/Meze: Select protein (gyro, falafel), sides (hummus, tabbouleh), sauces (tzatziki, harissa), and pita type.
- Hot Pot/Korean BBQ: Choose broth, spice level, meat/veg bundles, dipping sauces, and noodle add-ons.
- Fried Chicken Shop: Select piece count, spice level, sauces (ranch, hot), sides (fries, coleslaw), biscuit, and combo options.
- Crêperie: Choose batter (classic, gluten-free), fillings (Nutella, ham), toppings, sauces, ice cream add-on, and combo drink.
- Catering Trays: Specify tray size, portion count, dietary options (vegan, nut-free), utensil packs, delivery window, and chafing fuel.
Specialty Retail and Services
- Custom T-Shirt/Merch Shop: Select size/color, print area, name/number, artwork selection, and rush production.
- Florist/Gift Boutique: Choose bouquet size, vase, extras (chocolates, balloons), card message, and pickup/delivery date.
- Bike Shop: Select pedals, tubeless setup, bottle cages, fit notes, and service packages.
- Computer/Electronics Retailer: Choose RAM/SSD options, OS install, data transfer, and extended warranty.
- Trophy/Engraving Store: Select style/size, finish, engraving text, logo options, and expedited turnaround.
- Furniture/Home Décor: Choose fabric/finish, leg style, cushion firmness, stain-guard, and white-glove delivery.
- Hardware/Paint Retailer: Select color code, finish (matte, gloss), volume, tint strength, and accessory bundles.
- Framing Shop: Choose frame style, mat color, glass type, hanging kit, and rush service.
- Jewelry Store: Select ring size, engraving, metal upgrade, appraisal, and care plan.
- Garden Center/Nursery: Choose pot size, soil mix, repotting service, fertilizer, and delivery option.
- Musical Instrument Shop: Select setup level, string gauge, case, strap, and accessory bundles.
- Board Game/Hobby Store: Choose base game, expansions, sleeves, organizers, and paint kits.
- Cosmetics/Beauty Store: Select shade, build-a-bundle options, gift wrap, and optional engraving.
- Baby/Stroller Shop: Choose stroller model, car-seat adapter, rain cover, and travel bag.
- Automotive Parts Retailer: Select fitment, kit builder (pads/rotors), fluids, tools, and disposal fee.
- Home Brewing/Winemaking: Choose kit size, yeast strain, sanitizer, bottles/caps, and accessories.
- Coffee Roaster/Tea Retailer: Select grind size, bag weight, origin/roast, sampler add-on, and gift tin.
- Aquarium/Reptile Supplies: Choose tank kit, filter upgrade, lighting, substrate, and test kit.
- Skateboard/Scooter Shop: Select deck, truck width, wheels, bearings, and custom grip pattern.
- Stationery/Printables: Choose paper weight/finish, binding, page count, foil stamping, and envelope set.
Additional Notes
- Ensure that your WooCommerce Product Add-Ons extension is up to date to maintain compatibility with FooSales.
- Regularly test add-on configurations in FooSales to confirm they display and calculate correctly in the POS environment.
- For support or feature updates, including mobile app compatibility, check the FooSales Help Center or contact our support team.