wGrow
menu
The Reconciliation Screen Is Where Integrations Tell The Truth
Foundations 1 August 2026 · 7 min

The Reconciliation Screen Is Where Integrations Tell The Truth

By wGrow Project Team ·

SMS gateway integrations bring a third failure mode into the mix: transport success is real this time, but it’s the wrong success. In one gateway contract we worked against, the delivery-receipt SLA permitted callbacks up to 72 hours after initial acceptance [S1].

Firing the send API returns an immediate acceptance code — the telco has queued the message. That is not delivery. The actual delivery receipt, or the rejection, comes back asynchronously via webhook, sometimes a full three days after the original send, because downstream telco routes retry and reroute before finally failing a message for good.

If your billing logic charges the customer on that initial API acceptance, you’ve booked revenue against messages that may still bounce. Your internal ledger and the upstream vendor’s invoice quietly diverge — and they diverge in a way that doesn’t surface until the vendor’s monthly invoice lands with a different total than your internal count.

From what I’ve seen work reliably, the fix is to treat the initial API response as provisional and reconcile the daily billing batch against the asynchronous delivery receipts — matching external message IDs to internal reference IDs over a rolling window wide enough to catch the slow ones. Three days, in our case, not one. Anything billed before that window closes isn’t a fact yet. It’s a guess.