Verifications
Verify TIN (upload TCC)
Upload a FIRS Tax Clearance Certificate and verify it against the company on file.
POST
Upload a FIRS Tax Clearance Certificate (TCC). The document is read by the verification model and, on a pass, re-checked against the QR code on the certificate before the TIN is saved to the company. The request is
When the document cannot be confirmed,
Verification is rate limited to 10 attempts per hour per caller.
multipart/form-data and you must own the company.
Form fields
The company the certificate belongs to. You must be the owner.
The Tax Clearance Certificate. PDF, JPEG, or PNG, up to 10 MB.
Response
Every response uses the standard envelope{ success, message, data }. The verification result lives in data as a uniform object: verified (boolean), status (one of verified, pending, failed, not_submitted), an optional reason, an optional suggestions array, and details. On success the verified TIN is written to the company. details reports the two stages: the model read (aiVerification) and the certificate QR check (qrVerification).
data.verified is false, data.status is failed, and data.suggestions lists what to fix. The request still succeeds with HTTP 200.
Failed verification
Errors
Errors use the same envelope withsuccess: false and a message.
| Status | Body | When |
|---|---|---|
400 | { "success": false, "message": "Missing file or companyId" } | The file or companyId was omitted. |
404 | { "success": false, "message": "Company not found" } | No company matches companyId. |
403 | { "success": false, "message": "Access denied. You can only verify your own company." } | You do not own the company. |
500 | { "success": false, "message": "..." } | Processing failed. |
