Requery polling
How to track pending and async purchases until they reach a terminal status.
Suggested poll cadence
First 2 minutes
Poll every 10–15 seconds with GET /transactions/{id or reference}.
Next 8 minutes
Poll every 30–60 seconds. Optionally call POST /transactions/{id}/requery to refresh provider status for airtime and cable.
After ~10 minutes
If still not final, mark delayed and contact support. Do not open a new purchase with a new idempotency key.
Stop polling when
statusissuccess,failed, orrefunded.- HTTP indicates a hard failure that will not recover (e.g. validation
422on a brand-new request).
Path
{id} accepts the numeric transaction id **or** the VP reference / idempotency string.