$ 168.01
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Point of Sale (point_of_sale)
• Discuss (mail) • Inventory (stock) • Invoicing (account) • Restaurant (pos_restaurant) |
| Community Apps Dependencies | Show |
| Lines of code | 2408 |
| Technical Name |
aminitech_mpesa_self_order |
| License | OPL-1 |
| Website | https://aminitechsolutions.com |
| Versions | 18.0 19.0 |
M-Pesa Kiosk & Self-Order Payments
Let customers order and pay M-Pesa without a cashier. STK Push to their phone, a scan-to-pay QR, or a direct Till payment — the kiosk listens for the money and the order confirms itself, paid, in the kitchen.
Ways to pay on the kiosk screen — STK Push to the phone, scan-to-pay QR code, or paying the Till directly. The kiosk confirms whichever lands first.
Cashiers needed — the payment is registered on the POS order automatically (receipt number included) and the order flips to paid on its own.
Backend switch adds a “Pay at the counter” choice next to M-Pesa — per kiosk, straight from POS settings. Payment methods stay exactly what you allow.
Order â STK Push â kitchen. No queue at the till
Real screens from the live demo kiosk. No mockups, no renders.
The standard Odoo kiosk your customers already use
This app plugs into Odooâs native POS self-ordering kiosk. Categories, product cards, cart: untouched. What changes is what happens at “Pay” — M-Pesa becomes a first-class kiosk payment method.
M-Pesa — and, if you allow it, the counter
The kiosk offers exactly the payment methods you configured in the backend. Flip one switch in POS settings and a “Pay at the counter” card appears next to M-Pesa — the order goes to the kitchen unpaid and is settled at the register. No hardcoded flows, your rules.
STK Push, QR and direct Till on one screen
Amount up top, one phone field for the STK Push — and below it a scan-to-pay QR plus your Till number for customers who prefer paying directly. From the moment this screen opens, the kiosk is listening: whichever way the money arrives, it confirms automatically.
The M-Pesa PIN prompt lands on their phone
This is a real Lipa na M-Pesa prompt — the customer sees the amount and your business name and just enters their PIN. No Till typed wrong, no “confirm the name” dance. It is the exact Safaricom experience they already trust, driven straight from the kiosk.
The prompt lands, the kiosk waits with them
The STK Push fires and the kiosk switches to a live “Check your phone” screen — polling Safaricomâs confirmation and listening on the payment websocket. Cancelled or expired? A friendly retry — and a direct Till payment can still finish the order.
Payment registered, kitchen notified, number on screen
The payment is registered on the POS order with its M-Pesa receipt number, the order is marked paid and sent to preparation, and the pick-up number shows on screen. Your cashier sees a settled order in POS Orders — the same happy path Odooâs own card-terminal kiosks follow.
From install to a self-paying kiosk
Install (requires the M-Pesa POS Payments app). Create a POS payment method with type M-Pesa STK (Self-Order), point it at your M-Pesa configuration and add it to the kioskâs POS.
Turn on Odooâs kiosk self-ordering for that POS (pay after: Each Order) and, if you want it, tick “Pay at Counter” in the same settings page. Open the register — the kiosk is live and collecting on its own.
The complete M-Pesa family for Odoo
Every app below shares the same M-Pesa configuration and security roles. Buy any combination â enter your Daraja credentials once. All of them are covered by one documentation portal.
Other Odoo services we offer
Common questions
What do I need before buying this?
How does the customer actually pay?
Is it the same money trail as my tills?
Can I build my own ordering frontend on top?
What happens if the customer cancels the PIN prompt?
What if the customer pays the Till directly instead of using the prompt?
Can customers choose to pay cash?
Talk to us today
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Point of Sale (point_of_sale)
• Discuss (mail) • Inventory (stock) • Invoicing (account) • Restaurant (pos_restaurant) |
| Community Apps Dependencies | Show |
| Lines of code | 2408 |
| Technical Name |
aminitech_mpesa_self_order |
| License | OPL-1 |
| Website | https://aminitechsolutions.com |
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