Request
POST /v3/bills/discover takes three fields:
Response
200 means the discovery was accepted. The bills are not in this response.
Poll until READY
CallGET /v3/bills/transactions/{transactionId} every 2 to 3 seconds until status leaves PENDING. A discovery normally finishes within seconds; under load it can take a few minutes.
The bill object
The customer pays
amount + fee. Fees are configured per biller and can change; always display the values from the response.
Outcomes
error.code on a FAILED discovery:
Synchronous errors
These are returned immediately, and no transaction is created.About ref
- Required, up to 100 characters.
- Must be unique among your transactions for that partner. Reusing one returns
403 DUPLICATED_REF. - Stored on the transaction and returned as
refin every response. - Lets you recover after a network timeout:
GET /v3/bills/transactions/by-ref?ref=…tells you whether the discovery was created.
ref for every call.
Next: Paying bills
Pay one bill or several as a single order

