DEV Community

Cover image for Can you safely retry a payout? Ask how your provider lets you look it up
Nduhukire Medard
Nduhukire Medard

Posted on Originally published at paydev-africa.pages.dev AI-assisted

Can you safely retry a payout? Ask how your provider lets you look it up

A timed-out payout is either safe to resend or a double payment. Paystack, Flutterwave, MTN MoMo and M-Pesa B2C each answer differently. Here's why.

Top comments (1)

Collapse
 
fintechrailsdigest profile image
Fintech Rails Digest •

the three-way fork at the top is the useful part: whether a resend is safe is a property of the lookup, not of the timeout. the failure mode worth naming is the hybrid, where the provider does support a lookup but only by their transaction id, which you never receive because the request timed out before the response ever arrived. then 'wait for the webhook' stops being a preference and becomes the only correct branch, and any job that retries on a timer is quietly running the double-payment path. for mobile money specifically, the human-decides branch also needs a documented escalation path, otherwise 'a person decides' turns into whoever happens to be on support that evening.