POS & Platform Integration: Technical Overview
This guide summarizes all relevant API endpoints, technical requirements, and key recommendations for a successful integration.
MERGEPORT
Last Update месяц назад
This article provides a complete technical overview of how to integrate your POS system with MERGEPORT.
It covers the key API endpoints, mandatory and optional requirements, and recommended best practices for handling orders, items, and synchronization.
MERGEPORT acts as a middleware layer between your POS system and over 30 connected ordering platforms (e.g., Lieferando, Wolt, Uber Eats, Foodora).
Once integrated, your POS automatically communicates with all supported platforms — receiving orders, updating statuses, and syncing menu data where applicable.
If you are starting your integration from scratch, this guide will help you understand:
Which API endpoints are required
How order and item synchronization works
How to handle unknown items and taxation correctly
What to test before going live
API Documentation
Full documentation of all API endpoints is available here:
Key API Endpoints
| Endpoint | Description | URL |
| GetOrders | Retrieves all active orders for the restaurant | https://ordering.mergeport.com/v4/documentation#operation/GetOrders |
| SetOrderState | Updates the order status (e.g., “acceptedByPos”) | https://ordering.mergeport.com/v4/documentation#operation/SetOrderState |
| SetPosItems | Sends item data from the POS to MERGEPORT (mandatory for item sync) | https://ordering.mergeport.com/v4/documentation#operation/SetPosItems |
| DeletePosItem | Deletes outdated items (optional) | https://ordering.mergeport.com/v4/documentation#operation/DeletePosItem |
Technical Requirements & Checklist
Delivery
Pickup
Dine-in (table orders)
Every POS must support status updates and transitions.
acceptedByPos is mandatory – this status triggers the “Preparation started” message on platforms like Lieferando.
It can be set automatically when an order is received or manually via user confirmation.
Optional statuses: rejectedByPos, canceledByProvider, readyForPickup
Each order includes order.possibleStateChanges, which defines allowed transitions.
The field timeChange: true/false indicates whether the delivery time can be dynamically updated.
Some platforms (e.g. Lieferando) do not support item synchronization. In these cases, item mapping must happen inside the POS.
Recommended fallback strategies:
A) Match incoming items by name or assign them to a generic fallback item with a default tax rate.
B) Allow manual mapping in the POS when unknown items are received.
C) Automatically create unknown items in the POS using the incoming name and price, applying the highest possible tax rate.
At the end of the day, the POS should display newly created items for tax review.
For more information on tax handling and fiscalization, see:
👉 Does MERGEPORT transmit tax information?
There are two supported methods:
Static delivery time configured in the POS settings.
Dynamic delivery time per order (enabled via timeChange: true).
Each order must support and process:
Discounts
Delivery fees
Tips
Item Data & Synchronization (Required for platforms with item sync)
Sync methods:
Automatically on change (recommended)
Periodically (e.g. daily cron job)
Manually triggered by the user
Item structure fields:
parentIds: links variants or toppings to the main item
options: defines item options and selection groups
categoryIds: assigns items to categories
menus: technically supported, but currently not recommended
Item Synchronization
Some platforms (especially self-ordering solutions) support item synchronization and fetch menu data directly from MERGEPORT (populated by the POS).
⚠️ Important:
Platforms like Lieferando do not support item sync.
In this case:
Menus must be maintained directly on the platform.
The posItemId must be manually set on the platform side.
Unknown incoming items should be handled using one of the fallback strategies described above.
Note:
POS item data is often not ideal for consumer-facing menus (e.g. missing descriptions, images, or allergens).
For best results, we recommend maintaining your delivery menus directly on the ordering platforms.
MERGEPORT always treats the POS system as the “source of truth” for structured item data.
Each order includes the following item identifiers:
internalId: ID used by MERGEPORT
orderItemId: ID of the item within the order
posItemId: POS or platform-assigned item ID
After Integration
Once the integration is active, your POS system is automatically connected to all major delivery and ordering platforms supported by MERGEPORT.
👉 List of supported integrations
Testing environment:
Test stores (e.g. Lieferando, Wolt, Uber Eats) are available upon request for development and QA.
Contacts & ResourcesTechnical support: support@mergeport.com
MERGEPORT Controller: https://controller.mergeport.com
API Documentation: https://ordering.mergeport.com/v4/documentation
