Purchase exam result checker PINs and tokens.

Result Checker / EPIN

Purchase exam result checker PINs and tokens (WAEC, NECO, NABTEB).

Endpoint

POST https://example.com/api/epin

Rate Limit: 30 requests per minute.

Request Headers

{
  "Accept": "application/json",
  "Content-Type": "application/json",
  "Authorization": "Bearer YOUR_API_TOKEN"
}

Request Body

FieldTypeRequiredDescription
exam_namestringYesExam type name. Must be one of: "WAEC", "NECO", "NABTEB"
quantityintegerYesNumber of PINs to purchase. Maximum: 5

Example Request

{
  "exam_name": "WAEC",
  "quantity": 2
}
curl -X POST https://example.com/api/epin \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -d '{
    "exam_name": "WAEC",
    "quantity": 2
  }'

Response

Success (200)

{
  "data": {
    "id": 1,
    "network": null,
    "ident": "RC20260318123045123456",
    "amount": "2,000.00",
    "api_response": "Success",
    "description": "WAEC Pin Purchase",
    "plan_network": "N/A",
    "Status": "successful",
    "balance_before": "10,000.00",
    "balance_after": "8,000.00",
    "create_date": "18/03/2026 10:30 AM"
  }
}

Response Fields

FieldTypeDescription
idintegerTransaction ID
networkinteger/nullAlways null for EPIN transactions
identstringUnique transaction reference (prefixed with RC)
amountstringTotal amount charged (unit price × quantity)
api_responsestringProvider response message, or "N/A"
descriptionstringHuman-readable description (e.g., "WAEC Pin Purchase")
plan_networkstringAlways "N/A"
Statusstring"successful", "pending", or "failed"
balance_beforestringWallet balance before transaction
balance_afterstringWallet balance after transaction
create_datestringTransaction timestamp (format: DD/MM/YYYY hh:mm AM/PM)

Available Exam Types

Exam NameUnit Price
WAEC₦1,000
NECO₦500
NABTEB₦800

Total cost = Unit Price × Quantity

Error Handling

Validation Error (422)

Returned when request fields fail validation:

{
  "message": "The given data was invalid.",
  "errors": {
    "exam_name": ["The exam name field is required."],
    "quantity": ["The quantity field is required."]
  }
}
ErrorCause
"The exam name field is required."Missing exam_name parameter
"The selected exam name is invalid."Exam name does not exist (must be WAEC, NECO, or NABTEB)
"The quantity field is required."Missing quantity parameter
"The quantity must not be greater than 5."Quantity exceeds maximum of 5
"The quantity must be a number."Non-numeric value provided

Business Logic Errors (422)

{
  "message": "The given data was invalid.",
  "errors": {
    "status": ["Something Went Wrong! Try again Letter"]
  }
}
Error MessageFieldCause
"Insufficient wallet balance!"amountNot enough funds in your wallet
"Your account has been restricted for transaction, Please submit your KYC to activate your account or contact support!."statusAccount KYC restriction
"Sorry, your daily result_checker spending limit exceeded! Limit: ₦X"statusDaily spending limit reached
"Something Went Wrong! Try again Letter"statusProvider-level failure (generic)

Unauthorized (401)

Returned when the Bearer token is missing or invalid.

IP Whitelist Denied (403)

{
  "status": false,
  "message": "Access Denied: Your IP (x.x.x.x) or Origin is not whitelisted for this API token."
}

Notes

  • The exam_name field must match one of the supported exam names exactly (case-sensitive)
  • quantity is required and must be between 1 and 5
  • Total amount charged = exam unit price × quantity