2028STK Push resultM-Pesa error 2028: Payment amount exceeds the M-Pesa limit
This is an STK Push (Lipa na M-Pesa Online) result code — it comes back on the Daraja callback after the customer responds to the payment prompt.
What causes it
The requested amount is above the customer's allowed M-Pesa transaction or wallet limit (per-transaction or daily maximum).
How to fix it
Ask the customer to pay a smaller amount, or split the payment. Confirm the amount is within Safaricom's transaction limits.
How paylod handles this
With paylod you never parse this code by hand: the hosted M-Pesa callback decodes the STK Push result for you and returns a normalized status, so you handle a clean success or failed webhook instead of raw Daraja result codes.
See the paylod M-Pesa API