Collect API Status Codes

Status Codes

All API requests may return any of the following status codes;

Status CodeNameDescription
0SUCCESSThis status code indicates that the request was processed successful.
1IN_PROCESSThis indicates that the request has been received and is queued for processing. A webhook callback will be sent once processed or status query can be called to check on status
2PARTIAL_PAYMENTThis status code is returned from the call-back notification to indicate that a payment request received a partial payment (if permitted by initiator).
-1SYSTEM_ERRORReturned whenever there is an error processing the current request
-2REQUEST_EXPIREDThe payment request has been expired.
-3REQUEST_CANCELLEDThe payment request has been cancelled.

Payment Request Methods

The following payment request methods are currently supported;

1.BANK_TRANSFERTemporary NUBAN Account Number is generated on Paga for the payment request. Payment of the requested amount to this NUBAN with fulfil the payment request
2.FUNDING_USSDThis allow's payer to pay with thier bank's USSD. Payer's bankID must be added to the payment request payload.

In addition, if the payer is a registered Paga account holder, the following payment options may be exposed;

1.USSDPayer can authorize the transaction and pay from their Paga wallet simply by dialling the returned USSD short code.
2.MONEY_TRANSFERPayer can authorize the transaction from their Paga wallet using either web or mobile app channels
3.REQUEST_MONEYPayer can authorize the transaction and pay from their Paga wallet for a using the paga payment link.

Payment Request States

A payment request may be in any one of the following states;

1.PENDINGPayment request has been received and is awaiting authorization/fulfilment from the payer.
2.CHARGEABLEPayment has been received and payment request can now be consumed.
3.CONSUMEDPayment request charge completed.
4.EXPIREDPayment request has expired.
5.FAILEDPayment request creation failed.
6.CANCELLEDPayment request was cancelled


When a payment request is fulfilled, it is set to CHARGEABLE which means that it is funded and can be processed (the funds are remitted to the payee’s account or bank account). When this “second-leg” processing occurs, then it set to CONSUMED. If something happens to cause the payment leg to fail, it can remain on CHARGEABLE until the payment leg completes

Collect API History Operations

Here are the different operations categories

1PAYMENT_REQUESTThis is for requesting payment
2PERSISTENT_PAYMENT_ACCOUNTThis for creating persistent payment accounts

Collect API History Actions

Here are the different actions and the operations they are subcategories of:

CREATE_REQUESTPAYMENT_REQUESTThis is when you create a new payment request by calling the /paymentRequest endpoint
PAYMENTPAYMENT_REQUESTThis is whenever a payment comes in for a created Payment Request

Collect API History Action Statuses

Here are the different statuses

PAID_NOT_SETTLEDPAYMENTPayment successful but settlement not done

Callback Events

Here are different callback events:

PAYMENT_COMPLETEThe payment made with respect to a particular payment request by a payer is the same as the amount in the request.
PARTIAL_PAYMENTThe payer carried out a part payment of the payment request amount
PAYMENT_REQUEST_EXPIREDThe payment request has expired.
PAYMENT_ERRORAn error occurred during the period of fulfilling the payment request. This means the payment was unsuccessful