What You Can Do
With the Self-Order & Kiosk plugin, you can:- Fully Autonomous Payments: Customers complete the entire transaction from product selection to payment without staff assistance
- Card-Present Self-Service: Accept chip, swipe, and contactless card payments through Compago terminals in kiosk mode
- Seamless Customer Experience: Integrated payment flow within the self-order interface
- Automatic Payment Validation: Real-time payment status monitoring and order confirmation
- Timeout Protection: 90-second inactivity timeout with automatic payment cancellation
- Unattended Operations: Perfect for 24/7 kiosks and self-service scenarios
Difference Between Kiosk and Normal POS
Compago offers two distinct Odoo POS plugins designed for different business scenarios:| Feature | Point of Sale (Normal POS) | Self-Order & Kiosk |
|---|---|---|
| Use Case | Staff-operated checkout | Customer-operated self-service |
| Interaction | Cashier processes the sale | Customer completes entire transaction |
| Payment Flow | Staff initiates payment on terminal | Customer initiates and completes payment |
| Supervision | Staff present during transaction | Fully unattended operation |
| Module Dependency | pos_compago | pos_compago + pos_self_order + pos_self_order_compago |
| Best For | Retail stores, restaurants with counter service | Quick-service restaurants, cafeterias, self-service kiosks |
Both plugins can coexist in the same Odoo instance. You can configure different POS systems for attended and unattended scenarios using the appropriate plugin for each use case.
Use Cases
This plugin is ideal for:- Quick-service restaurants with ordering kiosks
- University and corporate cafeterias with self-checkout
- Movie theaters and entertainment venues
- Fast-food chains with unattended ordering stations
- Retail stores with self-service checkout lanes
- 24/7 convenience stores with minimal staffing
- Vending machine-style retail environments
How It Works
Here’s the complete self-service payment flow:- Customer Browses: Customer uses the self-order interface to browse products
- Add to Cart: Customer selects items and adds them to the cart
- Review Order: Customer reviews the order total and confirms
- Select Payment: Customer chooses Compago as the payment method
- Payment Intent Created: System creates a payment intent and activates the terminal
- Terminal Ready: Compago terminal displays the transaction amount
- Customer Pays: Customer presents their card (chip, swipe, or contactless)
- Payment Processing: Terminal processes the payment autonomously
- Status Monitoring: System polls payment status every 3 seconds
- Automatic Confirmation: On success, order is marked as paid and confirmed
- Receipt Display: Customer sees confirmation and can print receipt (if available)
Installation
Prerequisites
Before installing the Self-Order & Kiosk plugin, ensure you have:- Point of Sale plugin (
pos_compago) already installed and configured - The Self-Order module from Odoo enabled
- An active Compago account with API access
- At least one Compago physical terminal
- Your Odoo instance configured in MXN currency
Step 1: Install the Point of Sale Plugin
If you haven’t already installed the base Compago POS plugin:- Follow the complete installation guide in Point of Sale (POS)
- Verify the plugin is activated and configured with your API key
- Test that terminal payments work in a regular POS session
Step 2: Enable Self-Order Module in Odoo
The Self-Order & Kiosk plugin extends Odoo’s native self-order functionality:- Open your Odoo instance
- Go to Apps (enable Developer Mode if needed)
- Search for “Self-Order” or “pos_self_order”
- Click Install on the POS Self-Order module
- Wait for the installation to complete
The Self-Order module is an official Odoo module available in Odoo 16.0+ for retail and restaurant POS scenarios.
Step 3: Download the Kiosk Plugin
Visit the Odoo App Store and download the Compago Self-Order & Kiosk Integration: Download link: https://apps.odoo.com/apps/modules/18.0/pos_self_order_compagoYou must have an Odoo.sh instance to install custom apps. Self-hosted or community editions may not support third-party POS integrations.
Step 4: Install the Plugin in Odoo.sh
- Log in to your Odoo.sh dashboard
- Navigate to your instance
- Upload and install the
pos_self_order_compagomodule - Restart your instance if required
Step 5: Activate the Plugin
Once the module is uploaded to your Odoo.sh instance:- Open your Odoo instance
- Go to Apps (you may need to enable Developer Mode)
- Remove the “Apps” filter to show all modules
- Search for “Compago” or “Kiosk” or “Self Order”
- Click Activate on the Compago – Self-Order/Kiosk module
Configuration
Step 1: Ensure Prerequisites
Before configuring the kiosk, verify:- The Point of Sale app is installed
- The Self-Order module is installed
- The Compago POS plugin (
pos_compago) is active and configured - Your company is configured in MXN currency
- You have at least one bank journal configured in MXN
- You have a Compago physical terminal or terminal access
Step 2: Create or Configure a Self-Order POS
To enable self-order functionality:- Navigate to Point of Sale → Configuration → Settings
- Create a new POS or select an existing one
- Enable Self-Order Mode
- Select Kiosk as the self-order mode (not “Mobile”)
- Ensure the POS is configured to use MXN currency
- Save the settings
Odoo offers two self-order modes: Mobile (for customer phones) and Kiosk (for fixed terminals). The Compago plugin requires Kiosk mode for terminal integration.
Step 3: Configure Compago Payment Method
If you haven’t already created a Compago payment method during the base POS plugin setup:- Navigate to Point of Sale → Configuration → Payment Methods
- Click New to create a new payment method
-
Configure the following fields:
Basic Information:
- Name: Enter a descriptive name (e.g.,
Compago Kiosk,Self-Service Payment)
- Journal: Select a Bank journal from the dropdown
- Verify the journal is configured in MXN currency
- Use a Payment Terminal: Enable this option
- Integrate with: Select Compago from the dropdown
- Name: Enter a descriptive name (e.g.,
- API Key: Paste your Compago API key
- Environment: Select Production (or Demo for testing)
- Save the payment method
Step 4: Add Compago to Your Kiosk POS
- Navigate to Point of Sale → Configuration → Settings
- Select your kiosk POS
- Scroll to the Payments section
- In the Payment Methods field, add the Compago payment method
- Save the settings
Step 5: Configure Kiosk Display (Optional)
For optimal customer experience:- Configure display settings for the self-order interface
- Set up product images and descriptions for customer-facing display
- Configure receipt printing (if your kiosk has a customer-facing printer)
- Test the entire customer flow on the actual kiosk hardware
Using the Self-Order Kiosk
Once configured, the customer experience is fully autonomous:Customer Flow
- Customer approaches the self-service kiosk
- Customer browses products and adds items to cart
- Customer reviews the order and total
- Customer clicks Pay or Checkout
- Customer selects Compago as the payment method
- Compago terminal activates and displays the amount
- Customer inserts, taps, or swipes their card
- Terminal processes the payment
- Customer sees confirmation on screen
- Order is automatically sent to kitchen/fulfillment (if configured)
- Customer can print receipt (if printer is available)
Payment Monitoring
The system automatically monitors payment status:- Polling Interval: Checks payment status every 3 seconds
- Timeout: 90 seconds of inactivity triggers automatic cancellation
- Automatic Confirmation: Successful payments immediately mark the order as paid
- Failure Handling: Failed or expired payments notify the customer and offer retry
Testing the Integration
To verify the kiosk integration is working:- Open the self-order interface (access the kiosk URL or use the kiosk device)
- Add a test product to the cart
- Proceed to checkout
- Select Compago as the payment method
- Verify the terminal activates with the correct amount
- Use a test card (demo environment) or real card (production environment)
- Complete the payment on the terminal
- Confirm the order is automatically marked as paid
- Verify the order appears in your POS backend
Troubleshooting
Terminal doesn’t activate in kiosk mode
- Verify the base POS plugin is configured correctly and terminal works in attended POS mode
- Ensure your API key is correct and active
- Check that the POS is configured in Kiosk mode (not Mobile)
- Verify the terminal is powered on, connected, and linked to your Compago account
Payment gets stuck in “pending” state
- Check your network connection between Odoo and Compago’s API
- Verify the terminal is online and responsive
- Ensure there are no firewall rules blocking API communication
- Check Odoo logs for specific error messages
Payment times out before customer completes
- The default timeout is 90 seconds for security
- Ensure the terminal is easily accessible and clearly marked
- Provide on-screen instructions to guide customers
- Consider increasing terminal visibility or adding directional signage
Order not marked as paid after successful payment
- Verify the payment webhook/callback is configured correctly
- Check that the POS session is open and active
- Review Odoo logs for payment confirmation errors
- Ensure the journal and currency settings are correct
”Currency error” appears
- Ensure your company is configured in MXN
- Verify the selected journal is in MXN currency
- Check that the POS is configured to use MXN
- Ensure all products are priced in MXN
Payment Security
The Self-Order & Kiosk plugin includes several security features:- Payment Intent Isolation: Each payment creates a unique, single-use payment intent
- Timeout Protection: Abandoned payments are automatically cancelled after 90 seconds
- Status Validation: Payment status is verified server-side before order confirmation
- Amount Verification: Transaction amounts are validated against order totals
- Cancellation Support: Customers can cancel in-progress payments
Terminal Hardware
The Self-Order & Kiosk integration works with Compago-provided physical payment terminals in self-service configurations:- Kiosk-Mounted Terminals: Terminals integrated into kiosk enclosures
- Counter-Top Terminals: Terminals placed on customer-accessible surfaces
- Payment Totems: Standalone payment stations for unattended environments
- Chip & PIN (EMV)
- Contactless (NFC)
- Mobile Wallets (Apple Pay, Google Pay)
Support
If you encounter issues with the Self-Order & Kiosk plugin:- Verify the base Point of Sale plugin is working correctly in attended mode
- Check your API key is valid in the Compago Dashboard
- Ensure the POS is configured in Kiosk mode
- Verify the terminal is online and accessible to customers
- Review Odoo logs for detailed error messages
- Test the payment flow manually to isolate issues
- Contact Compago support at [email protected] for assistance with terminal or payment processing issues