Ratify Checks and Processors
Full reference for every KYC and KYB ratification check, its configurable processors, and how tenant-level overrides work
This document lists and describes all the KYC (User) and KYB (Organisation) ratification checks available on the Eclipse platform.
1. Configuration & Overrides
The ratification pipeline uses a hierarchical fallback system to determine which processor runs for each check:
Fallback Hierarchy
- Tenant-Level Override Configuration (Highest precedence)
- Global Database Configuration Defaults
- Hardcoded Code Defaults (Lowest precedence)
Global Database Configuration
To override the default processors globally for all tenants, configure these key-value list properties in the database:
defaultRatifyUserProcessors: Comma-separated list ofcheckName=ProcessorClassNamefor KYC checks.defaultRatifyOrganisationProcessors: Comma-separated list ofcheckName=ProcessorClassNamefor KYB checks.
Example:
defaultRatifyUserProcessors=secureCitizenCheck=AlwaysPassItemProcessor,selfieMatchesNationalDatabase=AlwaysPassItemProcessorTenant-Level Configuration
Tenants can customize which checks run and which processors they map to using these tenant properties:
ratifyUserProcessors: Tenant overrides for KYC checks.ratifyOrganisationProcessors: Tenant overrides for KYB checks.ratifyUserComparisionProcessors: Tenant overrides for KYC comparison checks.ratifyOrganisationComparisionProcessors: Tenant overrides for KYB comparison checks.
Example:
ratifyUserProcessors=selfieIsLegitimate=AWSLivenessRatifyProcessor,passportIsLegitimate=AsyncGenericPassportProcessorUsingAzureWithNoDependencyDisabling Checks via "None" / "none,"
- Bypass All (
None): If a tenant config property is set to exactlyNone, all checks in that category are overridden to useEmptyItemProcessor(effectively disabling them for the tenant). - Opt-In Specific (
none,): If the property starts withnone,(e.g.,none,secureCitizenCheck=AlwaysPassItemProcessor), the system first disables all checks in that category by mapping them toEmptyItemProcessor, and then registers only the specific check-processor mappings provided after the prefix.
2. Standard Fallback / Mock Processors
The following two processors can be configured against any check:
AlwaysPassItemProcessor: A stub processor that bypasses any validation and immediately publishes aPASSEDresult (checked=true,passed=true). Often used for development, testing, or when a check is disabled/not required but must still return a positive result.EmptyItemProcessor: A placeholder processor that simply marks the check as skipped/not run (checked=false,passed=false). Typically configured as the default baseline when a check requires explicit tenant-level override.
3. KYC (User) Ratify Checks
The following checks are used during the user ratification process.
| Check Name | Type | Description | Configurable Processors (Default marked) |
|---|---|---|---|
| selfieIsLegitimate | OCR | Analyses the uploaded user selfie image to verify that it is a genuine, legitimate image of a person. Checks for image validity and performs liveness detection if configured. | AsyncSelfieIsLegitimateProcessorWithNoDependency (Default) / AWSLivenessRatifyProcessor |
| selfieMatchesNationalIdentity | OCR | Compares the user's uploaded selfie against the photo on their uploaded National Identity document. Performs facial recognition matching to verify that the person in both images is the same. | AsyncGenericFacialMatchProcessorWithNoDependency (Default) |
| selfieMatchesPassport | OCR | Compares the user's uploaded selfie against the face photo on their uploaded Passport document. Performs facial recognition matching to verify that the person in both images is the same. | AsyncGenericFacialMatchProcessorWithNoDependency (Default) |
| selfieMatchesAsylumPaper | OCR | Compares the user's uploaded selfie against the face photo on their uploaded Asylum Paper document. Performs facial recognition matching to verify that the person in both images is the same. | AsyncGenericFacialMatchProcessorWithNoDependency (Default) |
| firstNameMatchesPassport | OCR | Compares the user's registered first name with the first name extracted via OCR from the uploaded Passport. Verifies name similarity or exact matches depending on configured thresholds. | AsyncGenericPassportProcessorWithNoDependency (Default) / AsyncGenericPassportProcessorUsingAzureWithNoDependency |
| lastNameMatchesPassport | OCR | Compares the user's registered last name with the last name extracted via OCR from the uploaded Passport. Verifies name similarity or exact matches depending on configured thresholds. | AsyncGenericPassportProcessorWithNoDependency (Default) / AsyncGenericPassportProcessorUsingAzureWithNoDependency |
| passportNumberMatchesPassport | OCR | Compares the user's registered passport number with the passport number extracted via OCR from the Passport. Ensures that the document matches the profile data provided by the user. | AsyncGenericPassportProcessorWithNoDependency (Default) / AsyncGenericPassportProcessorUsingAzureWithNoDependency |
| passportIsLegitimate | OCR | Analyses the uploaded Passport document image to confirm it is a valid and legitimate passport. Checks for signs of forgery, tampering, and that the format complies with standards. | AsyncGenericPassportProcessorWithNoDependency (Default) / AsyncGenericPassportProcessorUsingAzureWithNoDependency |
| isPassportExpiryDateMatch | OCR | Verifies if the passport's expiry date matches the registered details. Ensures that the document is not expired at the time of ratification. | AsyncGenericPassportProcessorWithNoDependency (Default) / AsyncGenericPassportProcessorUsingAzureWithNoDependency |
| dateOfBirthMatchesPassport | OCR | Compares the user's registered date of birth with the date of birth extracted via OCR from the Passport. Ensures that the profile DOB matches the official document. | AsyncGenericPassportProcessorWithNoDependency (Default) / AsyncGenericPassportProcessorUsingAzureWithNoDependency |
| issueDateMatchesPassport | OCR | Compares the user's registered passport issue date with the issue date extracted via OCR from the Passport. Ensures the correctness of document history. | AsyncGenericPassportProcessorWithNoDependency (Default) |
| secureCitizenCheck | Compliance | Performs a verification and compliance check against the Secure Citizen database to validate user identity. | AlwaysPassItemProcessor (Default) / AsyncSecureCitizenCheckProcessorWithDependency / AsyncThirdPartySecureCitizenCheckProcessorWithDependency |
| selfieMatchesNationalDatabase | Compliance | Matches the user's selfie against the photo stored in the national database via Secure Citizen or SBSA. | AlwaysPassItemProcessor (Default) / AsyncSecureCitizenCheckProcessorWithDependency / AsyncThirdPartySecureCitizenCheckProcessorWithDependency |
| ofacCheck | Compliance | Screens the user against the Office of Foreign Assets Control (OFAC) sanctions list. Helps ensure the platform does not transact with sanctioned individuals. | AsyncOfacCheckProcessorWithDependency (Default) |
| matchCheck | Compliance | Performs a MATCH database check to verify if the user has been listed for previous fraudulent activities. | AlwaysPassItemProcessor (Default) / AsyncMatchCheckProcessorWithDependency |
| pepCheck | Compliance | Screens the user to determine if they are a Politically Exposed Person (PEP). | AlwaysPassItemProcessor (Default) / AsyncSecureCitizenCheckProcessorWithDependency / AsyncPepCheckProcessorWithDependency / AsyncThirdPartyPepCheckProcessorWithDependency |
| unCheck | Compliance | Screens the user against the United Nations (UN) sanctions list. Ensures global regulatory compliance regarding sanctioned entities. | AsyncUnCheckProcessorWithDependency (Default) |
| euCheck | Compliance | Screens the user against the European Union (EU) sanctions database. Ensures compliance with EU trade and financial restrictions. | AsyncEuCheckProcessorWithDependency (Default) |
| iprsCheck | Compliance | Queries Kenya's Integrated Population Registration System (IPRS) to validate national identity details. Requires VPN setup and is typically overridden at tenant level. | EmptyItemProcessor (Default) / AsyncIprsCheckProcessorWithDependency |
| customListKycCheck | Compliance | Performs a verification check against custom, tenant-defined compliance or sanction lists. Matches user details against locally maintained regulatory files. | AsyncCustomListCheckProcessorWithDependency (Default) |
| internalBlackListCheck | Compliance | Checks the user's details against the internal platform blacklist of restricted or blocked users. Prevents onboarding of previously flagged or banned users. | AsyncInternalBlackListCheckProcessorWithDependency (Default) |
| ukCheck | Compliance | Screens the user against the United Kingdom (UK) financial sanctions consolidated list (HM Treasury). Helps ensure compliance with UK financial sanctions laws. | AsyncUkCheckProcessorWithDependency (Default) |
| firstNameMatchesAsylumPaper | OCR | Compares the user's registered first name with the first name extracted from the uploaded Asylum Paper. Ensures profile data matches the official refugee/asylum document. | AsyncGenericAsylumProcessorWithNoDependency (Default) |
| lastNameMatchesAsylumPaper | OCR | Compares the user's registered last name with the last name extracted from the uploaded Asylum Paper. Ensures profile data matches the official refugee/asylum document. | AsyncGenericAsylumProcessorWithNoDependency (Default) |
| dateOfBirthMatchesAsylumPaper | OCR | Compares the user's registered date of birth with the date of birth extracted from the uploaded Asylum Paper. Ensures official profile DOB matches the asylum document. | AsyncGenericAsylumProcessorWithNoDependency (Default) |
| asylumPaperRefNumberMatchesAsylumPaper | OCR | Compares the user's registered identity/ref number with the reference number extracted from the Asylum Paper. Ensures the document is correctly tied to the registered identity. | AsyncGenericAsylumProcessorWithNoDependency (Default) |
| asylumPaperIsLegitimate | OCR | Analyses the uploaded Asylum Paper document image to verify its authenticity and structure. Checks for signs of tampering, alteration, or illegitimate document formats. | AsyncGenericAsylumProcessorWithNoDependency (Default) |
| isAsylumPaperExpiryDateMatch | OCR | Validates if the expiry date on the Asylum Paper matches the registered details. Ensures that the asylum status is still active and valid. | AsyncGenericAsylumProcessorWithNoDependency (Default) |
| taxNumberMatchesTaxDocument | OCR | Compares the user's registered tax reference number with the number extracted from the uploaded Tax Document. Confirms the alignment of the user's profile with official tax certificates. | AsyncGenericTaxProcessorWithNoDependency (Default) / AsyncGenericDtbTaxProcessorWithNoDependency |
| taxDocumentIsLegitimate | OCR | Validates the authenticity and structure of the uploaded Tax Document to ensure it is genuine. Ensures that the document format and fields align with expected tax authority templates. | EmptyItemProcessor (Default) / AsyncGenericTaxProcessorWithNoDependency |
| firstNameMatchesTaxDocument | OCR | Compares the user's registered first name with the name extracted from the uploaded Tax Document. Confirms the ownership of the tax registration. | AsyncGenericTaxProcessorWithNoDependency (Default) |
| lastNameMatchesTaxDocument | OCR | Compares the user's registered last name with the name extracted from the uploaded Tax Document. Confirms the ownership of the tax registration. | AsyncGenericTaxProcessorWithNoDependency (Default) |
| firstNameMatchesBirthCertificate | OCR | Compares the user's registered first name with the name extracted from their uploaded Birth Certificate. Verifies the identity using original birth records. | AsyncGenericBirthCertificateProcessorWithNoDependency (Default) |
| lastNameMatchesBirthCertificate | OCR | Compares the user's registered last name with the name extracted from their uploaded Birth Certificate. Verifies the identity using original birth records. | AsyncGenericBirthCertificateProcessorWithNoDependency (Default) |
| isDateOfBirthMatchesBirthCertificate | OCR | Compares the user's registered date of birth with the date of birth extracted from their Birth Certificate. Confirms birth details align with the user's profile. | AsyncGenericBirthCertificateProcessorWithNoDependency (Default) |
| parentLastNameMatchesBirthCertificate | OCR | Verifies if the parent's last name extracted from the birth certificate matches the user's registered parent details. Used for minor account verification or parent mapping. | AsyncGenericBirthCertificateProcessorWithNoDependency (Default) |
| identityNumberMatchesBirthCertificate | OCR | Verifies if the user's registered identity number matches the identity number extracted from the Birth Certificate. Links birth records to the user's national identity number. | AsyncGenericBirthCertificateProcessorWithNoDependency (Default) |
| birthCertificateIsLegitimate | OCR | Validates the legitimacy and formatting of the uploaded Birth Certificate document. Ensures that the document shows no signs of forgery or tampering. | AsyncGenericBirthCertificateProcessorWithNoDependency (Default) |
| addressMatchesProofOfAddress | OCR | Extracts the address from the uploaded Proof of Address and matches it against the user's registered address. Ensures that the user resides at the claimed address. | AsyncGenericProofOfAddressProcessorWithNoDependency (Default) |
| identityNumberMatchesNationalIdentity | OCR | Compares the user's registered national identity number with the number extracted from the National Identity card. Confirms the identity document belongs to the profile. | AsyncGenericNationalIdentityProcessorWithNoDependency (Default) |
| firstNameMatchesNationalIdentity | OCR | Compares the user's registered first name with the first name extracted from the National Identity card. Matches document data with profile registration. | AsyncGenericNationalIdentityProcessorWithNoDependency (Default) |
| lastNameMatchesNationalIdentity | OCR | Compares the user's registered last name with the last name extracted from the National Identity card. Matches document data with profile registration. | AsyncGenericNationalIdentityProcessorWithNoDependency (Default) |
| nationalIdentityIsLegitimate | OCR | Validates the legitimacy, structure, and integrity of the uploaded National Identity card image. Detects potential modifications, digital edits, or counterfeit ID formats. | AsyncGenericNationalIdentityProcessorWithNoDependency (Default) |
| dateOfBirthMatchesNationalIdentity | OCR | Compares the user's registered date of birth with the date of birth extracted from the National Identity card. Ensures profile age/DOB matches the identity card. | AsyncGenericNationalIdentityProcessorWithNoDependency (Default) |
| backOfNationalIdentityIsLegitimate | OCR | Checks the authenticity, formatting, and integrity of the uploaded image of the back of the National Identity card. Validates barcodes, security marks, or other back-side details. | AsyncGenericBackOfNationalIdentityProcessorWithNoDependency (Default) |
| firstNameMatchesDriversLicence | OCR | Compares the user's registered first name with the first name extracted from the uploaded Driving Licence. Matches document data with profile registration. | AsyncDrivingLicenceProcessorWithNoDependency (Default) |
| lastNameMatchesDriversLicence | OCR | Compares the user's registered last name with the last name extracted from the uploaded Driving Licence. Matches document data with profile registration. | AsyncDrivingLicenceProcessorWithNoDependency (Default) |
| identityNumberMatchesDriversLicence | OCR | Verifies if the user's registered ID number matches the licence number extracted from the Driving Licence. Confirms the licence corresponds to the registered profile. | AsyncDrivingLicenceProcessorWithNoDependency (Default) |
| selfieMatchesDriversLicence | OCR | Compares the user's uploaded selfie with the face photo extracted from the uploaded Driving Licence. Performs facial recognition matching to verify the person in both images. | AsyncGenericFacialMatchProcessorWithNoDependency (Default) |
| driversLicenseIsLegitimate | OCR | Validates the legitimacy, formatting, and expiration of the uploaded Driving Licence document. Ensures the licence shows no signs of forgery or tampering. | AsyncDrivingLicenceProcessorWithNoDependency (Default) |
| dateOfBirthMatchesDriversLicence | OCR | Compares the user's registered date of birth with the date of birth extracted from the Driving Licence. Confirms that the licence birth date matches profile records. | AsyncDrivingLicenceProcessorWithNoDependency (Default) |
| bankStatementIsLegitimate | OCR | Checks the legitimacy, format, and consistency of the uploaded bank statement document. Analyses the PDF structure or paper scan for tampering or inconsistency. | EmptyItemProcessor (Default) / AsyncGenericBankStatementProcessorWithNoDependency / AsyncGenericBankStatementWithAdditionalCheckProcessorWithNoDependency |
| nameMatchesVerifiedBankStatement | OCR | Verifies if the user's registered name matches the account holder name extracted from the bank statement. Ensures bank account ownership matches the profile name. | EmptyItemProcessor (Default) / AsyncGenericBankStatementProcessorWithNoDependency |
| workPermitIsLegitimate | OCR | Validates the authenticity and structure of the user's uploaded Work Permit document. Ensures legitimacy of work permission. | EmptyItemProcessor (Default) |
| foreignCertificateIsLegitimate | OCR | Checks the legitimacy, validity, and authenticity of the uploaded foreign registration or identity certificate. Confirms the document matches foreign government specifications. | EmptyItemProcessor (Default) / AsyncGenericForeignCertificateProcessorWithNoDependency |
| firstNameMatchesForeignCertificate | OCR | Matches the user's registered first name with the first name extracted from their uploaded Foreign Certificate. Verifies ownership of foreign credentials. | EmptyItemProcessor (Default) / AsyncGenericForeignCertificateProcessorWithNoDependency |
| lastNameMatchForeignCertificate | OCR | Matches the user's registered last name with the last name extracted from their uploaded Foreign Certificate. Verifies ownership of foreign credentials. | EmptyItemProcessor (Default) / AsyncGenericForeignCertificateProcessorWithNoDependency |
| dateOfBirthMatcheForeignCertificate | OCR | Matches the user's registered date of birth with the DOB extracted from their uploaded Foreign Certificate. Matches profile record against document. | EmptyItemProcessor (Default) / AsyncGenericForeignCertificateProcessorWithNoDependency |
| usaWNineIsLegitimate | OCR | Verifies the authenticity, legitimacy, and format of the user's uploaded USA W-9 tax form. Validates compliance with US IRS reporting requirements. | EmptyItemProcessor (Default) / AsyncGenericUSAW9ProcessorWithNoDependency |
| visaISLegitimate | OCR | Checks the authenticity, status, and expiration details of the user's uploaded Visa document. Ensures legitimacy of the visa permission. | EmptyItemProcessor (Default) |
| serialNumberMatchesBackOfNationalIdentity | OCR | Matches the registered serial number with the serial number extracted from the back of the National Identity card. Ensures consistent document indexing. | EmptyItemProcessor (Default) / AsyncGenericBackOfNationalIdentityProcessorWithNoDependency |
| idNumberMatchesBackOfNationalIdentity | OCR | Matches the registered identity number with the ID number extracted from the back of the National Identity card. Cross-verifies identity number placement. | EmptyItemProcessor (Default) / AsyncGenericBackOfNationalIdentityProcessorWithNoDependency |
| nameMatchesBackOfNationalIdentity | OCR | Matches the user's registered name with the name extracted from the back of the National Identity card. Ensures name consistency across both sides of the card. | EmptyItemProcessor (Default) / AsyncGenericBackOfNationalIdentityProcessorWithNoDependency |
| dateOfBirthMatchesBackOfNationalIdentity | OCR | Matches the user's registered DOB with the DOB extracted from the back of the National Identity card. Ensures DOB consistency across both sides of the card. | EmptyItemProcessor (Default) / AsyncGenericBackOfNationalIdentityProcessorWithNoDependency |
| sexMatchesBackOfNationalIdentity | OCR | Matches the user's registered gender detail with the gender detail extracted from the back of the National Identity card. Ensures gender consistency. | EmptyItemProcessor (Default) / AsyncGenericBackOfNationalIdentityProcessorWithNoDependency |
| issueDateMatchesBackOfNationalIdentity | OCR | Matches the registered document issue date with the issue date extracted from the back of the National Identity card. Ensures issue date consistency. | EmptyItemProcessor (Default) / AsyncGenericBackOfNationalIdentityProcessorWithNoDependency |
| isNationalIdentityExpiryDateMatch | OCR | Validates the expiry date extracted from the National Identity card and checks if it matches registered information. Ensures the ID card has not expired. | EmptyItemProcessor (Default) |
| serialNumberMatchesNationalIdentity | OCR | Matches the registered serial number with the serial number extracted from the front of the National Identity Card. Verifies correctness of the ID front side. | EmptyItemProcessor (Default) / AsyncGenericNationalIdentityProcessorWithNoDependency |
| sexMatchesNationalIdentity | OCR | Matches the registered gender detail with the gender detail extracted from the front of the National Identity Card. Ensures gender matches on front side. | EmptyItemProcessor (Default) / AsyncGenericNationalIdentityProcessorWithNoDependency |
| issueDateMatchesNationalIdentity | OCR | Matches the registered document issue date with the issue date extracted from the front of the National Identity Card. Ensures issue date matches on front side. | EmptyItemProcessor (Default) / AsyncGenericNationalIdentityProcessorWithNoDependency |
| worldCheck | Compliance | Screens the user against the World-Check compliance database to check for risk, crime, or sanction history. Used to check against globally consolidated risk databases. | EmptyItemProcessor (Default) / AsyncWorldCheckProcessorWithDependency |
| taxNumberMatchesNationalDatabase | OCR | Verifies the user's tax registration number against the national tax database records. Confirms registration status with tax authorities. | EmptyItemProcessor (Default) / AsyncGenericDtbTaxProcessorWithNoDependency / AsyncGenericTaxProcessorWithNoDependency |
| taxPayerNameMatchesNationalDatabase | OCR | Verifies the taxpayer's registered name against the national tax database records. Confirms taxpayer registration aligns with official records. | EmptyItemProcessor (Default) / AsyncGenericDtbTaxProcessorWithNoDependency / AsyncGenericTaxProcessorWithNoDependency |
| taxDocumentMatchesNationalDatabase | OCR | Matches the details from the uploaded tax document directly against official tax authority records. Ensures that the document matches national records. | EmptyItemProcessor (Default) / AsyncGenericDtbTaxProcessorWithNoDependency / AsyncGenericTaxProcessorWithNoDependency |
| firstNameMatchesBackOfAdditionalIdentity | OCR | Matches the user's registered first name with the name extracted from the back of an additional identity document. Ensures name consistency. | EmptyItemProcessor (Default) / AsyncGenericAdditionalIdentityProcessorWithNoDependency |
| lastNameMatchesBackOfAdditionalIdentity | OCR | Matches the user's registered last name with the name extracted from the back of an additional identity document. Ensures name consistency. | EmptyItemProcessor (Default) / AsyncGenericAdditionalIdentityProcessorWithNoDependency |
| additionalIdentityNumberMatchesBackOfAdditionalIdentity | OCR | Matches the registered identity number with the ID number extracted from the back of an additional identity document. Cross-verifies ID numbers. | EmptyItemProcessor (Default) / AsyncGenericAdditionalIdentityProcessorWithNoDependency |
| selfieMatchesBackOfAdditionalIdentity | OCR | Compares the user's uploaded selfie with the face photo extracted from the back of an additional identity document. Performs facial recognition matching. | EmptyItemProcessor (Default) / AsyncGenericFacialMatchProcessorWithNoDependency |
| identityNumberMatchesNationalDatabase | OCR | Validates the user's identity number against the official national citizen database. Ensures the ID number exists in government registries. | EmptyItemProcessor (Default) / AsyncGenericCustomerProfileProcessorWithNoDependency / AsyncCBGCustomerProfileProcessorWithNoDependency |
| cardNumberMatchesNationalDatabase | OCR | Validates the user's ID/card number against the official national citizen database. Ensures the ID card is registered. | EmptyItemProcessor (Default) / AsyncGenericCustomerProfileProcessorWithNoDependency |
| lastNameMatchesNationalDatabase | OCR | Validates the user's registered last name against the records in the official national citizen database. Checks for name alignment with government databases. | EmptyItemProcessor (Default) / AsyncGenericCustomerProfileProcessorWithNoDependency |
| phoneNumberMatchesNationalDatabase | OCR | Matches the user's registered phone number with the phone number registered in the national citizen database. Verifies phone number registration ownership. | EmptyItemProcessor (Default) / AsyncGenericCustomerProfileProcessorWithNoDependency |
| dateOfBirthMatchesBackOfDriversLicence | OCR | Matches the user's registered DOB with the DOB extracted from the back of their uploaded Driving Licence. Ensures DOB matches licence records. | EmptyItemProcessor (Default) / AsyncBackOfDrivingLicenceProcessorWithNoDependency |
| backOfdriversLicenseIsLegitimate | OCR | Checks the legitimacy, format, and authenticity of the back of the uploaded Driving Licence. Validates barcodes, security marks, or other back-side details. | EmptyItemProcessor (Default) / AsyncBackOfDrivingLicenceProcessorWithNoDependency |
| lastNameMatchesBackOfDriversLicence | OCR | Matches the user's registered last name with the name extracted from the back of their uploaded Driving Licence. Ensures name consistency. | EmptyItemProcessor (Default) / AsyncBackOfDrivingLicenceProcessorWithNoDependency |
| identityNumberMatchesBackOfDriversLicence | OCR | Matches the registered ID number with the licence number extracted from the back of the uploaded Driving Licence. Cross-verifies ID numbers. | EmptyItemProcessor (Default) / AsyncBackOfDrivingLicenceProcessorWithNoDependency |
| selfieMatchesTemporaryIdentity | OCR | Compares the user's uploaded selfie with the face photo extracted from their uploaded Temporary Identity Document. Performs facial recognition matching. | EmptyItemProcessor (Default) |
| firstNameMatchesTemporaryIdentity | OCR | Matches the user's registered first name with the name extracted from their uploaded Temporary Identity Document. Verifies name matches temporary ID. | EmptyItemProcessor (Default) / AsyncGenericTemporaryIdentityProcessorWithNoDependency |
| lastNameMatchesTemporaryIdentity | OCR | Matches the user's registered last name with the name extracted from their uploaded Temporary Identity Document. Verifies name matches temporary ID. | EmptyItemProcessor (Default) / AsyncGenericTemporaryIdentityProcessorWithNoDependency |
| idNumberMatchesTemporaryIdentity | OCR | Matches the registered ID number with the ID number extracted from the uploaded Temporary Identity Document. Verifies ID matches temporary document. | EmptyItemProcessor (Default) / AsyncGenericTemporaryIdentityProcessorWithNoDependency |
| dateOfBirthMatchesTemporaryIdentity | OCR | Matches the user's registered DOB with the DOB extracted from the uploaded Temporary Identity Document. Verifies DOB matches temporary document. | EmptyItemProcessor (Default) / AsyncGenericTemporaryIdentityProcessorWithNoDependency |
| isTemporaryIdentityExpiryDateMatch | OCR | Verifies that the expiry date on the Temporary Identity Document is correct and has not expired. Ensures validity of temporary status. | EmptyItemProcessor (Default) / AsyncGenericTemporaryIdentityProcessorWithNoDependency |
| temporaryIdentityIsLegitimate | OCR | Checks the format and authenticity of the uploaded Temporary Identity Document. Ensures the document is in a valid format. | EmptyItemProcessor (Default) / AsyncGenericTemporaryIdentityProcessorWithNoDependency |
| permitIsLegitimate | OCR | Checks the format and authenticity of the uploaded Permit document. Ensures that the permit shows no signs of forgery or tampering. | EmptyItemProcessor (Default) / AsyncGenericPermitProcessorWithNoDependency |
| lastNameMatchesPermit | OCR | Compares the user's registered last name with the last name extracted from their uploaded Permit document. Verifies permit ownership. | EmptyItemProcessor (Default) / AsyncGenericPermitProcessorWithNoDependency |
| passportNumberMatchesPermit | OCR | Matches the user's registered passport number with the passport number extracted from their uploaded Permit document. Links permit to the user's passport. | EmptyItemProcessor (Default) / AsyncGenericPermitProcessorWithNoDependency |
| isPermitExpiryDateMatch | OCR | Validates that the permit's expiry date matches the registered details and checks if the permit is still valid. Ensures status has not expired. | EmptyItemProcessor (Default) / AsyncGenericPermitProcessorWithNoDependency |
| adultLastNameMatchesMinorLastName | Compliance | Checks if the last name of an adult matches the last name of a linked minor for guardianship verification. Used for regulatory checks on children accounts. | EmptyItemProcessor (Default) / AsyncEclipseInternalComplianceProcessorWithDependency |
| cbgSanctionsScreeningCheck | Compliance | Performs sanctions screening specifically for CBG (Compliance/Sanctions Database). Checks user details against CBG-specific regulatory lists. | EmptyItemProcessor (Default) / AsyncCBGSanctionsScreeningProcessorWithNoDependency |
| unscCheck | Compliance | Screens the user against the United Nations Security Council (UNSC) sanctions list. Prevents transacting with UNSC-sanctioned individuals. | AsyncUNSCCheckProcessorWithDependency (Default) |
| ficCheck | Compliance | Screens the user against the Financial Intelligence Centre (FIC) compliance/sanctions database. Ensures compliance with FIC regulatory requirements. | AsyncFICCheckProcessorWithDependency (Default) |
| isSANational | OCR | Checks if the user is a South African National based on their national identity details. Verifies South African nationality status. | AsyncGenericNationalIdentityProcessorWithNoDependency (Default) |
| proofOfFundsIsLegitimate | OCR | Verifies the authenticity, legitimacy, and correctness of the user's uploaded Proof of Funds document. Ensures the document is in a valid format. | AsyncProofOfFundsProcessorWithNoDependency (Default) |
| accountableInstitutionBlacklist | Compliance | Checks the user against the Accountable Institution Blacklist database to identify restricted individuals. Screens against locally-maintained financial institution blacklists. | EmptyItemProcessor (Default) |
| frenchListCheck | Compliance | Screens the user against the French asset freezing list (French Sanctions List). Ensures compliance with French regulatory freezes. | AsyncFRENCHCheckProcessorWithDependency (Default) |
| riskScoreOverride | Compliance | Allows a manual override or verification of the user's automated risk score. Used for manual verification workflows. | EmptyItemProcessor (Default) |
| isSouthAfricanResident | OCR | Checks if the user is a resident of South African based on their residential address and/or document details. Determines tax residency status. | AsyncGenericCountryOfResidenceProcessorWithNoDependency (Default) |
| adverseMediaCheck | Compliance | Searches public media sources for negative coverage, regulatory actions, or criminal allegations against the user. | AlwaysPassItemProcessor (Default) / AsyncSecureCitizenCheckProcessorWithDependency |
| safpsCheck | Compliance | Screens the user against the South African Fraud Prevention Service (SAFPS) database to detect fraud alerts. | AlwaysPassItemProcessor (Default) / AsyncSAFPSCheckProcessorWithDependency |
| sbsaRelyComplyCheck | Compliance | Performs Standard Bank RelyComply verification check for KYC. Integrates with Standard Bank's RelyComply API for full user screening. | EmptyItemProcessor (Default) / AsyncSBSARelyComplyProcessorWithDependency |
| letshegoCustomKycCheck | Compliance | Custom KYC check developed specifically for the Letshego tenant integration. Executes specific compliance logic for Letshego. | EmptyItemProcessor (Default) / AsyncLetshegoCustomKycCheckProcessorWithNoDependency |
| isSAPassport | OCR | Checks whether the uploaded passport document is a South African Passport. Verifies the issuing country on the passport. | EmptyItemProcessor (Default) |
| idValidationCheck | Compliance | Performs validation on the user's ID document details comparing them with the platform's registered identity records. Verifies identity details against national registries. | EmptyItemProcessor (Default) / AsyncXaraniIdValidationProcessorWithNoDependency |
| personLastNameMatchesNationalIdentity | Compliance | Matches the person's registered last name with the last name on the national identity record. Ensures profile and ID name alignment. | EmptyItemProcessor (Default) |
| personNumberMatchesNationalIdentity | Compliance | Matches the person's identity number with the ID number on the national identity record. Ensures profile and ID number alignment. | EmptyItemProcessor (Default) |
| isComparisonNationalIdentityCorrect | OCR | Compares extracted national identity details with registered user records to ensure correctness. Matches OCR results against user profile data. | AsyncGenericComparisionProcessorWithNoDependency (Default) |
| isComparisonPassportCorrect | OCR | Compares extracted passport document details with registered user records to ensure correctness. Matches OCR results against user profile data. | AsyncGenericComparisionProcessorWithNoDependency (Default) |
| isComparisonSelfieCorrect | OCR | Verifies that the selfie matches the user's other uploaded identity document faces. Performs face comparisons across different documents. | AsyncGenericComparisionProcessorWithNoDependency (Default) |
| isComparisonAsylumPapersCorrect | OCR | Compares extracted asylum paper document details with registered user records to ensure correctness. Matches OCR results against user profile data. | AsyncGenericComparisionProcessorWithNoDependency (Default) |
NotesecureCitizenCheck, selfieMatchesNationalDatabase, matchCheck, pepCheck, adverseMediaCheck, and safpsCheck are overridden by database defaults to
AlwaysPassItemProcessorout of the box — they pass automatically unless a tenant or global config explicitly maps them to a different processor.
4. KYB (Organisation) Ratify Checks
The following checks are used during the organisation/business ratification process.
| Check Name | Type | Description | Configurable Processors (Default marked) |
|---|---|---|---|
| secureCitizenCheck | Compliance | Performs a verification and compliance check against the Secure Citizen database to validate organisation members/directors. | AlwaysPassItemProcessor (Default) / AsyncSecureCitizenCheckProcessorWithDependency |
| businessAddressMatchesProofOfAddress | OCR | Verifies that the registered business address matches the address extracted via OCR from the uploaded Proof of Address. Confirms the alignment of the organisation's claimed location. | EmptyItemProcessor (Default) / AsyncGenericProofOfAddressProcessorWithNoDependency |
| addressMatchesProofOfAddress | OCR | Extracts and validates the address from the uploaded Proof of Address document and matches it against registered address records. Verifies the legitimacy of the address document. | AsyncGenericProofOfAddressProcessorWithNoDependency (Default) |
| companyNumberMatchesCertOfIncorp | OCR | Compares the registered company registration number with the number extracted via OCR from the Certificate of Incorporation. Confirms company registration matching. | EmptyItemProcessor (Default) / AsyncGenericCertOfIncorpProcessorWithNoDependency |
| companyNameMatchesCertOfIncorp | OCR | Compares the registered company name with the name extracted via OCR from the uploaded Certificate of Incorporation. Confirms company name matching. | EmptyItemProcessor (Default) / AsyncGenericCertOfIncorpProcessorWithNoDependency |
| companyRegistrationDateMatchesCertOfIncorp | OCR | Matches the registered company registration date with the date extracted via OCR from the Certificate of Incorporation. Verifies creation date. | EmptyItemProcessor (Default) / AsyncGenericCertOfIncorpProcessorWithNoDependency |
| addressMatchesCertofincorp | OCR | Matches the registered company address with the address extracted via OCR from the Certificate of Incorporation. Cross-verifies business locations. | EmptyItemProcessor (Default) / AsyncGenericCertOfIncorpProcessorWithNoDependency |
| certOfIncorpIsLegitimate | OCR | Checks the authenticity, format, and legitimacy of the uploaded Certificate of Incorporation. Ensures that the certificate is not tampered with. | EmptyItemProcessor (Default) / AsyncGenericCertOfIncorpProcessorWithNoDependency |
| companyNameMatchesBusinessLicense | OCR | Matches the registered company name with the name extracted via OCR from the uploaded Business License. Confirms licensing details. | EmptyItemProcessor (Default) / AsyncGenericBusinessLicenseProcessorWithNoDependency |
| individualMemberMatchesBusinessLicense | OCR | Matches details of individual business members/owners against details extracted from the uploaded Business License. Verifies member alignment. | EmptyItemProcessor (Default) / AsyncGenericBusinessLicenseProcessorWithNoDependency |
| currentYearMatchesBusinessLicense | OCR | Verifies that the current calendar year matches the validity year extracted from the uploaded Business License. Confirms the license is active. | EmptyItemProcessor (Default) / AsyncGenericBusinessLicenseProcessorWithNoDependency |
| companyNameMatchesPartnershipDeed | OCR | Matches the registered partnership/company name with the name extracted via OCR from the Partnership Deed. Confirms partnership credentials. | EmptyItemProcessor (Default) / AsyncGenericPartnershipDeedProcessorWithNoDependency |
| partnersNameMatchesPartnershipDeed | OCR | Verifies that the registered partners' names match the partners' names extracted via OCR from the Partnership Deed. Confirms partner alignments. | EmptyItemProcessor (Default) / AsyncGenericPartnershipDeedProcessorWithNoDependency |
| partnershipDeedIsLegitimate | OCR | Checks the legitimacy, format, and authenticity of the uploaded Partnership Deed document. Ensures partnership documents show no signs of forgery. | EmptyItemProcessor (Default) / AsyncGenericPartnershipDeedProcessorWithNoDependency |
| businessLicenseIsLegitimate | OCR | Validates the format, legitimacy, and authenticity of the uploaded Business License document. Ensures the license is not falsified. | EmptyItemProcessor (Default) / AsyncGenericBusinessLicenseProcessorWithNoDependency |
| trustDeedIsLegitimate | OCR | Verifies the authenticity, legitimacy, and structure of the uploaded Trust Deed document. Validates trust structure alignment. | EmptyItemProcessor (Default) / AsyncGenericTrustDeedProcessorWithNoDependency |
| companyNameMatchesVerifiedBankStatement | OCR | Verifies if the registered company name matches the account holder's name extracted from the verified bank statement. Confirms bank account ownership. | EmptyItemProcessor (Default) / AsyncGenericBankStatementProcessorWithNoDependency |
| bankStatementIsLegitimate | OCR | Checks the legitimacy, format, and correctness of the uploaded business bank statement document. Analyses PDF or image details for consistency. | EmptyItemProcessor (Default) / AsyncGenericBankStatementProcessorWithNoDependency |
| usaWEightIsLegitimate | OCR | Verifies the authenticity and format of the uploaded USA W-8 form for foreign status declaration. Validates compliance with US IRS guidelines. | EmptyItemProcessor (Default) / AsyncGenericUSAW8ProcessorWithNoDependency |
| taxDocumentIsLegitimate | OCR | Validates the authenticity and structure of the uploaded business tax registration document. Verifies formatting against tax registries. | EmptyItemProcessor (Default) / AsyncGenericTaxProcessorWithNoDependency |
| taxNumberMatchesTaxDocument | OCR | Matches the registered business tax number with the number extracted via OCR from the tax document. Ensures correct tax profile mapping. | EmptyItemProcessor (Default) / AsyncGenericTaxProcessorWithNoDependency |
| ofacCheck | Compliance | Screens the business and its associated directors/owners against the OFAC sanctions database. Ensures compliance with US sanctions regulations. | AsyncOfacCheckProcessorWithDependency (Default) |
| unCheck | Compliance | Screens the business and its associated directors/owners against the United Nations (UN) sanctions consolidated list. Ensures compliance with UN sanctions regulations. | AsyncUnCheckProcessorWithDependency (Default) |
| certOfRegIsLegitimate | OCR | Checks the format, validity, and authenticity of the uploaded Certificate of Registration. Ensures registration documents are legitimate. | EmptyItemProcessor (Default) / AsyncGenericCertOfRegistrationProcessorWithNoDependency |
| companyNumberMatchesCertOfReg | OCR | Matches the registered company registration number with the number extracted via OCR from the Certificate of Registration. Matches official government ID. | EmptyItemProcessor (Default) / AsyncGenericCertOfRegistrationProcessorWithNoDependency |
| companyNameMatchesCertOfReg | OCR | Matches the registered company name with the name extracted via OCR from the uploaded Certificate of Registration. Confirms organisation names match. | EmptyItemProcessor (Default) / AsyncGenericCertOfRegistrationProcessorWithNoDependency |
| companyRegistrationDateMatchesCertOfReg | OCR | Matches the registered company registration date with the date extracted via OCR from the Certificate of Registration. Matches registration timestamp. | EmptyItemProcessor (Default) / AsyncGenericCertOfRegistrationProcessorWithNoDependency |
| addressMatchesCertOfReg | OCR | Matches the registered business address with the address extracted via OCR from the Certificate of Registration. Cross-verifies official locations. | EmptyItemProcessor (Default) / AsyncGenericCertOfRegistrationProcessorWithNoDependency |
| ownersNameMatchesCertOfReg | OCR | Matches registered owners' names with the owners' names extracted via OCR from the Certificate of Registration. Checks for owner matches. | EmptyItemProcessor (Default) / AsyncGenericCertOfRegistrationProcessorWithNoDependency |
| partnerNameMatchesCertOfReg | OCR | Matches registered partners' names with the partners' names extracted via OCR from the Certificate of Registration. Checks for partner matches. | EmptyItemProcessor (Default) / AsyncGenericCertOfRegistrationProcessorWithNoDependency |
| worldCheck | Compliance | Screens the company and its owners/directors against the World-Check compliance database to identify regulatory risks. Identifies high-risk business relationships. | AsyncWorldCheckProcessorWithDependency (Default) |
| taxNumberMatchesNationalDatabase | OCR | Matches the registered business tax reference number against the national tax database records. Performs real-time tax validation. | EmptyItemProcessor (Default) / AsyncGenericDtbTaxProcessorWithNoDependency / AsyncGenericTaxProcessorWithNoDependency |
| taxPayerNameMatchesNationalDatabase | OCR | Matches the registered company taxpayer name against the official records in the national tax database. Ensures name validity with tax systems. | EmptyItemProcessor (Default) / AsyncGenericDtbTaxProcessorWithNoDependency / AsyncGenericTaxProcessorWithNoDependency |
| taxDocumentMatchesNationalDatabase | OCR | Validates the business tax document details directly against the official national databases. Validates authenticity via official government records. | EmptyItemProcessor (Default) / AsyncGenericDtbTaxProcessorWithNoDependency / AsyncGenericTaxProcessorWithNoDependency |
| unscCheck | Compliance | Screens the business and associated individuals against the United Nations Security Council (UNSC) sanctions list. Prevents transacting with UNSC-sanctioned companies. | AsyncUNSCCheckProcessorWithDependency (Default) |
| ficCheck | Compliance | Screens the business and associated individuals against the Financial Intelligence Centre (FIC) compliance list. Ensures compliance with local FIC directives. | AsyncFICCheckProcessorWithDependency (Default) |
| matchCheck | Compliance | Screens the business details against the MATCH database for previous merchant risk or fraud alerts. | AlwaysPassItemProcessor (Default) / AsyncMatchCheckProcessorWithDependency |
| isSANational | OCR | Checks if the business entity/owner is registered as a South African national/citizen. Confirms SA corporate profile. | EmptyItemProcessor (Default) |
| frenchListCheck | Compliance | Screens the company and its key stakeholders against the French financial asset-freezing list. Ensures compliance with European asset control. | AsyncFRENCHCheckProcessorWithDependency (Default) |
| selfieMatchesNationalDatabase | Compliance | Matches the organisation's directors' selfies against the national database. | AlwaysPassItemProcessor (Default) / AsyncSecureCitizenCheckProcessorWithDependency |
| safpsCheck | Compliance | Screens the organisation and directors against the SAFPS database. | AlwaysPassItemProcessor (Default) / AsyncSAFPSCheckProcessorWithDependency |
| pepCheck | Compliance | Screens directors/owners to determine if they are Politically Exposed Persons (PEPs). | AlwaysPassItemProcessor (Default) / AsyncPepCheckProcessorWithDependency / AsyncThirdPartyPepCheckProcessorWithDependency / AsyncSecureCitizenCheckProcessorWithDependency |
| adverseMediaCheck | Compliance | Searches public media for negative press regarding the organisation and its directors. | AlwaysPassItemProcessor (Default) / AsyncSecureCitizenCheckProcessorWithDependency |
NotesecureCitizenCheck, selfieMatchesNationalDatabase, matchCheck, pepCheck, adverseMediaCheck, and safpsCheck are overridden by database defaults to
AlwaysPassItemProcessorout of the box — they pass automatically unless a tenant or global config explicitly maps them to a different processor.
5. Deprecated Checks Mapping
Some checks are deprecated but remain in the codebase for backward compatibility. They do not have their own processors; instead, they map dynamically to the results of active checks:
- selfieIsASelfie maps to selfieIsLegitimate
- nationalIdentityIsANationalIdentity maps to nationalIdentityIsLegitimate
- backOfNationalIdentityIsANationalIdentity maps to backOfNationalIdentityIsLegitimate
- passportIsAPassport maps to passportIsLegitimate
- creditBureauCheck maps to secureCitizenCheck
- sanctionsListCheck returns a combination of ofacCheck and unCheck (passes only if both pass and are checked)
Updated about 12 hours ago
