Skip to content

Vendor KYC API

API endpoints for managing vendor KYC document uploads, progress tracking, and document management.

Base URL: /admin/vendors

Endpoints Summary

MethodEndpointDescription
POST/admin/vendors/:id/kyc/uploadUpload KYC document
GET/admin/vendors/:id/kyc/progressGet KYC progress
GET/admin/vendors/:id/kyc/documentsList uploaded documents
DELETE/admin/vendors/:id/kyc/documentsDelete document

Upload Document

POST /admin/vendors/:id/kyc/upload

Request: multipart/form-data

FieldTypeRequiredDescription
fileFileYesDocument file (max 50MB)
documentKeystringYesDocument type identifier

Returns: Upload confirmation with URL and metadata


Document Types

KeyDescriptionRequired
companyRegistrationCertificate of incorporationYes
taxClearanceValid tax clearance certificateYes
businessLicenseOperating/trading licenseYes
bankStatement3-6 months of bank statementsYes
directorIdDirector's/owner's ID documentYes
proofOfAddressBusiness address verificationYes
tradingLicenseAdditional trading licenseNo
otherOther supporting documentsNo

Get KYC Progress

GET /admin/vendors/:id/kyc/progress

Returns:

FieldDescription
vendorIdVendor UUID
verificationStatusCurrent status
totalRequiredNumber of required documents (6)
totalCompletedDocuments uploaded
progressPercentageCompletion percentage
documentsStatus of each document type
missingDocumentsList of missing document keys

List Documents

GET /admin/vendors/:id/kyc/documents

Returns: List of uploaded documents with:

FieldDescription
keyStorage key
urlPublic URL
sizeFile size in bytes
lastModifiedUpload timestamp
documentTypeDocument type identifier

Delete Document

DELETE /admin/vendors/:id/kyc/documents

Request Body:

FieldTypeRequiredDescription
keystringYesFull storage key of document

File Requirements

RequirementValue
Maximum file size50MB
Supported formatsPDF, JPG, PNG, JPEG
Recommended resolution300 DPI minimum

Verification Status

StatusDescription
PENDINGNo documents submitted
DOCUMENTS_SUBMITTEDSome documents uploaded
UNDER_REVIEWAll documents submitted, being reviewed
VERIFIEDKYC approved
REJECTEDKYC rejected

Storage Structure

Documents are stored in GCP Cloud Storage:

vendors/{vendorId}/kyc/{documentKey}_{originalFilename}

Public URLs are generated automatically.


Error Responses

StatusErrorDescription
404Vendor not foundInvalid vendor ID
400No file uploadedMissing file in request
400Document key is requiredMissing documentKey field
400File size exceeds limitFile > 50MB
400Invalid document keyUnknown document type
500Upload timeoutOperation cancelled

Internal use only - Keshless Payment Platform