Skip to main content

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

Call GET /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 ref in every response.
  • Lets you recover after a network timeout: GET /v3/bills/transactions/by-ref?ref=… tells you whether the discovery was created.
Generate a new ref for every call.

Next: Paying bills

Pay one bill or several as a single order