BotsKYC Document Types Configuration
This document lists all supported document types for KYC verification in the BotsKYC system.
Overview
The system supports 11 document types divided into Personal KYC and Corporate KYC categories.
Personal KYC Documents
1. BOTSWANA_ID_CARD
Description: National identification card issued by Botswana government
Typical Use Case: Personal identity verification, age verification, citizenship confirmation
Required Fields:
idNumber- National ID numberfullName- Full legal namedateOfBirth- Date of birthgender- Gendernationality- Nationality (typically Botswana)dateOfIssue- Date the ID was issuedexpiryDate- Expiration dateplaceOfBirth- Place of birth
2. PROOF_OF_ADDRESS
Description: Document verifying residential address (utility bills, bank statements, lease agreements)
Typical Use Case: Residential address verification, compliance with KYC regulations
Required Fields:
fullName- Name of residentaddress- Full residential addressissueDate- Date of document issuedocumentType- Type of proof (utility bill, bank statement, lease, etc.)issuerName- Name of issuing organization
3. CONFIRMATION_OF_EMPLOYMENT
Description: Official letter from employer confirming employment status
Typical Use Case: Income verification for credit applications, employment status confirmation
Required Fields:
employeeName- Full name of employeeemployeeId- Employee identification numberposition- Job title/positionemployerName- Name of employerdateOfEmployment- Start date of employmentemploymentType- Type of employment (permanent, contract, temporary)salary- Salary amount and frequencyissueDate- Date letter was issuedsignatoryName- Name of person signing the lettersignatoryTitle- Title of signatory
4. EMPLOYMENT_LETTER
Description: Formal employment letter issued by Company Secretary or Consultancy (differs from standard confirmation)
Typical Use Case: Corporate employment verification, consultancy assignments, executive appointments
Required Fields:
employeeName- Full name of employee/consultantissuerName- Company Secretary or Consultancy namecompanyName- Name of employing companyposition- Job title/roledateOfAppointment- Start datecontractType- Employment contract typeremunerationDetails- Compensation detailsissueDate- Date letter was issuedcompanyRegistrationNumber- Company registration numbersignatoryName- Name of Company Secretary/authorized signatoryofficialStamp- Presence of company stamp (boolean)
5. PAYSLIP
Description: Monthly salary statement from employer
Typical Use Case: Income verification, employment confirmation, credit assessment
Required Fields:
employeeName- Name of employeeemployeeId- Employee numberemployerName- Name of employerpayPeriod- Pay period (e.g., "January 2024")payDate- Date of paymentgrossSalary- Total salary before deductionsnetSalary- Take-home pay after deductionsdeductions- List of deductions (tax, pension, etc.)taxAmount- Total tax deductedpensionContribution- Pension/retirement contribution
6. BANK_STATEMENT
Description: Official bank account statement showing transactions
Typical Use Case: Financial verification, transaction history analysis, fraud detection
Required Fields:
accountHolderName- Name of account holderaccountNumber- Bank account numberbankName- Name of bankstatementPeriod- Statement period (e.g., "01 Jan 2024 - 31 Jan 2024")openingBalance- Balance at start of periodclosingBalance- Balance at end of periodtransactions- List of transactionscurrency- Currency (e.g., BWP, USD)
Corporate KYC Documents
7. CERTIFICATE_OF_INCORPORATION
Description: Official certificate issued by company registry confirming company formation
Typical Use Case: Company identity verification, legal entity confirmation, business account opening
Required Fields:
companyName- Registered company nameregistrationNumber- Company registration numberincorporationDate- Date company was incorporatedregisteredAddress- Registered office addresscompanyType- Type of company (Pty Ltd, Ltd, etc.)authorizedCapital- Authorized share capitaldirectors- List of initial directorsregistrar- Name of company registrar/authoritycertificateNumber- Certificate reference number
8. SHARE_CERTIFICATE
Description: Certificate evidencing ownership of shares in a company
Typical Use Case: Ownership verification, shareholder identification, beneficial ownership analysis
Required Fields:
companyName- Name of company issuing sharescompanyRegistrationNumber- Company registration numbercertificateNumber- Share certificate numbershareholderName- Name of shareholdershareQuantity- Number of sharesshareClass- Class of shares (ordinary, preference, etc.)nominalValue- Par/nominal value per shareissueDate- Date certificate was issuedtransferRestrictions- Any restrictions on transfersignatories- Names and titles of signatories
9. COMPANY_EXTRACT
Description: Official extract from company registry showing current company details
Typical Use Case: Company status verification, directorship confirmation, registered details validation
Required Fields:
companyName- Registered company nameregistrationNumber- Company registration numbercompanyStatus- Current status (Active, Dormant, In Liquidation, etc.)incorporationDate- Date of incorporationregisteredAddress- Current registered addressdirectors- Current list of directors with appointment datesshareholders- List of shareholders (if disclosed)businessActivities- Nature of businessauthorizedCapital- Authorized share capitalissuedCapital- Issued share capitalextractDate- Date extract was generatedregistrarStamp- Official stamp/seal
10. BOARD_MEETING_MINUTES
Description: Official record of board of directors meeting decisions and resolutions
Typical Use Case: Corporate governance verification, authorized signatory confirmation, resolution validation
Required Fields:
companyName- Name of companycompanyRegistrationNumber- Company registration numbermeetingDate- Date of board meetingmeetingTime- Time meeting startedmeetingLocation- Location/venue of meeting (or "Virtual")attendees- List of directors presentabsentees- Directors absent (with apologies noted)chairperson- Name of meeting chairpersonagenda- Meeting agenda itemsresolutions- List of resolutions passeddecisions- Key decisions madevotingRecords- Voting results for each resolutionactionItems- Action items assignedsignatories- Signatures of chairperson and secretaryminutesTakerName- Name of person recording minutesapprovalDate- Date minutes were approved
Fallback Category
11. OTHER
Description: Documents that don't fit into the defined categories
Typical Use Case: Unknown document types, custom documents, documents requiring manual review
Required Fields:
documentDescription- Brief description of what the document appears to beidentifiedText- Key text extracted from documentpossibleType- Suggested document type if partially identifiable
API Usage
All document types can be processed through the following endpoints:
Main Endpoints
POST /api/kyc/analyze/identity— Identity documents (e.g., national ID, passport, driver’s license)POST /api/kyc/analyze/address— Proof of address (e.g., utility bills, bank statements, lease agreements)POST /api/kyc/analyze/income— Proof of income (e.g., payslips, bank statements, employment letters)POST /api/kyc/analyze/entity— Entity/corporate documentsPOST /api/kyc/analyze/compliance— Compliance documentsPOST /api/kyc/analyze/multipurpose— Multi-purpose document intakePOST /api/kyc/analyze/auto— Auto-detects document type and routes accordingly
Processing
- Intelligent classification and extraction
- Multi-format support: separate files, PDFs, combined images
- Designed for efficient token usage and low latency
Multi-Document Support
All endpoints support:
- Single file upload (backward compatible)
- Multiple file upload (batch processing)
- Mixed document types in single request
Response includes:
- Array of identified documents with type, confidence, and extracted fields
- Summary statistics: unique types, average confidence, total pages
- Processing metadata: total time, provider used
Field Extraction Status
Full Extraction Support
- BOTSWANA_ID_CARD
- PROOF_OF_ADDRESS
- CONFIRMATION_OF_EMPLOYMENT
- PAYSLIP
- BANK_STATEMENT
🔄 Partial Extraction Support
- EMPLOYMENT_LETTER (classification only, extraction logic in progress)
- CERTIFICATE_OF_INCORPORATION (classification only, extraction logic in progress)
- SHARE_CERTIFICATE (classification only, extraction logic in progress)
- COMPANY_EXTRACT (classification only, extraction logic in progress)
- BOARD_MEETING_MINUTES (classification only, extraction logic in progress)
⚠ Basic Support
- OTHER (classification only, minimal extraction)
Notes
This page describes inputs and outputs only. Implementation details and internal components are intentionally omitted from public documentation.
Last Updated: 2024-11-08
Version: 2.0
Total Document Types: 11 (6 Personal, 5 Corporate)