Verify an Invoice

POST/api/v1/invoice-verifications

Verify the authenticity of an invoice using its receipt signature. Optionally provide the customer Kenya Revenue Authority PIN to verify them against Kenya Revenue Authority records. Returns the taxpayer details if the PIN is registered with Kenya Revenue Authority.

Requires x-api-key

http://localhost:8100/api/v1/invoice-verifications

Headers

FieldTypeRequiredDescription
x-api-keystringRequiredYour Ushuru API key.
Content-TypestringRequiredapplication/json

Request Body

FieldTypeRequiredDescription
orgInvcNostringRequiredThe original invoice number to verify.
rcptSignstringRequiredThe receipt signature (rcptSign) from the Kenya Revenue Authority eTIMS response.
pinstringOptionalKenya Revenue Authority PIN of the taxpayer to verify. When provided, the PIN is looked up in Kenya Revenue Authority records.

Response Without PIN

When pin is omitted, the response confirms the invoice but does not include taxpayer details:

Request

{
  "orgInvcNo": "INV-2024-001",
  "rcptSign": "XxXxXxXxXxXxXxXxXxXxXxXx...",
  "pin": "A000000000Z"
}

Response

{
  "success": true,
  "data": {
    "verified": true,
    "orgInvcNo": "INV-2024-001",
    "rcptSign": "XxXxXxXxXxXxXxXxXxXxXxXx...",
    "taxpayer": {
      "taxprNm": "BUYER COMPANY LTD",
      "tin": "A000000000Z",
      "bhfId": "00",
      "prvncNm": "NAIROBI"
    },
    "verifiedAt": "2024-01-15T10:30:45.000Z"
  }
}
curl -X POST http://localhost:8100/api/v1/invoice-verifications \\
  -H "x-api-key: YOUR_API_KEY" \\
  -H "Content-Type: application/json" \\
  -d '{
    "orgInvcNo": "INV-2024-001",
    "rcptSign": "XxXxXxXxXxXxXxXxXxXxXxXx...",
    "pin": "A000000000Z"
  }'