M-Pesa receipts arrive as mobile notifications and are manually matched to invoices at the end of the week — by which point some are missed.
Automatic M-Pesa Daraja webhook integration: each payment is matched to the correct open invoice in real time and the eTIMS record updated.

