Skip to main content
POST
/
v1
/
verify-utility-bill
/
image
curl -X POST https://api.vouchmark.com/v1/verify-utility-bill/image \
  -H "Authorization: Bearer $TOKEN" \
  -F "bill=@./utility-bill.jpg"
{
  "success": true,
  "billInfo": {
    "meterNumber": "0123456789",
    "provider": "IKEJA",
    "billDate": "2026-05-01"
  },
  "verificationResult": {
    "status": true,
    "address": "14 Marina Road, Lagos",
    "provider": "IKEJA",
    "meterNumber": "0123456789"
  }
}
Upload a utility bill image. The bill is read to extract the meter number, provider, and bill date, and the meter is then verified with the provider. Unlike Verify utility bill, this endpoint returns the extracted bill details and the meter verification result rather than tying the bill to a company address. Send the request as multipart/form-data. Image only — JPEG or PNG, up to 5 MB.

Form fields

bill
file
required
The utility bill image. JPEG or PNG, up to 5 MB.
curl -X POST https://api.vouchmark.com/v1/verify-utility-bill/image \
  -H "Authorization: Bearer $TOKEN" \
  -F "bill=@./utility-bill.jpg"

Response

{
  "success": true,
  "billInfo": {
    "meterNumber": "0123456789",
    "provider": "IKEJA",
    "billDate": "2026-05-01"
  },
  "verificationResult": {
    "status": true,
    "address": "14 Marina Road, Lagos",
    "provider": "IKEJA",
    "meterNumber": "0123456789"
  }
}
When the meter cannot be verified the response is 400 with the extracted billInfo and suggestions.
Verification failed
{
  "success": false,
  "billInfo": {
    "meterNumber": "0123456789",
    "provider": "IKEJA",
    "billDate": "2026-05-01"
  },
  "error": "Verification failed",
  "suggestions": [
    "The meter number is correctly visible in the image",
    "The utility bill is recent and valid",
    "The image is clear and not blurry",
    "The provider information is correct",
    "The bill date is within the last 3 months"
  ],
  "verificationResult": { "status": false }
}

Errors

StatusBodyWhen
400{ "success": false, "error": "Please upload a utility bill image." }No file was sent.
400{ "success": false, "error": "Bill is older than 3 months", "extractedInfo": {...} }The bill date is outside the last three months.
400{ "success": false, "error": "Valid bill but can't extract the meter number", "extractedInfo": {...} }The meter number could not be read.
400{ "success": false, "error": "Failed to extract required information from the bill." }No usable meter or provider could be extracted.
500{ "success": false, "error": "An error occurred while processing the bill image." }Unexpected error.
Verification is rate limited to 10 attempts per hour per caller.