8.3 Person-to-Government APIs (P2G) Bill Payments
The Bill Payments APIs allow government entities to accept bill payments from persons on digital platforms like mobile money and vouchers.
8.3.1 billInquiryBiller
This API is called to inquire about bill details from a Bill Aggregator or Govt Entity.
ID of the specific Bill invoice
Specific fields for inquiry
Globally unique requestId/ client correlation Id
Tenant Id for Data scoping
Payer FI ID initiating the original bill inquiry/ payment sequence
GET /bills/{billId}?fields=inquiry HTTP/1.1
Host:
X-CorrelationID: text
Platform-TenantId: text
PayerFI-Id: text
Content-Type: application/json
Accept: */*
Content-Length: 36
{
"requestId": "text",
"billId": "text"
}
{
"responseCode": "text",
"reason": "text",
"requestId": "text"
}
8.3.2 billrInquiryResponse
The Payment BB updates the Bill Aggregator or government entity on the status of the Request to Pay.
Globally unique requestId/ client correlation Id
Tenant Id for Data scoping
Payer FI ID initiating the original bill inquiry/ payment sequence
POST /bills/{billId} HTTP/1.1
Host:
X-CorrelationID: text
Platform-TenantId: text
PayerFI-Id: text
Content-Type: application/json
Accept: */*
Content-Length: 190
{
"requestId": "text",
"code": 0,
"reason": "text",
"billId": "text",
"billDetails": {
"billerId": "text",
"billerName": "text",
"billStatus": "text",
"dueDate": 1,
"amountonDueDate": 1,
"amountAfterDueDate": 1
}
}
{
"responseCode": "text",
"reason": "text",
"requestID": "text"
}
8.3.3 markBillPayment
This API marks a bill as paid.
Globally unique requestId/ client correlation Id
Tenant Id for Data scoping
Payer FI ID initiating the original bill inquiry/ payment sequence
POST /billTransferRequests HTTP/1.1
Host:
X-CorrelationID: text
X-Platform-TenantId: text
X-Payer FI-ID: text
Content-Type: application/json
Accept: */*
Content-Length: 64
{
"requestID": "text",
"billId": "text",
"PaymentReferenceID": "text"
}
{
"responseCode": "text",
"reason": "text",
"requestID": "text"
}
8.3.4 billerRtpReq
The Bill Aggregator or Govt Entity initiates a “Request to Pay” (RTP) through this API.
Globally unique requestId/ client correlation Id
Tenant Id for Data scoping
Payer FI ID initiating the original bill inquiry/ payment sequence
POST /billTransferRequests HTTP/1.1
Host:
X-CorrelationID: text
X-Platform-TenantId: text
X-Payer FI-ID: text
Content-Type: application/json
Accept: */*
Content-Length: 72
{
"requestId": "text",
"billId": "text",
"status": "ACK",
"rejectReason": "Def"
}
{
"responseCode": "text",
"reason": "text",
"requestID": "text"
}
8.3.5 billerRtpReq
Globally unique requestId/ client correlation Id
Tenant Id for Data scoping
ID of the institution initiating the RTP
POST /rtpUpdate HTTP/1.1
Host:
X-CorrelationID: text
X-Platform-TenantId: text
X-billerId: text
Content-Type: application/json
Accept: */*
Content-Length: 82
{
"requestId": "text",
"rtpId": 1,
"billId": "text",
"rtpStatus": "00",
"rejectReason": "R"
}
RTP Update Acknowledged
{
"responseCode": "text",
"responseDescription": "text",
"requestID": "text"
}
8.3.6 rtpStatusUpdate
This API allows the Biller or Aggregator to inquire about the status of its RTP.
Transfer request ID
Globally unique requestId/ client correlation Id
Tenant Id for Data scoping
ID of the institution requesting the transaction Update
GET /transferRequests/{transferRequestId} HTTP/1.1
Host:
X-CorrelationID: text
X-Platform-TenantId: text
X-billerId: text
Content-Type: application/json
Accept: */*
Content-Length: 30
{
"RequestId": "text",
"rtpId": 1
}
{
"responseCode": "text",
"reason": "text",
"requestID": "text"
}
8.3.7 rtpStatusUpdateResponse
This API allows the Biller or Aggregator to receive the status of its RTP.
Transfer request ID
Globally unique requestId/ client correlation Id
Tenant Id for Data scoping
ID of the institution requesting the transaction Update
POST /transferRequests/{transferRequestId} HTTP/1.1
Host:
X-CorrelationID: text
X-Platform-TenantId: text
X-billerId: text
Content-Type: application/json
Accept: */*
Content-Length: 99
{
"rtpId": 1,
"RequestId": "text",
"requestStatus": "COM",
"PaymentReferenceID": "text",
"lastUpdateDate": 1
}
{
"ResponseCode": "text",
"reason": "text",
"requestID": "text"
}
Last updated
Was this helpful?