← Slimpay.ng

Used by every "Try It" panel across these docs to call app.slimpay.ng for real. Get one from Authentication — register or log in, then paste the token here. Stored only in this browser (localStorage), never sent anywhere but the Slimpay API, and auto-cleared after 8 hours.

Getting Started

Errors & Status Codes

Slimpay uses conventional HTTP status codes alongside the status field in the response body. Always check both.

Error response shape

json
{
  "status": false,
  "message": "Incorrect transaction PIN."
}

Validation errors additionally include an errors object, keyed by field name, matching Laravel's standard validation error format:

json
{
  "status": false,
  "message": "The given data was invalid.",
  "errors": {
    "email": ["The email field is required."],
    "amount": ["The amount must be at least 100."]
  }
}

HTTP status codes

CodeMeaning
200Success
201Resource created
401Missing or invalid bearer token
403Authenticated, but not allowed — e.g. NIN_VERIFICATION_REQUIRED
404Resource not found
422Validation failed, or a business rule was violated (insufficient balance, incorrect PIN, etc.)
429Rate limit exceeded — see Rate Limits
500Something went wrong on our end

Named error codes

A handful of 403 responses include a machine-readable code field so your client can branch on it without string-matching the message:

json
{
  "status": false,
  "code": "NIN_VERIFICATION_REQUIRED",
  "message": "Please verify your identity with your NIN to continue."
}

This is returned on any funding-related endpoint (wallet funding, transfers, withdrawals, bill purchases, virtual meter creation) when the account hasn't completed NIN verification yet. Redirect the user to the verification flow rather than retrying.