Biller catalogue
Every biller you can reach, filtered by category. New billers appear here without you shipping code.
Sample reference
This shows the shape of the call — the operation, its fields and what comes back. The exact paths, base URL and any extra fields are confirmed with your sandbox credentials.
{BASE_URL}/v1/bbps/billers📘 Cache the catalogue
📘 Validate on your side first
Headers
AuthorizationstringrequiredBearer <your API key>. Sandbox and production keys are separate.
Content-Typestringrequiredapplication/json on every request that has a body.
Query parameters
categorystringoptionalELECTRICITY, WATER, GAS, DTH, BROADBAND, MOBILE_POSTPAID and others. Omit for all.
pageintegeroptionalPage number, starting at 1.
Response fields
billerIdstringrequiredPass this to every other BBPS call.
fetchSupportedbooleanrequiredIf false, the customer enters the amount — there is no bill to fetch.
customerParamsarrayrequiredThe fields to collect from the customer, with a regex to validate them before calling.
Errors
Every API returns the same envelope on failure, so one handler covers the whole catalogue.
VALIDATION_ERRORA field is missing or malformed. The message names the field.
UNAUTHORIZEDThe API key is missing, wrong, or for the other environment.
NOT_FOUNDNo resource with that ID or reference exists.
DUPLICATE_REFERENCEThis clientReference was already used. Safe to treat as a repeat of the first call.
RATE_LIMITEDToo many requests. Back off and retry after the Retry-After header.
UPSTREAM_UNAVAILABLEThe biller, bank or network is down. Retry later; nothing was charged.
