Skip to main content
POST
Pay a Bill
Pays one bill, or several bills as a single order, from a discovery whose status is READY. The response confirms the payment was accepted; the outcome is read from the transaction’s status (SUCCESS, FAILED or REFUNDED).

Request body

string
required
The READY discovery, 24 hexadecimal characters.
string
One billId from that transaction’s bills[]. Send this or billIds.
string[]
1 to 50 distinct billIds from bills[], paid as one order; its fee is the sum of the selected bills’ fee. Send this or billId. More than one id is accepted for SEAAL only; any other partner answers 400 ERR_VALIDATION.
string
required
A new reference for this payment, up to 100 characters. It must differ from the discovery ref and from any ref still in use for this partner; otherwise 403 DUPLICATED_REF.

Response

object
required

Example

Response

What is debited

total on the transaction = selectedBill.amount + selectedBill.fee. For a multi-bill order, selectedBill.amount is the sum of the selected bills and selectedBill.fee is the sum of their fees; selectedBills[] lists each bill. Fees are configured per biller and can change: display the values returned by the API.

Errors

Returned immediately; nothing is debited. On a network timeout, read the transaction before doing anything else: PROCESSING or later means the payment was accepted.