KreedX — Banking API and Payments Platformby DigiPulse Solutions
Developer Docs
General guide

Status & Error Codes

One shape for success, one for failure.

Every API answers in the same envelope, so a single handler in your code covers the whole catalogue.

Sample guide
This shows how it works across our APIs. Exact header names, values and any extra steps are confirmed with your sandbox credentials.

The response envelope

Check success first. When it is true the result is in data; when it is false the reason is in error.

Success
{
  "success": true,
  "data": {
    "referenceId": "KRXB71Q2M8",
    "status": "SUCCESS"
  }
}
Failure
{
  "success": false,
  "error": {
    "code": "VALIDATION_ERROR",
    "message": "billerId is required"
  }
}

HTTP status codes

Branch on error.code, not on the message — messages are written for people and may be reworded.

StatusCodeWhat it means
400VALIDATION_ERRORA field is missing or malformed. The message names the field.
401UNAUTHORIZEDThe API key is missing, wrong, or for the other environment.
404NOT_FOUNDNo resource with that ID or reference exists.
409DUPLICATE_REFERENCEThis clientReference was already used. Safe to treat as a repeat of the first call.
429RATE_LIMITEDToo many requests. Back off and retry after the Retry-After header.
503UPSTREAM_UNAVAILABLEThe biller, bank or network is down. Retry later; nothing was charged.

What to retry, and what not to

StatusDo this
400Fix the request. Retrying the same body will fail the same way.
401Check the key and which environment it belongs to.
409Nothing to do — the first call with this clientReference already went through.
429Wait for the Retry-After header, then try again.
503Retry later with the same clientReference. Nothing was charged.

Transaction statuses

A successful request is not always a finished transaction. The status field tells you where it stands.

StatusAPIsMeaning
PENDINGBill payments, card paymentsAccepted and in progress. The final result arrives by webhook or the status call.
SUCCESSBill payments, card paymentsCompleted. Safe to show the customer a receipt.
FAILEDBill payments, card paymentsDid not go through. Show the reason; the customer can try again.
RECEIVEDCash collectionsCash taken at the counter, not yet on the account.
CREDITEDCash collectionsLanded on the loan or customer account.
REVERSEDCash collectionsA credited collection was reversed.

🚧 A timeout is not a failure

If your request times out, the transaction may still have gone through. Do not mark it failed, and do not retry with a new reference. Check its status — or resend with the same clientReference, which returns the first result instead of charging twice.