payment_id returned by the Generate Payment endpoint.
In this endpoint, it is crucial to ensure that the “success” field is true before attempting to parse the API’s content. Once confirmed, the payload will reveal the precise status of the transaction at the time of the API call. The transaction status can be one of the following:
- SUCCESS: This indicates that the transaction has been confirmed and the payment was successful.
- PENDING: The session is still active, and a payment can still be confirmed.
- EXPIRED: The session has expired, and no payment is expected.
- FAILURE: The payment has failed, and details regarding the failure, including the reason, are accessible via the API.
Path Parameters
string
required
The ID of the payment to verify.
Response Fields
string
required
Payment method used. One of
card, wallet (Flouci wallet), mpayment (mobile switch), or NA.integer
required
Amount paid in millimes.
string
required
Payment status:
SUCCESS, PENDING, EXPIRED, FAILURE, PREAUTH_SUCCESS, or SYSTEM_FAILURE.object
Buyer information. Shape depends on the payment
type.string
Your merchant-supplied reference passed at payment creation. May be
null.string
required
Where this transaction sits in the settlement lifecycle. See Settlement Status below. One of
PROCESSING, AVAILABLE, IN_PAYOUT, PAID, or NOT_APPLICABLE.Settlement Status
Every transaction returned by the Verify endpoint carries asettlement_status field describing where the funds sit between the moment of payment and the moment they reach your bank account.
settlement_status is independent of status. A SUCCESS payment can still be PROCESSING (settling), AVAILABLE (in your balance), IN_PAYOUT (committed to a payout), or PAID (wired to your bank). Existing fields are unchanged — clients that ignore settlement_status see no behavior change.Lifecycle
On the happy path of a card payment, the status moves forward through these stages:PROCESSING and land directly in AVAILABLE on success — they never enter the card payout pipeline.
The five values
Lifecycle by payment type
How to use it
Is this payment in my available balance?
Is this payment in my available balance?
Look for
settlement_status == "AVAILABLE".Will this be on my next payout?
Will this be on my next payout?
Once you request a payout,
AVAILABLE transactions move to IN_PAYOUT, then to PAID once the wire is sent.Has this hit my bank account?
Has this hit my bank account?
settlement_status == "PAID". This is the terminal state.Why isn't this showing up in my balance?
Why isn't this showing up in my balance?
Check
status first — if the payment failed, expired, or is still pending, settlement_status will be NOT_APPLICABLE. Otherwise it is most likely PROCESSING (inside the T+1 window for a card payment).