-
Notifications
You must be signed in to change notification settings - Fork 76
Description
Description:
Enhance the wePOS interface (React frontend + WooCommerce backend) by adding the ability for users to manually add custom products during checkout. This feature will enable cashiers to enter product details on the fly without requiring the product to exist beforehand in WooCommerce, supporting both temporary sales and optional saving of these products for future reuse.
Goal:
Allow manual product entry directly within the POS system with editable pricing and quantity, and seamless integration into the checkout and order process.
Requirements
1. Custom Sale Button
- Add a new button to the POS product panel labeled
+ Custom Productor+ Manual Entry. - Clicking this button opens a modal popup form for entering custom product details.
2. Popup Modal Form
-
Input fields for:
- Product Name (text input)
- Unit Price (number input)
- Quantity (number input)
-
Submit button labeled "Add to Cart".
3. Cart Behavior
-
Upon submission, add the custom product to the POS cart like a regular product.
-
Display in the cart:
- Product Name
- Quantity
- Editable Price field
- Line total (quantity × price)
4. Check Compatibility
- When processing payment, treat custom products as regular line items in the order.
- Custom products should appear correctly in the order details.
- Optionally, mark these as virtual products without SKU or stock management.
5. Save or Discard Option (Optional)
-
Provide a setting to allow the cashier to either:
- Save the custom product to WooCommerce for future reuse, or
- Use the product only temporarily within the POS session (not saved to WooCommerce).
Benefits
- Enables flexibility for quick manual sales of items not in the WooCommerce catalog.
- Improves POS usability for dynamic sales scenarios such as custom orders or services.
- Maintains order data integrity by properly integrating manual entries with WooCommerce orders.
CC
@jamil-mahmud Bhai.
N.B.: I submitted this feature request on behalf of the client.