Settlement

Manually trigger a settlement run

Changed on

Runs the end-of-day settlement for a specified date on demand. This is idempotent – if the date has already been successfully settled, the existing record is returned without reprocessing.

Use cases:

  • Re-running a failed batch (e.g. after a database outage).
  • Settling a back-date after delayed transaction processing.
  • Smoke-testing the settlement pipeline in staging.

The scheduled job automatically covers yesterday at 23:59 UTC; this endpoint is for operational override only.

post/v1/settlement/run

Request

Query parameters

datestring date

Date to settle (ISO-8601 format, e.g. 2025-03-03). Defaults to yesterday UTC if omitted.

Response

Settlement run completed (or already completed for this date)

successboolean
messagestring
errorCodestring
errorsstring[]
timestampstring date-time

Example response

{
  "data": {
    "settlementDate": "2025-03-03",
    "currency": "NGN",
    "totalCredited": 250000,
    "totalDebited": 250000,
    "entries": [
      {
        "applicationName": "WalletApp",
        "currency": "NGN",
        "totalCredited": 150000,
        "totalDebited": 100000,
        "netAmount": 50000
      }
    ]
  }
}

Changes

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status