Food Aggregators → POS | HungerStation · Keeta · Jahez · Marsool | Direct Order Sync
by Moaz Nabil https://github.com/moaaznaabilali$ 100.00
In-App Purchases| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Discuss (mail)
• Invoicing (account) • Point of Sale (point_of_sale) • Inventory (stock) |
| Lines of code | 1978 |
| Technical Name |
mn_food_aggregator_pos |
| License | OPL-1 |
| Website | https://github.com/moaaznaabilali |
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Discuss (mail)
• Invoicing (account) • Point of Sale (point_of_sale) • Inventory (stock) |
| Lines of code | 1978 |
| Technical Name |
mn_food_aggregator_pos |
| License | OPL-1 |
| Website | https://github.com/moaaznaabilali |
Stop the tablet chaos.
Four platforms. One screen.
Four tablets at the cashier. Four logins. Orders missed during rush hour. Sales reconciled from PDFs.
This module replaces all of it. Orders arrive directly in Odoo POS the second a customer hits "Order" on any of the four KSA aggregators.
The four KSA aggregators â natively integrated
Each one gets its own webhook URL, HMAC-SHA256 signature verification, and bi-directional status sync.
HungerStation
/aggregator/hungerstation/webhook
Keeta
/aggregator/keeta/webhook
Jahez
/aggregator/jahez/webhook
Marsool
/aggregator/marsool/webhook
Logos are the property of their respective brands and are shown for compatibility reference only.
Four logos. Four inboxes. Right inside the POS.
A floating panel with one button per aggregator â each shows the platform's real logo and a live count badge. Click a logo and that platform's orders fly open in a 5-column board: Received â Accepted â Preparing â Ready â Picked-up.
Real Odoo 19 POS â top-right: HungerStation 13 · Keeta 18 · Jahez 13 · Marsool 12 open orders.
Every order. Every state. One tap to advance.
Each card shows reference, customer, amount, driver, ETA, PAID badge and customer note. The big orange button advances state (Accept â Start preparing â Mark ready â Picked up) â and every transition automatically pushes back to the aggregator.
5-column kanban inside the POS â auto-refreshes every 6 seconds.
Operations & finance on one screen
8 KPI tiles · Today / MTD / YTD · MoM growth % · settled vs unsettled GMV · accounting-wiring health per platform · 7-day GMV trend · state breakdown · recent feed. Auto-refresh 30 s.
Native journals · native accounts · ZATCA-ready
Each aggregator binds to its own account.journal plus dedicated income, commission-expense, holding-receivable, refund and analytic accounts. Settlement posts a 3-line double-entry: Dr Bank + Dr Commission · Cr Holding. Configure once, reconcile in seconds.
3-step setup
Defaults in Settings
Aggregators â Settings â Accounting integration. Pick default journal, commission %, income / fee / holding accounts. Every new platform inherits these.
Per-platform overrides
A platform can override any default â useful when HungerStation gets its own "HungerStation bank" journal while Keeta books to a different one.
Wiring health on the dashboard
A live widget shows which platforms are READY and which are INCOMPLETE â so accounting never blindly trusts a misconfigured platform.
All defaults in one place
A dedicated Food Aggregators app on the Odoo Settings page â Accounting integration block (journal + accounts + commission %) and POS behaviour block (polling interval, sound alert, auto-print kitchen).
Every order from every platform
Platform badge · customer · amount · state · age. Filter by platform, by status, by branch.
Customer · driver · items · commission
Statusbar from received to delivered. Driver info pulled from the platform payload. Auto-mapped items.
Per platform · per branch
Webhook URL ready to paste · credentials encrypted at rest · auto-accept thresholds · commission account.
Every webhook · forensically logged
Signature OK · processed · error · linked order. Nothing happens silently.
How an order flows in 6 seconds
product.product via the menu mapping table.
pos.order is created pre-paid, kitchen ticket auto-fires.
What's in the box
Per-platform webhook
Dedicated URL per aggregator with HMAC verification. Bad signature â rejected, logged with IP + raw payload.
Auto-accept rules
Per platform: amount thresholds, on/off, instant POS routing. No cashier click needed during rush.
Two-way status sync
received â accepted â preparing â ready â picked-up â delivered. Every transition pushes back to the platform.
Menu mapping (EN + AR)
One table per platform. Bind each remote SKU to a product.product. Bilingual names. Push/pull from the platform.
Settlement reconciliation
Upload the platform's daily CSV. Auto-match by order ID. Book commission to a fee account, net to the bank â one click.
Driver tracking
Driver name, phone, ETA, GPS â pulled from the platform payload and displayed on the order screen.
Rush-hour pause
Pause receiving on any platform with one click. Webhook returns "paused" so orders stop piling up.
Live OWL dashboard
7 KPIs, per-platform GMV / commission / net, late-order alerts, recent feed. Auto-refresh every 30 s.
ZATCA-ready
Resulting pos.order produces a standard ZATCA Phase-1 e-invoice on close. No extra config.
Why it pays for itself in week 1
| Cashier mis-keying items | â Eliminated. Items map server-side. |
| Missed rush-hour order (30s tablet alert) | â Sticky toast + sound. Auto-accept available. |
| "Where's my SAR 2,300 from HungerStation last week?" | â Settlement CSV â matched â posted in 90 s. |
| Manual platform status updates by kitchen | â POS state change auto-pushes. |
| Stock not deducted for aggregator sales | â Native Odoo POS stock flow runs on close. |
Setup â 15 minutes per platform
Request your POS-integration credentials from each platform's merchant portal (HungerStation, Keeta, Jahez, Marsool each have a partner program). Then in Odoo:
$100. Once.
Lifetime updates · OPL-1 license · Free email support
Odoo 19, 18, 17 supported · Multi-company · Multi-branch · ZATCA · Bilingual EN + AR
أوقف فوضى الأجهزة اللوحية في مطبخك.
أربع منصات. شاشة واحدة.
أربعة أجهزة لوحية عند الكاشير. أربع تسجيلات دخول مختلفة. طلبات تضيع في وقت الذروة. تسويات مالية من ملفات PDF.
هذا التطبيق يستبدل كل ذلك. الطلبات تصل مباشرة إلى نقطة البيع في أودو في اللحظة التي يضغط فيها العميل "اطلب" على أي من المنصات الأربع.
المنصات الأربع — مدمجة بشكل أصيل
كل منصة لها رابط Webhook خاص بها · تحقق توقيع HMAC-SHA256 · مزامنة حالة ثنائية الاتجاه.
هنقرستيشن
كيتا
جاهز
مرسول
أربعة شعارات. أربعة صناديق وارد. داخل نقطة البيع مباشرة.
لوحة عائمة بزر لكل منصة — كل زر يعرض شعار المنصة الحقيقي وعدّاد مباشر للطلبات. اضغط الشعار لتفتح طلبات تلك المنصة في لوحة من ٥ أعمدة: مستلَم → مقبول → تحت التحضير → جاهز → استلمه السائق.
كل طلب. كل حالة. ضغطة واحدة للتقدم.
كل بطاقة تعرض المرجع، اسم العميل، المبلغ، السائق، الوقت المتوقع، شارة الدفع المسبق وملاحظة العميل. الزر البرتقالي الكبير ينقل الحالة (قبول → بدء التحضير → جاهز → استلمه السائق) — وكل انتقال يتم إرساله تلقائياً للمنصة.
العمليات والمالية على شاشة واحدة
٨ بطاقات مؤشرات أداء · اليوم / الشهر / السنة · نسبة النمو الشهري · المبلغ المُسوّى مقابل غير المُسوّى · صحة ربط المحاسبة لكل منصة · شريط اتجاه آخر ٧ أيام. تحديث تلقائي كل ٣٠ ثانية.
يومية مخصصة · حسابات أصلية · متوافق مع زاتكا
كل منصة ترتبط بيومية account.journal خاصة بها، مع حسابات منفصلة للإيرادات، عمولة المنصة، الذمم المدينة المعلقة، الاسترداد والتحليل. التسوية تسجل قيد ثلاثي تلقائي: مدين البنك + مدين العمولة · دائن المعلق.
الإعداد في ٣ خطوات
الإعدادات الافتراضية
من قائمة المنصات → الإعدادات → التكامل المحاسبي. اختر اليومية، نسبة العمولة، حسابات الإيرادات والعمولة والمعلق.
تخصيص لكل منصة
أي منصة تستطيع تجاوز الإعدادات الافتراضية — مفيد عندما يكون لـ هنقرستيشن يومية بنك مستقلة عن كيتا.
صحة الربط على اللوحة
عنصر مباشر في اللوحة يعرض حالة كل منصة جاهزة أو ناقصة الإعداد.
كل الإعدادات الافتراضية في مكان واحد
تطبيق "Food Aggregators" مخصص في صفحة إعدادات أودو — قسم التكامل المحاسبي (يومية + حسابات + نسبة عمولة) وقسم سلوك نقطة البيع.
لماذا يدفع التطبيق ثمن نفسه في الأسبوع الأول
| الكاشير يخطئ في إدخال الأصناف | → مستحيل. الأصناف تربط على الخادم تلقائياً. |
| طلب فاتك في ذروة الازدحام | → إشعار مستمر مع صوت تنبيه. خاصية القبول التلقائي متاحة. |
| "وين فلوسي من هنقرستيشن الأسبوع الماضي؟" | → ملف CSV → مطابقة → ترحيل في ٩٠ ثانية. |
| المطبخ يحدّث حالة الطلبات يدوياً | → تغيير الحالة في نقطة البيع يُرسل تلقائياً للمنصة. |
| المخزون لا يُخصم على مبيعات التطبيقات | → تدفق المخزون الأصلي في أودو يعمل عند إغلاق الطلب. |
١٠٠ دولار. مرة واحدة.
تحديثات مدى الحياة · ترخيص OPL-1 · دعم بريد إلكتروني مجاني
دعم أودو ١٧ و ١٨ و ١٩ · متعدد الشركات · متعدد الفروع · زاتكا · ثنائي اللغة EN + AR
Odoo Proprietary License v1.0 This software and associated files (the "Software") may only be used (executed, modified, executed after modifications) if you have purchased a valid license from the authors, typically via Odoo Apps, or if you have received a written agreement from the authors of the Software (see the COPYRIGHT file). You may develop Odoo modules that use the Software as a library (typically by depending on it, importing it and using its resources), but without copying any source code or material from the Software. You may distribute those modules under the license of your choice, provided that this license is compatible with the terms of the Odoo Proprietary License (For example: LGPL, MIT, or proprietary licenses similar to this one). It is forbidden to publish, distribute, sublicense, or sell copies of the Software or modified copies of the Software. The above copyright notice and this permission notice must be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Please log in to comment on this module