VendPower Developers

API Documentation

REST API for electricity, betting wallets, cable TV, mobile data, airtime, and Vend Airtime to Cash. Authenticate with an approved X-API-Key.

JSON over HTTPS X-API-Key auth Idempotent purchases
All systems normal

Base URL

https://api.vendpower.ng/api/v1

Status codes & responses

Purchase endpoints return different HTTP codes for success, pending, async accept, and terminal failure. Always read data.status as well as the HTTP status.

HTTP outcomes

CodeMeaningWhat to do
200Success (including instant successful purchase)Mark your order complete.
201Processing / pending purchase acceptedKeep polling — do not retry with a new key.
202Async purchase accepted (mobile data)Fulfillment continues in background — poll.
400Terminal purchase failure / refundedShow the message; wallet credited when applicable.
401Missing or invalid X-API-KeyFix the key and retry.
403Key not permitted for biller/productRequest the product on API Access.
404Resource not foundCheck transaction id / reference.
409Duplicate idempotency keyRequery the existing transaction — no second debit.
422Validation / business-rule failureFix the payload and retry with a new key if needed.
429Too many requests / risk blockBack off and retry later.
503Service unavailable / upstream issueRetry later; keep the same key if the request may have reached us.

Transaction status values

StatusMeaning
processingAccepted; provider still working
pendingAwaiting provider confirmation
successDelivered — terminal
failedNot delivered — terminal
refundedFailed and wallet credited — terminal

Never treat pending as failure

Do not create a new purchase with a new idempotency_key while the first is still processing or pending. Poll or requery instead.

VendPower Developer API