POS Restaurant UrbanPiper
Integrate multi-platform food delivery into Odoo restaurant POS. Receive orders from Grab, Shopee, Gojek, Baemin in one system, auto-sync menu, manage efficiently.
Overview
POS Restaurant UrbanPiper module integrates UrbanPiper - a food delivery order aggregation platform - into Odoo restaurant POS, allowing you to receive and process orders from multiple delivery apps like Grab, Shopee Food, Gojek, Baemin in a single unified system.
No need to manage multiple devices and separate apps, all online orders are automatically synced to Odoo POS for unified processing with dine-in orders.
Key Features
Key points
• UrbanPiper integration - Connect with 20+ food delivery platforms via single API
• Auto-receive orders - Orders from Grab, Shopee, Gojek appear instantly on Odoo POS
• Two-way menu sync - Update dishes, prices, availability from Odoo to all platforms
• Centralized order management - Process all online and offline orders in one interface
• Auto status updates - Confirmed, preparing, ready for pickup synced back to platforms
• Unified reporting - Revenue from all channels in one POS report
• Real-time inventory management - Auto-hide out-of-stock items across all platforms
• Multi-location support - Each restaurant has separate UrbanPiper configuration
Target Users
Key points
• Restaurant owners - Manage online orders from multiple platforms in one system
• Restaurant managers - Monitor delivery performance, optimize operations
• Kitchen staff - Receive and process online orders alongside dine-in orders
• Cashiers - Confirm payments and complete orders
• Restaurant chains - Manage integrated delivery for multiple locations
How to Use
Steps
1. Register UrbanPiper account at urbanpiper.com
2. Connect delivery platforms (Grab, Shopee, Gojek) with UrbanPiper
3. Install POS Restaurant UrbanPiper module in Odoo
4. Go to Point of Sale → Configuration → Settings
5. Enter UrbanPiper API Key and Store ID for each POS
6. Configure product mapping between Odoo and UrbanPiper
7. Initial menu sync: click "Sync Menu to UrbanPiper"
8. Enable "Auto-receive orders" to receive orders automatically
9. Open POS session, online orders will appear automatically
10. Process orders as usual, status automatically updates to platforms
Scenario 1: Restaurant receives orders from 3 platforms simultaneously
During peak hours, restaurant receives orders from Grab, Shopee and Gojek simultaneously. All orders appear on one POS screen with color-coded platform identification.
Kitchen processes by priority, staff updates "Preparing" status for each order, customers receive real-time notifications on their apps.
Scenario 2: Dish runs out of ingredients mid-shift
Beef pho runs out of broth at 2 PM. Staff marks "Out of stock" in Odoo POS.
System automatically hides Beef Pho on Grab, Shopee, Gojek within 1 minute, avoiding unfulfillable orders.
Scenario 3: Update menu prices for all platforms
Restaurant increases prices by 10% due to ingredient cost increase. Update prices in Odoo once.
Click "Sync Menu", new prices synced to Grab, Shopee, Gojek, Baemin in minutes without logging into each platform.
Scenario 4: Multi-channel revenue report
End of day, manager wants to know revenue from each platform. Open POS session report.
View details: Grab 15M, Shopee 12M, Gojek 8M, dine-in 20M - total 55M, all in one report.
Scenario 5: Manage 5-location restaurant chain
Each location has separate Store ID on UrbanPiper, separate configuration in Odoo POS.
District 1 branch receives District 1 orders, District 7 branch receives District 7 orders, no confusion. Consolidated reports by location and platform.
Important Terminology
Key points
• UrbanPiper - Order aggregator platform connecting restaurants with multiple delivery apps
• Store ID - Unique identifier of restaurant on UrbanPiper
• API Key - Security key for Odoo to connect with UrbanPiper
• Menu Sync - Synchronize dish list, prices, descriptions from Odoo to delivery platforms
• Order Status - Order states: New, Acknowledged, Food Ready, Dispatched, Completed, Cancelled
• Channel - Sales channel (Grab, Shopee, Gojek, Baemin, etc.)
• Item Availability - Dish stock status (Available, Out of Stock)
• Webhook - Mechanism for UrbanPiper to send new orders to Odoo automatically
Tips for Effective Use
Key points
• Sync menu early morning - Avoid peak hours to not affect orders
• Use color coding - Configure different colors for each platform for easy identification
• Update inventory real-time - Mark out of stock immediately when detected to avoid unfulfillable orders
• Check product mapping - Ensure dishes in Odoo match correctly with platform items
• Set preparation time - Configure reasonable prep time for accurate customer expectations
• Monitor cancellation rate - If high, review process and preparation time
• Backup API key - Store API key securely, losing key will interrupt order reception
• Test before go-live - Create test orders on each platform to ensure proper operation
System Requirements
Key points
• Point of Sale and POS Restaurant modules installed
• UrbanPiper account registered and verified
• Delivery platforms connected with UrbanPiper
• Stable internet connection for real-time order reception
• Public webhook URL for UrbanPiper to send orders
• SSL certificate for webhook URL (HTTPS required)
Troubleshooting: Not receiving orders from UrbanPiper
Key points
• Check API Key and Store ID entered correctly
• Confirm webhook URL configured in UrbanPiper dashboard
• Check internet connection and firewall not blocking webhook
• View logs in Odoo: Settings → Technical → Logging
• Test webhook using UrbanPiper tools
• Contact UrbanPiper support if issue is on their side
Troubleshooting: Menu not syncing to platforms
Key points
• Check product mapping is correct
• Confirm products are published and have prices
• View sync logs for specific errors
• Try syncing individual products separately
• Check dish names, descriptions for unsupported special characters
Troubleshooting: Order status not updating
Key points
• Check POS user permissions can update orders
• Confirm API connection still active
• Try manual update in UrbanPiper dashboard
• View API call logs for returned errors
• Restart POS session if needed
Troubleshooting: Duplicate orders
Key points
• Check webhook not configured multiple times
• Confirm not multiple POS sessions receiving same orders
• View order ID to identify original order
• Cancel duplicate and notify customer if needed
Frequently Asked Questions
Key points
• Which platforms does UrbanPiper support? - Grab, Shopee Food, Gojek, Baemin, Loship, Now, Foody and 20+ other platforms depending on region
• UrbanPiper cost? - UrbanPiper charges per order or monthly, contact UrbanPiper for pricing
• Can I use without UrbanPiper? - No, this module requires UrbanPiper account to function
• Do online orders count in POS revenue? - Yes, online orders processed like regular POS orders, counted in session and reports
• Can I disable orders from specific platform? - Yes, configure in UrbanPiper dashboard, no Odoo changes needed
• How to know which platform order is from? - Orders have tags or color coding by channel (Grab green, Shopee orange, etc.)
• Can I edit online orders? - Not recommended, online orders already paid by customer, editing may cause confusion
Business Benefits
Key points
• Increase 40-60% revenue by reaching customers on multiple delivery platforms
• Save 80% time managing online orders vs using multiple separate devices
• Reduce 90% errors from manual order entry from phones to POS
• Unified reporting enables more accurate business decisions
• Optimize kitchen operations by viewing all orders on one screen
• Expand market without new infrastructure investment
• Improve customer experience with real-time status updates