Websites11 min read

Payment webhook reliability: retries and idempotency with Flutterwave (2026)

Mohamed Bah·Fondateur, Kolonell
August 13, 2026
Share:
Payment webhook reliability: retries and idempotency with Flutterwave (2026)

Payment webhook reliability: retries and idempotency with Flutterwave (2026)

Websites

The verdict in three sentences

In 2026, 2 to 5 % of mobile money payment webhooks are not delivered on the first try, producing orders that are paid but never confirmed. The fix is two words: idempotency (never process the same event twice) and an exponential retry queue. With a fallback poll every 15 minutes, the phantom-order rate falls below 0.1 %.

Anatomy of a lost webhook

Cause2026 frequencyFix
Server down 2-3 s1-2 %exponential retry
Network timeout0.5-1.5 %retry + polling
Non-200 response0.5-1 %replay the event
Duplicate event3-6 %idempotency key
Out-of-order (paid before created)1-2 %buffered queue

A webhook is never guaranteed: treat it as a best-effort signal. The truth stays the provider-side status, verified by fallback polling.

Retry and idempotency strategy

ParameterRecommended 2026 value
Retry sequence1 s / 5 s / 30 s / 300 s
Attempts4-6
Idempotency window24 h
Fallback pollingevery 15 min
Delay before manual alert72 h
Cost of an unreconciled order5,000-50,000 FCFA in support

The idempotency key is usually the provider's transaction ID. If the same ID arrives twice, the second is ignored. This simple rule eliminates most duplicates and double credits.

Need a professional website?

Kolonell builds websites that attract clients, optimized for the Sénégalese market. Free quote in 2 minutes.

Mini case study

Moussa runs a store in Lagos, 1,200 orders/month. Without idempotency or retry, he suffered 3 % phantom orders, i.e. 36/month, each averaging 20,000 FCFA in support cost (time, refund, reputation): 720,000 FCFA/month of damage. After adding the retry queue (1/5/30/300 s) + 15-min polling, the rate falls to 0.08 %, roughly 1 order/month. Saving: ~700,000 FCFA/month and a support team that can breathe.

FAQ

Why not rely on the webhook alone? Because 2 to 5 % never arrive on the first try. The webhook speeds confirmation, but the source of truth is the status polled on the provider side.

What is an idempotency key concretely? A unique identifier (often the provider transaction ID) your system remembers for 24 h. If the same event returns, it is ignored, preventing double-crediting an order.

Doesn't polling overload the API? No, if you only poll pending transactions every 15 minutes and stop as soon as a final status lands. It is a safety net, not the main mechanism.

How much does a phantom order cost? Between 5,000 and 50,000 FCFA depending on whether you refund, re-ship or handle a dispute. Across dozens of cases per month, the bill quickly passes 500,000 FCFA.

Let's talk about your project. We harden your Flutterwave, Wave and Orange Money webhooks with idempotency and retry to eliminate phantom orders. WhatsApp +221 77 596 93 33.

Tags:#payment webhook#flutterwave#idempotency#retry#reliability#payment integration#mobile money#development
Share:

Mohamed Bah

Fondateur, Kolonell

Passionate about digital and entrepreneurship in Africa, Mohamed has been helping Sénégalese businesses with their digital transformation since 2020. Founder of Kolonell, he believes every SME deserves a professional and accessible online présence.