# Identity Scanner -------------------------------------------------------------------------------- title: "Introduction" description: "Catalyst provides Identity Scanner as a pre-built, Zia AI-driven microservice that enables you to perform secure identity checks on individuals, and validate ID proofs and documents." last_updated: "2026-09-02T11:24:40.560Z" source: "https://docs.catalyst.zoho.com/en/zia-services/help/identity-scanner/introduction/" service: "Zia Services" -------------------------------------------------------------------------------- # Identity Scanner ## Introduction Identity Scanner is a Catalyst Zia Services component that enables you to perform secure identity checks on individuals and documents by scanning and processing various ID proofs or official documents. Note: Catalyst does not store any of the files you upload in its systems. The documents you upload are used for one-time processing only. They are not used for ML model training purposes either. Catalyst components are fully compliant with all applicable data protection and privacy laws. Identity Scanner can be considered as a comprehensive suite that incorporates multiple Zia AI components like Optical Character Recognition (OCR), data extraction, face detection, and face comparison. Identity Scanner performs the following two major tasks that are divided into individual functionalities in the component: * E-KYC: Compares two faces in two different images to determine if they are the same individual. This will enable you to verify an individual's identity from their ID proof by comparing it with an existing photo of theirs. * Document Processing: Reads information from Indian Aadhaar cards, PAN cards, cheques, and passbooks, and extracts fields of data from the document. It can automatically detect and recognize textual content in multiple Indian and international languages, based on the model type. These features provide you with the flexibility of implementing an overall identity check processor in your Catalyst application through a single component. You can both extract information from an individual's ID proof and verify its authenticity by processing the photo in it. The parameters recognized and extracted from the ID proofs and supported documents, and the results of the E-KYC processing, are presented as JSON responses, along with confidence scores for some of them that inform you of the result's accuracy. You can choose to store the recognized data or process it further in any way you require. Catalyst offers Identity Scanner in the Java, Node.js and Python environments, and provides you with SDK code that you can easily integrate in your Catalyst application. You can find these code templates in the Catalyst console. The console also enables you to test Identity Scanner by uploading sample photographs of individuals, their IDs, or supported documents, and view the response. You can refer to the Java SDK documentation, Node.js SDK documentation and Python SDK documentation for code samples of Identity Scanner in those environments. Refer to the API documentation to learn about the APIs available for Identity Scanner. You can learn more about the other components of Catalyst Zia Services from this page. Note: * Document Processing is only relevant to Indian users and is only available in the IN DC (Indian Data Center). This feature will not be available to users accessing from the EU, AU, US, JP, SA or CA data centers. Users outside of India from the other DCs can access the general OCR component to read and process textual content. * E-KYC is available as Facial Comparison in the Java, Node.js and Python SDK packages, and as an API. The Facial Comparison SDKs and API are available for all users globally. You can use Facial Comparison to compare two images and verify if the faces in both the images match. * The AADHAAR, PASSBOOK, PAN, CHEQUE models were earlier available as sub-features of the general OCR component in the SDK toolkits and as APIs. They are now a part of the Identity Scanner suite. You can now also test all these models from the console. * Catalyst also provides a Zia Face Analytics feature that is available to all users globally. This performs advanced computational analytics on faces detected in images to determine the individual's age, gender, and expression. Refer to the Face Analytics help page to learn more. -------------------------------------------------------------------------------- title: "Key Concepts" description: "Catalyst provides Identity Scanner as a pre-built, Zia AI-driven microservice that enables you to perform secure identity checks on individuals, and validate ID proofs and documents." last_updated: "2026-09-02T11:24:40.560Z" source: "https://docs.catalyst.zoho.com/en/zia-services/help/identity-scanner/key-concepts/" service: "Zia Services" -------------------------------------------------------------------------------- # Key Concepts Before you learn about the use cases and implementation of Identity Scanner, it's important to understand its fundamental concepts in detail. ### E-KYC The E-KYC or Facial Comparison feature of Identity Scanner compares the faces detected in two different images for matches in their facial features. The two images provided for comparison are termed as the source image and the query image. In the case of Identity Scanning, one would be the image detected in an individual's ID proof, and the other would be a new or existing photograph of that person. Note: * You can process either the ID proof or the existing photo as the source or the query image. This will not affect the results. * If their existing photo includes multiple people in it, Zia will automatically detect the most prominent face in the image and process it for Identity Scanning. Therefore, ensure that you compare the ID proof of a person with a clear, individual photo of theirs. ### Facial Comparison Process Zia AI implements various state-of-the-art object detection, image analysis, and pattern recognition models. A generic Facial Comparison process can be divided into the following sub-tasks: * Face Detection: Face detection is a substantial part of the facial recognition process, which is infact a subset of object detection. This is the initial step towards facial recognition. The underlying algorithms detect faces in an image by segmenting them from the background, and identifying their coordinates in the image. * Facial Landmark Detection: Facial landmarking is the process of detecting and localizing specific key point characteristics on the face to recognize faces. This includes identifying the coordinates of key points, such as the distance between the eyes, the length of the face, the endpoints of the face, the contour of the lips, ears, and chin, and the shape and position of the cheek bones. * Facial Analysis: Facial comparison essentially involves comparing faces detected in query images to training sets or databases to verify an individual's identity. In the case of Zia Facial Comparison, the faces detected in the query and the source images are analysed. The faceprints identified from the analysis data of both faces are compared with each other to verify the degree of matches. The confidence score that is returned by Zia corresponds to this data. Various ML and deep-learning algorithms belonging to one or more face detection and face recognition methods can be used in performing these operations. These include geometric or feature based approaches, such as template matching, appearance or statistic based approaches that involve algorithms or methods like PCA using Eigenface or LDA, Fisherface algorithm, and implementation of neural networks. #### Request Format The input file format of E-KYC or Facial Comparison is specified below. <table class="content-table"> <thead> <tr> <th><strong>Identity Scanner Type</strong></th> <th><strong>Supported File Formats</strong></th> <th><strong>File Size Limit</strong></th> </tr> </thead> <tbody> <tr> <td>E-KYC</td> <td>Both the source image and the query image must only be of the following formats: <em>.webp/.jpeg</em> <em>.png</em></td> <td>10 MB for each image</td> </tr> </tbody> </table> #### Response Format The response format of E-KYC or Facial Comparison is described below: * Using the SDKs and APIs:<br /><br /> JSON response: The default JSON response will include the status message, and the data of the operation. Facial Comparison returns a binary response as to whether the faces match or not. The result is set to true if the faces match, or false if they don't match. The JSON response contains a confidence score between the range of 0 to 1\. Only if the comparison yields a confidence score of above 50% (i.e. 0.5) will the result be set to true. For more information, refer to the Java, Node.js and Python SDK, and the API documentation. * In the console:<br /><br /> When you upload images or files to test in the console, it will return the response in two formats:<br /> * Simplified response: This will display the message "Faces matched!" or "Faces not matched!" based on the results, and the confidence score of the comparison will be displayed in a percentage value. * JSON response: The console will also display the original JSON response received for the operation. ### Document Processing #### Text Recognition and Information Extraction Process The text detection, recognition, and extraction from the identity proof documents is handled by an advanced OCR system. OCR systems in general follow a top-down approach to the process. When a supported document is submitted to Identity Scanner, the text detection and recognition process proceeds as follows: 1. Zia analyzes the structure of the text and divides it into individual lines of text. 2. The lines of text are further broken down into words, and each word into individual characters. 3. Zia compares the characters it has detected with its dataset, and runs advanced algorithms to identify the characters and recognize words based on the character groupings. 4. Zia also runs algorithms to identify the language of the content by processing it through volumes of probabilities and hypotheses using ICR. You can additionally specify the language a document is in. This is only supported for the PASSBOOK model. When the language is already specified, this processing is performed more quickly. You can learn about the supported languages in the next section. 5. Through an extended OCR process, relevant identified information is extracted and populated as the values of pre-determined keys, based on the document model type. For example, values such as bank name and account number are recognized and extracted from bank passbooks and returned in the response with the corresponding keys. ### Model Types Identity Scanner supports the following model types corresponding to the supported identity proof documents: * AADHAAR: You can process Indian Aadhaar cards as identity proof documents with this model type. You must provide two images of the Aadhaar card as the input (the front and back images of the card). The response will return the parameters recognized from the Aadhaar card, such as the Aadhaar number, the card owner's name, address, and gender, along with confidence scores for each recognition. * PAN: This enables you to process Indian PAN cards as identity proof documents by providing a single image of the PAN card as the input. The response will return parameters recognized from the PAN card, such as the card owner's first name, last name, date of birth, and their PAN number. * PASSBOOK: You can process the front page of Indian bank passbooks as identity or financial proof using this model, by uploading the passbook's front page image. The response will return the parameters recognized from the passbook such as the account number, bank name, branch, and address. The response also shows if RTGS, NEFT, and IMPS have been enabled for that account. * CHEQUE: This model enables you to process Indian cheque leaves as financial proofs, by uploading an image of the cheque. Identity Scanner only processes cheques of the CTS-2010 format. The response will return the parameters recognized like the amount, bank name, branch name, account number, IFSC code, and the date of issuance. You must pass the respective model types in the request while using the Java, Node.js or Python SDK code , or when working with the APIs. Note: You must submit the exact documents for each of the document models to ensure accurate information recognition and extraction for that format. ### Supported Languages Note: Identity Scanner will return the response only in English, irrespective of the languages present in a document. For example, if a supported parameter in a bank passbook is in any other language besides English, it will not be shown in the response. PASSBOOK The PASSBOOK model supports the following 9 international languages: * English * Arabic * Chinese * French * Italian * Japanese * Portuguese * Romanian * Spanish It also supports these 10 Indian languages: * Hindi * Bengali * Marathi * Telugu * Tamil * Gujarati * Urdu * Kannada * Malayalam * Sanskrit AADHAAR The AADHAAR model can detect and recognize textual content in all supported Indian languages and English. You can process the Aadhaar card of any region in India with Identity Scanner. Note: The option to select the languages present in an Aadhaar card while processing it was available earlier, when it was a part of the general OCR component. This option has now been deprecated. This applies to the API, the SDKs, and the testing feature in the console. Identity Scanner will now automatically identify the languages in an Aadhaar card without requiring an input for it from the user. CHEQUE and PAN The CHEQUE and PAN models process the content only in English by default, and do not support any other languages. You must note the following points: * You can pass the languages you might find in the bank passbooks while processing for the PASSBOOK model. * Specifying the languages is optional. However, the text recognition and extraction process is faster and more accurate if you specify the languages. If no languages are specified, Identity Scanner will detect the languages automatically. * You will not be able to select the languages for the CHEQUE or the PAN models, as English is the only supported language for these types. You will not be able to select the languages for the AADHAAR model either. #### Request Format The input file formats of each of the model types are specified below. <table class="content-table"> <thead> <tr> <th><strong>Model Type</strong></th> <th><strong>Supported File Formats</strong></th> <th><strong>File Size Limit</strong></th> </tr> </thead> <tbody> <tr> <td>AADHAAR</td> <td>Both the front and the back images must only be of the following formats: <em>.webp/.jpeg</em> <em>.png</em> <em>.tiff</em> <em>.bmp</em></td> <td>15 MB for each image</td> </tr> <tr> <td>PASSBOOK</td> <td><em>.webp/.jpeg</em> <em>.png</em> <em>.tiff</em> <em>.bmp</em> <em>.pdf</em></td> <td>15 MB</td> </tr> <tr> <td>CHEQUE</td> <td><em>.webp/.jpeg</em> <em>.png</em></td> <td>15 MB</td> </tr> <tr> <td>PAN</td> <td><em>.webp/.jpeg</em> <em>.png</em></td> <td>15 MB</td> </tr> </tbody> </table> #### Response Format The response format of Document Processing is described below: * Using the SDKs and APIs:<br /> JSON response: The default JSON response will include the status message and the data for the respective operation, as specified in the Model Types section. You can format the text you receive in the response for the document processing in your code. For more information, refer to the Java, Node.js and Python SDK documentation. * In the console:<br /> When you upload images or files to test in the console, it will return the response in two formats:<br /> * Simplified response: The simplified textual response will list the parameters extracted from the identity proof in a readable format. * JSON response: The console will also display the original JSON response received for each operation. -------------------------------------------------------------------------------- title: "Benefits" description: "Catalyst provides Identity Scanner as a pre-built, Zia AI-driven microservice that enables you to perform secure identity checks on individuals, and validate ID proofs and documents." last_updated: "2026-09-02T11:24:40.561Z" source: "https://docs.catalyst.zoho.com/en/zia-services/help/identity-scanner/benefits/" service: "Zia Services" -------------------------------------------------------------------------------- # Benefits 1. Seamless Integration of Identity Verification Feature<br /><br /> Identity Scanner enables you to perform all aspects of an individual's identity check and verification under a single banner. You can easily implement all the elements of Identity Scanner in your application without having to worry about the underlying logic or the backend set-up, by incorporating the ready-made code templates provided for the Java and Node.js platforms. 2. Multiple Language Support<br /><br /> The multiple Indian and international language support offered by Catalyst for document processing allows you to process a variety of ID or financial transaction proofs, including passbooks of international banks or Aadhaar cards of any Indian state. The automatic detection of all supported languages in a passbook in case of non-specification enhances ease and efficiency. 3. Accurate Results through Advanced Training <br /><br /> Zia is an AI-driven assistant that undergoes repeated systematic training to generate results with higher accuracy and a lower error margin. The AI is trained using various ML and deep-learning techniques, and advanced facial recognition and data analysis models, to perform complex computations and analysis. The training models are highly vigorous, which means Zia studies large volumes of data and training sets, and this ensures that the results generated are precise, accurate, and reliable. 4. Instantaneous Response<br /><br /> Catalyst processes files and generates results in a fast and effective manner. Catalyst servers are built on Zoho's architecture, and they ensure a high throughput of data transmission and minimal latency in serving requests. They scale up or down based on the demand, which allows you to build and serve applications on all consumption levels. The quick response time enhances your app's performance, and provides a high-end experience for the app's users. 5. Testing in the Console<br /><br /> The testing feature in the console enables you to verify the efficiency of Identity Scanner. You can upload sample files for E-KYC and for each document processing model, and view a JSON response, as well as a simplified response. This allows you to get an idea about the format and accuracy of the response of the component. -------------------------------------------------------------------------------- title: "Use Cases" description: "Catalyst provides Identity Scanner as a pre-built, Zia AI-driven microservice that enables you to perform secure identity checks on individuals, and validate ID proofs and documents." last_updated: "2026-09-02T11:24:40.561Z" source: "https://docs.catalyst.zoho.com/en/zia-services/help/identity-scanner/use-cases/" service: "Zia Services" -------------------------------------------------------------------------------- # Use Cases Document Processing and E-KYC are implemented in a wide range of applications and scenarios. The following are some use cases where Identity Scanner can be implemented: * Consumer apps that require identity verification from the app users for creating their user accounts can process any of their ID proofs to verify their identity. * Age-restricted services or products that cannot be made available for minors can use Identity Scanner to verify the customer's age. * E-commerce apps or delivery services that require proof of identity before delivering packages to users can implement E-KYC. * Event organizer or venue management services that need to identify individuals before allowing them to attend events can use E-KYC. * Products or services rental apps that require customers to submit an identity proof or a cheque leaf for the services to be rendered. * Localized services that can only cater to certain demographics or users based on specific geographic locations can verify their users addresses. * Apps in the financial sector, such as banking, investments, share trading or crypto-currency trading apps that require their customers to provide identity or financial proofs such as PAN cards. * Services that allow payments through cheques and require customers to submit a cheque leaf as a proof of the payment made. * Any banking, business, or economic apps that require the front pages of bank passbooks to be processed as a proof of identity or of a bank account. * Services that require the users to click and submit a photograph of theirs on the spot to verify their identity with a previously submitted ID proof using E-KYC. * Microservices that enable digitization of identity proofs or documents. -------------------------------------------------------------------------------- title: "Implementation" description: "Catalyst provides Identity Scanner as a pre-built, Zia AI-driven microservice that enables you to perform secure identity checks on individuals, and validate ID proofs and documents." last_updated: "2026-09-02T11:24:40.561Z" source: "https://docs.catalyst.zoho.com/en/zia-services/help/identity-scanner/implementation/" service: "Zia Services" -------------------------------------------------------------------------------- # Implementation This section only covers testing Identity Scanner and accessing the sample SDK code templates from the Catalyst console. Refer to the SDK and API documentation sections for implementing the feature in your application. ### Access Identity Scanner To access Identity Scanner in your Catalyst console: 1. Navigate to Zia Services in the left pane of the Catalyst console and click Identity Scanner.<br /> 2. Click Try a Demo in the Identity Scanner feature page to scan and process the various supported Identity proof documents. ### Test Identity Scanner in the Catalyst Console Identity Scanner contains all 5 features as individual sections in the console: * E-KYC * Aadhaar Card * PAN Card * Passbook * Cheque You can test each feature by either selecting an existing sample image for it that Catalyst provides, or by uploading your own files. Note: Refer to the E-KYC Request Format or Document Processing Request Format sections for the input formats. #### E-KYC To process sample files or files of your own and test E-KYC: 1. Click Select a Sample Image or Browse Files in the _User's Photo ID Card_ window in the _E-KYC_ section to upload the ID proof.<br /> <br /> 2. Select a sample image ID proof that Catalyst provides, or select a file from your system.<br /> <br /> 3. Click Select a Sample Image or Browse Files in the _User's Photo_ window to upload a photograph to compare the photo in the ID proof with. 4. Again, select a sample image that Catalyst provides, or select a file from your system.<br /> <br /> Identity Scanner will now compare the face detected in the ID proof with the photograph to determine if they are the same individual. The console will display a simplified response of the comparison, along with the confidence score. You can learn about the response in detail from the E-KYC Response Format section. You can view the default JSON response that is fetched, by clicking View Response. #### Aadhaar Card You can process a sample Aadhaar card or a card of your own and test the AADHAAR model as follows: 1. Navigate to the _Aadhaar Card_ section. 2. Click Select a Sample Image or Browse Files in the _Aadhaar Front Side_ window to upload the front side image of the Aadhaar card.<br /> 3. Select a sample Aadhaar front image that Catalyst provides, or select a file from your system.<br /> <br /> Note: Refer to the Document Processing Request Format section for the input file format. 4. Click Select a Sample Image or Browse Files in the _Aadhaar Back Side_ window to upload the back image of the card. 5. Again, select a sample back image that Catalyst provides, or select a file from your system.<br /> 6. You can select the languages present in the Aadhaar card from the drop-down, then click Get Result. Note: This option has now been deprecated and will be removed from the console soon. Identity Scanner will automatically identify the languages in an Aadhaar card without requiring an input for it from the user. The console will display the parameters recognized and identified from the Aadhaar card, such as the Aadhaar number, name, and address. You can learn about the response format in detail from the Document Processing Response Format section. You can view the default JSON response that is fetched, by clicking View Response. #### PAN Card You can process a sample PAN card or a card of your own and test the PAN model as follows: 1. Navigate to the _PAN Card_ section. 2. Click Select a Sample Image or Browse Files to upload a PAN card.<br /> 3. Select a sample PAN card image that Catalyst provides, or select a file from your system.<br /> <br /> Note: Refer to the Document Processing Request Format section for the input file format. The console will display the parameters recognized and identified from the PAN card, such as the PAN number, first name, last name, and date of birth. You can learn about the response format in detail from the Document Processing Response Format section. You can view the default JSON response that is fetched, by clicking View Response. #### Passbook You can process a sample bank passbook or a passbook of your own and test the PASSBOOK model as follows: 1. Navigate to the _Passbook_ section. 2. Click Select a Sample Image or Browse Files to upload a passbook's front page image.<br /> 3. Select a sample image of a bank passbook that Catalyst provides, or select a file from your system. Note: Refer to the Document Processing Request Format section for the input file format. 4. Select the languages present in the passbook from the drop-down for quicker and more efficient processing, then click Get Result.<br /> Note: Refer to the Supported Languages section for a list of languages supported by the PASSBOOK model. The console will display the parameters recognized and identified from the passbook, such as the bank account number, bank name, and branch You can learn about the response format in detail from the Document Processing Response Format section. You can view the default JSON response that is fetched, by clicking View Response. #### Cheque You can process a sample cheque leaf or a cheque of your own and test the CHEQUE model as follows: 1. Navigate to the _Cheque_ section. 2. Click Select a Sample Image or Browse Files to upload an image of a cheque leaf.<br /> 3. Select a sample cheque leaf image that Catalyst provides, or select a file from your system.<br /> <br /> Note: Refer to the Document Processing Request Format section for the input file format. The console will display the parameters recognized and identified from the cheque, such as the date of issuance, amount, bank name, MICR, etc. You can learn about the response format in detail from the Document Processing Response Format section. You can view the default JSON response that is fetched, by clicking View Response. ### Access Code Templates for Identity Scanner As mentioned earlier, the console provides the latest code templates for all five features of Identity Scanner in the Java and Node.js platforms. You can access them from the console below the test windows in each section. Note: Each section in the console contains the code for that feature. That is, if you click the Aadhaar Card tab and scroll down, you will find the Java, Node.js and Python code for the AADHAAR model. Similarly, if you click the Passbook tab and scroll down, you will find the code templates for the PASSBOOK model. Ensure that you are copying the right code for the feature you require. Click the Java SDK, NodeJS SDK or Python SDK tab, and copy the code using the copy icon. You can implement this code in your Catalyst application's source code. The code shown below is the Java SDK code for the E-KYC or Facial Comparison feature. Note: Refer to the Java SDK, Node.js and Python SDK help pages for an explanation of the code templates of each feature. --- ## API Reference — Identity Scanner -------------------------------------------------------------------------------- title: "Facial Comparison" description: "This API enables you to compare two faces in two different images to determine if they are the same individual." last_updated: "2026-09-02T11:24:40.568Z" source: "https://docs.catalyst.zoho.com/en/api/code-reference/zia-services/identity-scanner/facial-comparison/" service: "Zia Services" -------------------------------------------------------------------------------- # Identity Scanner Identity Scanner is a Zia AI-driven component that enables you to perform secure identity checks on individuals and documents by scanning and processing various ID proofs or official documents. It is a comprehensive suite that incorporates multiple functionalities divided into two major categories- E-KYC and Document Processing. Note: Catalyst does not store any of the files you upload in its systems. The documents you upload are used for one-time processing only. They are not used for ML model training purposes either. Catalyst components are fully compliant with all applicable data protection and privacy laws. # Facial Comparison Facial Comparison, also known as E-KYC, is a part of Identity Scanner that compares two faces in two different images to determine if they are the same individual. Note: While the Document Processing feature of Identity Scanner is only relevant to Indian users, the Facial Comparison API and SDK tools are available to a global audience. However, accessing and testing Facial Comparison or E-KYC from the Catalyst console is restricted to the users from IN DC alone. ## Process Facial Comparison ### Description This API enables you to perform a face comparison between a source image and a query image. You must specify the paths to both the image files in the API request, as shown in the sample request. Note: You can mark either the ID proof image or the individual's photograph as the source or the query image. This will not affect the results. ### Request Details #### Request URL <p>{api-domain}/baas/v1/project/{project_id}/ml/facecomparison</p> The DC-specific domain to access Catalyst API The unique ID of the project #### Request Headers **Authorization:** Zoho-oauthtoken {oauth_token} <br> **content-type:** multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW **Optional Headers** <br> **CATALYST-ORG:** {org_id} **Environment:** Development #### Scope ZohoCatalyst.mlkit.READ #### Request JSON Properties The photo ID or an individual's photograph. You must provide the path to it in your local system. Allowed formats: *.webp, .jpeg, .png*<br> File size limit: 10 MB The photo ID or an individual's photograph. You must provide the path to it in your local system. Allowed formats: *.webp, .jpeg, .png*<br> File size limit: 10 MB ### Response Details The response returns the result of comparison as true if the faces match, or false if they don't match. The response also contains a confidence score between the range of 0 to 1. Only if the comparison yields a confidence score of above 50% i.e., 0.5, the result will be set to true. curl -X POST \ https://api.catalyst.zoho.com/baas/v1/project/4000000006007/ml/facecomparison \ -H "Authorization: Zoho-oauthtoken 1000.910*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*16.2f*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*57" \ -H "Content-Type: multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW" \ -F source_image=/Desktop/SourceImage.webp \ -F query_image=/Desktop/QueryImage.webp { "status": "success", "data": { "confidence": 1.0, "matched": "true" } } Facial Comparison- Java SDK<br><br> Facial Comparison- Node.js SDK<br><br> Facial Comparison- Python SDK -------------------------------------------------------------------------------- title: "Aadhaar" description: "This API enables you to extract fields of data from an Indian Aadhaar card and fetch the parameters recognized from it." last_updated: "2026-09-02T11:24:40.569Z" source: "https://docs.catalyst.zoho.com/en/api/code-reference/zia-services/identity-scanner/aadhaar/" service: "Zia Services" -------------------------------------------------------------------------------- # Aadhaar The AADHAAR model is a part of the Document Processing feature of Identity Scanner that enables you to process Indian Aadhaar cards as identity proof documents. Note: <br> * Catalyst does not store any of the files you upload in its systems. The documents you upload are used for one-time processing only. They are not used for ML model training purposes either. Catalyst components are fully compliant with all applicable data protection and privacy laws. * Document Processing is only relevant to Indian users and is **only available in the IN DC**. This feature will not be available to users accessing from the EU, AU, US, JP, SA or CA data centers. Users outside of India from the other DCs can access the general OCR component to read and process textual content. ## Process Aadhaar ### Description This API extracts fields of data from an Indian Aadhaar card using an advanced OCR technology. The JSON response will return the parameters recognized from the Aadhaar card, along with confidence scores for each recognition that determine their accuracy. You must provide the path to the image files of the front and back of the Aadhaar card, and specify the model type as AADHAAR in the API request. Note: The option to pass the languages present in an Aadhaar card has now been deprecated. Identity Scanner will now automatically identify the languages in an Aadhaar card and process it. The API will be updated accordingly soon. You can temporarily pass the languages as shown in the sample request. ### Request Details #### Request URL <p>{api-domain}/baas/v1/project/{project_id}/ml/ocr</p> The DC-specific domain to access Catalyst API The unique ID of the project #### Request Headers **Authorization:** Zoho-oauthtoken {oauth_token} <br> **content-type:** multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW **Optional Headers** <br> **CATALYST-ORG:** {org_id} **Environment:** Development #### Scope ZohoCatalyst.mlkit.READ #### Request JSON Properties The image of the front side of the Aadhaar card to be processed. You must provide the path to it in your local system. Allowed formats: *.webp, .jpeg, .png, .bmp, .tiff*<br> File size limit: 15 MB The image of the back side of the Aadhaar card to be processed. You must provide the path to it in your local system. Allowed formats: *.webp, .jpeg, .png, .bmp, .tiff*<br> File size limit: 15 MB The model type of the image Value to be passed: AADHAAR The language code of the language to be identified. The AADHAAR model supports the Indian languages listed in a table below. You must pass English and the relevant regional language alone for the AADHAAR type. For example, if you are from Tamil Nadu, you must pass tam and eng in the request. #### Languages Supported by the Aadhaar Model Type <table class="content-table"> <thead> <tr> <th class="w50p">Language</th> <th class="w50p">Language Codes</th> </tr> </thead> <tbody> <tr> <td>English</td> <td>eng</td> </tr> <tr> <td>Hindi</td> <td>hin</td> </tr> <tr> <td>Bengali</td> <td>ben</td> </tr> <tr> <td>Marathi</td> <td>mar</td> </tr> <tr> <td>Telugu</td> <td>tel</td> </tr> <tr> <td>Tamil</td> <td>tam</td> </tr> <tr> <td>Gujarati</td> <td>guj</td> </tr> <tr> <td>Urdu</td> <td>urd</td> </tr> <tr> <td>Kannada</td> <td>kan</td> </tr> <tr> <td>Malayalam</td> <td>mal</td> </tr> <tr> <td>Sanskrit</td> <td>san</td> </tr> </tbody> </table> ### Response Details The response contains the parameters recognized in the Aadhaar card such as the card holder's name, address, gender, Aadhaar card number assigned to respective keys. The response also shows a confidence score in the range of 0 to 1 for each of the recognized values. curl -X POST https://api.catalyst.zoho.com/baas/v1/project/4000000006007/ml/ocr -H "Authorization: Zoho-oauthtoken 1000.910*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*16.2f*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*57" \ -H "Content-Type: multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW" \ -F aadhaar_front=/Desktop/Aadhaar1.webp \ -F aadhaar_back=/Desktop/Aadhaar2.webp \ -F model_type=AADHAAR \ -F "language=eng,tam" { "status":"success", "data":{ "text": "{\"address\":{\"prob\":0.5,\"value\":\"S/O Tony, Seer 40, S/O Julie, 40, Dewdrops Street, Cherry Hill Pondicherry, Pondicherry ureing4Gen, ureing4Gen 605008 \"},\"gender\":{\"prob\":\"0.9\",\"value\":\"male\"},\"dob\": {\"prob\":\"0.6\", \"value\":\"12/12/2012\"},\"name\":{\"prob\":\"0.8\", \"value\":\"Hari Krishnan\"},\"aadhaar\":{\"prob\":0.8,\"value\":\"1234 5678 0123\"}}" } } Identity Scanner: Aadhaar- Java SDK<br><br> Identity Scanner: Aadhaar- Node.js SDK<br><br> Identity Scanner: Aadhaar- Python SDK<br><br> -------------------------------------------------------------------------------- title: "PAN" description: "This API enables you to extract fields of data from an Indian PAN card and fetch the parameters recognized from it." last_updated: "2026-09-02T11:24:40.569Z" source: "https://docs.catalyst.zoho.com/en/api/code-reference/zia-services/identity-scanner/pan/" service: "Zia Services" -------------------------------------------------------------------------------- # PAN The PAN model is a part of the Document Processing feature of Identity Scanner that enables you to process Indian PAN cards as identity proof documents. Note: <br> * Catalyst does not store any of the files you upload in its systems. The documents you upload are used for one-time processing only. They are not used for ML model training purposes either. Catalyst components are fully compliant with all applicable data protection and privacy laws. * Document Processing is only relevant to Indian users and is **only available in the IN DC**. This feature will not be available to users accessing from the EU, AU, US, JP, SA or CA data centers. Users outside of India from the other DCs can access the general OCR component to read and process textual content. ## Process PAN ### Description This API extracts fields of data from a PAN card using an advanced OCR technology, and returns the parameters recognized from the PAN card as a JSON response. You must provide the path to the image file of the front side of the PAN card containing personal details in the API request. You must specify the model type in the API request as PAN, to process the PAN card. The PAN model can only process text in English by default. ### Request Details #### Request URL <p>{api-domain}/baas/v1/project/{project_id}/ml/ocr</p> The DC-specific domain to access Catalyst API The unique ID of the project #### Request Headers **Authorization:** Zoho-oauthtoken {oauth_token} <br> **content-type:** multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW **Optional Headers** <br> **CATALYST-ORG:** {org_id} **Environment:** Development #### Scope ZohoCatalyst.mlkit.READ #### Request JSON Properties The image of the front side of the PAN card. You must provide the path to it in your local system. Allowed formats: *.webp, .jpeg, .png*<br> File size limit: 15 MB The model type of the image Value to be passed: PAN ### Response Details The response will contain the parameters extracted from the PAN card such as their first name, last name, date of birth, and their PAN card number assigned to the respective keys. curl -X POST \ https://api.catalyst.zoho.com/baas/v1/project/4000000006007/ml/ocr \ -H "Authorization: Zoho-oauthtoken 1000.910*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*16.2f*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*57" \ -H "Content-Type: multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW" \ -F image=/Desktop/MyPan.webp \ -F model_type=PAN { "status": "success", "data": { "first_name": "KIRAN", "last_name": "RAO", "date_of_birth": "03/04/1982", "pan": "ANRPM2537J" } } Identity Scanner: PAN- Java SDK<br><br> Identity Scanner: PAN- Node.js SDK<br><br> Identity Scanner: PAN- Python SDK<br><br> -------------------------------------------------------------------------------- title: "Passbook" description: "This API enables you to extract fields of data from an Indian bank passbook and fetch the parameters recognized from it." last_updated: "2026-09-02T11:24:40.569Z" source: "https://docs.catalyst.zoho.com/en/api/code-reference/zia-services/identity-scanner/passbook/" service: "Zia Services" -------------------------------------------------------------------------------- # Passbook The PASSBOOK model is a part of the Document Processing feature of Identity Scanner that enables you to process Indian bank passbooks as financial or identity proof documents. Note: <br> * Catalyst does not store any of the files you upload in its systems. The documents you upload are used for one-time processing only. They are not used for ML model training purposes either. Catalyst components are fully compliant with all applicable data protection and privacy laws. * Document Processing is only relevant to Indian users and is **only available in the IN DC**. This feature will not be available to users accessing from the EU, AU, US, JP, SA or CA data centers. Users outside of India from the other DCs can access the general OCR component to read and process textual content. ## Process Passbook ### Description This API extracts fields of data from a passbook using the OCR technology and returns the parameters recognized from the passbook as a JSON response. You must provide the path to the image file of the front page of the bank passbook, and specify the model type as PASSBOOK in the API request. You can also optionally input the languages present in the passbook in the API request. The text recognition and extraction process is faster and more accurate if you specify the languages. ### Request Details #### Request URL <p>{api-domain}/baas/v1/project/{project_id}/ml/ocr</p> The DC-specific domain to access Catalyst API The unique ID of the project #### Request Headers **Authorization:** Zoho-oauthtoken {oauth_token} <br> **content-type:** multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW **Optional Headers** <br> **CATALYST-ORG:** {org_id} **Environment:** Development #### Scope ZohoCatalyst.mlkit.READ #### Request JSON Properties The image of the front page of the passbook. You must provide the path to it in your local system. Allowed formats: *.webp, .jpeg, .png, .bmp, .tiff, .pdf*<br> File size limit: 15 MB The model type of the image Value to be passed: PASSBOOK The language code of the languages to be identified. You can pass multiple languages. The PASSBOOK model supports the Indian and international languages specified in the tables below. Default value: eng #### International Languages Supported by the Passbook Model Type <table class="content-table"> <thead> <tr> <th class="w50p">Language</th> <th class="w50p">Language Codes</th> </tr> </thead> <tbody> <tr> <td>English</td> <td>eng</td> </tr> <tr> <td>Arabic</td> <td>ara</td> </tr> <tr> <td>Chinese</td> <td>chi_sim</td> </tr> <tr> <td>French</td> <td>fra</td> </tr> <tr> <td>Italian</td> <td>ita</td> </tr> <tr> <td>Japanese</td> <td>jpn</td> </tr> <tr> <td>Portuguese</td> <td>por</td> </tr> <tr> <td>Romanian</td> <td>ron</td> </tr> <tr> <td>Spanish</td> <td>spa</td> </tr> </tbody> </table> <br> #### Indian Languages Supported by the Passbook Model Type <table class="content-table"> <thead> <tr> <th class="w50p">Language</th> <th class="w50p">Language Codes</th> </tr> </thead> <tbody> <tr> <td>Hindi</td> <td>hin</td> </tr> <tr> <td>Bengali</td> <td>ben</td> </tr> <tr> <td>Marathi</td> <td>mar</td> </tr> <tr> <td>Telugu</td> <td>tel</td> </tr> <tr> <td>Tamil</td> <td>tam</td> </tr> <tr> <td>Gujarati</td> <td>guj</td> </tr> <tr> <td>Urdu</td> <td>urd</td> </tr> <tr> <td>Kannada</td> <td>kan</td> </tr> <tr> <td>Malayalam</td> <td>mal</td> </tr> <tr> <td>Sanskrit</td> <td>san</td> </tr> </tbody> </table> ### Response Details The response contains the bank details and account details recognized from the passbook such as the bank name, branch, address, account number. The extracted fields of information are assigned to their respective keys. The response also shows if RTGS, NEFT, and IMPS have been enabled for that account by returning true or false for those keys. Note: Identity Scanner will return the response only in English, irrespective of the languages present in the passbook. curl -X POST \ https://api.catalyst.zoho.com/baas/v1/project/4000000006007/ml/ocr \ -H "Authorization: Zoho-oauthtoken 1000.910*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*16.2f*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*57" \ -H "Content-Type: multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW" \ -F image=/Desktop/MyPassbook.pdf \ -F model_type=PASSBOOK \ -F "language=eng" { "status":"success", "data":{ "text": "{\"address\":\"NO.20 ,SUNSHINE LANE,ANNA NAGAR,CHENNAI\",\"city\":\"CHENNAI\",\"centre\":\"CHENNAI\",\"bankName\":\"ABC BANK LIMITED\",\"accountNumber\":\"000000001111222\",\"branch\":\"ANNA NAGAR\",\"dateOfOpening\":\"30/08/2012\",\"imps\":\"true\",\"neft\":\"true\",\"district\":\"CHENNAI\",\"contact\":\"2891289\",\"micr\":\"0101010\",\"name\":\" 999919\",\"state\":\"TAMIL NADU\",\"rtgs\":\"true\",\"ifsc\":\"ABCB0000111\"}" } } Identity Scanner: Passbook- Java SDK<br><br> Identity Scanner: Passbook- Node.js SDK<br><br> Identity Scanner: Passbook- Python SDK<br><br> -------------------------------------------------------------------------------- title: "Cheque" description: "This API enables you to extract fields of data from Indian cheque leaves and fetch the parameters recognized from it." last_updated: "2026-09-02T11:24:40.570Z" source: "https://docs.catalyst.zoho.com/en/api/code-reference/zia-services/identity-scanner/cheque/" service: "Zia Services" -------------------------------------------------------------------------------- # Cheque The CHEQUE model is a part of the Document Processing feature of Identity Scanner that enables you to process Indian bank cheque leaves as identity proof documents. Note: <br> * Catalyst does not store any of the files you upload in its systems. The documents you upload are used for one-time processing only. They are not used for ML model training purposes either. Catalyst components are fully compliant with all applicable data protection and privacy laws. * Document Processing is only relevant to Indian users and is **only available in the IN DC**. This feature will not be available to users accessing from the EU, AU, US, JP, SA or CA data centers. Users outside of India from the other DCs can access the general OCR component to read and process textual content. ## Process Cheque ### Description This API extracts fields of data from a cheque using an advanced OCR technology, and returns the parameters recognized from the cheque as a JSON response. You must provide the path to the image file of a cheque leaf in the API request, and specify the model type as CHEQUE in the API request. The CHEQUE model can only process text in English by default. No other languages are supported. Note: Zia only processes cheques of the CTS-2010 format. ### Request Details #### Request URL <p>{api-domain}/baas/v1/project/{project_id}/ml/ocr</p> The DC-specific domain to access Catalyst API The unique ID of the project #### Request Headers **Authorization:** Zoho-oauthtoken {oauth_token} <br> **content-type:** multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW **Optional Headers** <br> **CATALYST-ORG:** {org_id} **Environment:** Development #### Scope ZohoCatalyst.mlkit.READ #### Request JSON Properties The image of a bank cheque leaf. You must provide the path to it in your local system. Allowed formats: *.webp, .jpeg, .png*<br> File size limit: 15 MB The model type of the image Value to be passed: CHEQUE ### Response Details The response will contain the parameters extracted from the cheque, such as the amount, bank name, branch name, account number, IFSC code, assigned to the respective keys. curl -X POST \ https://api.catalyst.zoho.com/baas/v1/project/4000000006007/ml/ocr \ -H "Authorization: Zoho-oauthtoken 1000.910*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*16.2f*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*57" \ -H "Content-Type: multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW" \ -F image=/Desktop/MyCheque.webp \ -F model_type=CHEQUE \ { "status": "success", "data": { "amount": "50000", "branch_name": "ANNA NAGAR WEST", "bank_name": "STATE BANK OF INDIA", "account_number": "00001234556001", "ifsc": "SBIN0011724", "date": "25/09/2012" } } Identity Scanner: Cheque- Java SDK<br><br> Identity Scanner: Cheque- Node.js SDK<br><br> Identity Scanner: Cheque- Python SDK<br><br> --- ## SDK — Java — Identity Scanner -------------------------------------------------------------------------------- title: "Facial Comparison" description: "This page describes the method to use facial comparison feature in your Java application with sample code snippets." last_updated: "2026-09-02T11:24:40.577Z" source: "https://docs.catalyst.zoho.com/en/sdk/java/v1/zia-services/identity-scanner/facial-comparison/" service: "Zia Services" related: - Facial Comparison - API (/en/api/code-reference/zia-services/identity-scanner/facial-comparison/#FacialComparison) -------------------------------------------------------------------------------- # Identity Scanner Identity Scanner is a Zia AI-driven component that enables you to perform secure identity checks on individuals and documents by scanning and processing various ID proofs or official documents. It is a comprehensive suite that incorporates multiple functionalities divided into two major categories- E-KYC and Document Processing. Note: Catalyst does not store any of the files you upload in its systems. The documents you upload are used for one-time processing only. They are not used for ML model training purposes either. Catalyst components are fully compliant with all applicable data protection and privacy laws. ## Facial Comparison Facial Comparison, also known as E-KYC, is a part of Identity Scanner that Compares two faces in two different images to determine if they are the same individual. This will enable you to verify an individual's identity from their ID proof by comparing it with an existing photo of theirs. For example, you can verify the authenticity of a photo ID, such as an individual's Aadhaar card, by comparing it with their current photograph. Note: While the Document Processing feature of Identity Scanner is only relevant to Indian users, the Facial Comparison API and SDK tools are available to a global audience. However, accessing and testing Facial Comparison or E-KYC from the Catalyst console is restricted to the users from IN DC alone. You can perform a face comparison between a source image and a query image, by specifying the path to both the image files, as shown in the sample code. The compareFace() method processes both these images. Note: You can mark either the ID proof image or the individual's photograph as the source or the query image. This will not affect the results. Allowed file formats: _.webp_, _.jpeg_, _.png_ File size limit: 10 MB The result of the comparison is set to true if the faces match, or false if they don't match. The result also contains a confidence score between the range of 0 to 1, that determines the accuracy of the processing. Only if the comparison yields a confidence score of above 50% i.e., 0.5, the result will be set to true. #### Sample Code Snippet <br> import com.catalyst.advanced.CatalystAdvancedIOHandler; import com.zc.component.ml.ZCFaceComparisonData; import com.zc.component.ml.ZCML; import java.io.File; File sourceImage= new File("/Users/amelia-421/Desktop/source.webp"); //Specify the file path File queryImage= new File("/Users/amelia-421/Desktop/query.webp"); //Specify the file path ZCFaceComparisonData data = ZCML.getInstance().compareFace(sourceImage,queryImage ); Double confidence = data.getConfidence(); //Fetches the confidence score boolean matched= data.getMatched(); //Fetches the result as a boolean value -------------------------------------------------------------------------------- title: "Aadhaar" description: "This page describes the method to use the AADHAAR document processing feature in your Java application with sample code snippets." last_updated: "2026-09-02T11:24:40.577Z" source: "https://docs.catalyst.zoho.com/en/sdk/java/v1/zia-services/identity-scanner/aadhaar/" service: "Zia Services" related: - Aadhaar - API (/en/api/code-reference/zia-services/identity-scanner/aadhaar/#Aadhaar) -------------------------------------------------------------------------------- # Identity Scanner Identity Scanner is a Zia AI-driven component that enables you to perform secure identity checks on individuals and documents by scanning and processing various ID proofs or official documents. It is a comprehensive suite that incorporates multiple functionalities divided into two major categories- E-KYC and Document Processing. Note: Catalyst does not store any of the files you upload in its systems. The documents you upload are used for one-time processing only. They are not used for ML model training purposes either. Catalyst components are fully compliant with all applicable data protection and privacy laws. ## Aadhaar The AADHAAR model is a part of the Document Processing feature that enables you to process Indian Aadhaar cards as identity proof documents. This enables you to extract fields of data from an Indian Aadhaar card using an advanced OCR technology. The response will return the parameters recognized from the Aadhaar card, along with confidence scores for each recognition that determine their accuracy. Note: Document Processing is only relevant to Indian users and is only available in the IN DC. This feature will not be available to users accessing from the EU, AU, US, JP, SA or CA data centers. Users outside of India from the other DCs can access the general OCR component to read and process textual content. You must provide the path to the image files of the front and back of the Aadhaar card using the keys aadhaarFront and aadhaarBack, as shown in the code below. Note: The option to pass the languages present in an Aadhaar card has now been deprecated. Identity Scanner will now automatically identify the languages in an Aadhaar card and process it. The Java SDK code snippet will be updated accordingly soon. You can temporarily pass the languages as shown in the code below. You must pass English and the relevant regional language. For example, if you are from Tamil Nadu, you must pass tam and eng as the languages. You can check the list of languages and language codes from the API documentation. Allowed file formats: _.webp_, _.jpeg_, _.png_, _.bmp_, _.tiff_, _.pdf_<br /> File size limit: 15 MB Note: The variables should be declared only in following order: aadhaarFront, aadhaarBack, languageCode The response contains the parameters recognized in the Aadhaar card such as the card holder's name, address, gender, Aadhaar card number assigned to respective keys. The response also shows a confidence score in the range of 0 to 1 for each of the recognized values. #### Sample Code Snippet <br> import com.zc.component.ml.ZCContent; import com.zc.component.ml.ZCLine; import com.zc.component.ml.ZCML; import com.zc.component.ml.ZCParagraph; import java.io.File; File aadhaarFront = new File("/Users/amelia-421/Desktop/myAadhaar1.webp"); //Specify the file path of the front side image of the Aadhaar card File aadhaarBack = new File("/Users/amelia-421/Desktop/myAadhaar2.webp"); //Specify the file path of the back side image of the Aadhaar card String languageCode = "eng,tam"; //Set the languages ZCContent ocrContent = ZCML.getInstance().getContentForAadhaar(aadhaarFront,aadhaarBack,languageCode); //Call getContent() with the file object to get the detected text in ZCContent object //To get individual paragraphs List paragraphs = ocrContent.getParagraphs(); for(ZCParagraph paragraph : paragraphs) { //To get individual lines in the paragraph List paraLines = paragraph.lines; for(ZCLine line : paraLines) { //To get individual words in the line String words = line.words; String text = line.text; //Raw line text } String text = paragraph.text; //Returns the raw paragraph text } String text = ocrContent.text; //Returns the raw image text -------------------------------------------------------------------------------- title: "PAN" description: "This page describes the method to use the PAN document processing feature in your Java application with sample code snippets" last_updated: "2026-09-02T11:24:40.577Z" source: "https://docs.catalyst.zoho.com/en/sdk/java/v1/zia-services/identity-scanner/pan/" service: "Zia Services" related: - PAN - API (/en/api/code-reference/zia-services/identity-scanner/pan/#PAN) -------------------------------------------------------------------------------- # Identity Scanner Identity Scanner is a Zia AI-driven component that enables you to perform secure identity checks on individuals and documents by scanning and processing various ID proofs or official documents. It is a comprehensive suite that incorporates multiple functionalities divided into two major categories- E-KYC and Document Processing. Note: Catalyst does not store any of the files you upload in its systems. The documents you upload are used for one-time processing only. They are not used for ML model training purposes either. Catalyst components are fully compliant with all applicable data protection and privacy laws. ## PAN The PAN model is a part of the Document Processing feature that enables you to process Indian PAN cards as identity proof documents. This enables you to extract fields of data from a PAN card using an advanced OCR technology, and return the parameters recognized from the PAN card in the response. Note: Document Processing is only relevant to Indian users and is only available in the IN DC. This feature will not be available to users accessing from the EU, AU, US, JP, SA or CA data centers. Users outside of India from the other DCs can access the general OCR component to read and process textual content. You must provide the path to the image file of the front side of the PAN card, as shown in the code below. Allowed file formats: _.webp_, _.jpeg_, _.png_<br /> File size limit: 15 MB You must specify the model type as PAN using ZCOCRModelType. The PAN model can only process text in English by default. No other languages are supported. The response will contain the parameters extracted from the PAN card such as their first name, last name, date of birth, and their PAN card number assigned to the respective keys. #### Sample Code Snippet <br> import java.sql.Date; import com.zc.component.ml.ZCContent; import com.zc.component.ml.ZCML; import com.zc.component.ml.ZCOCRModelType; import com.zc.component.ml.ZCOCROptions; import com.zc.component.ml.ZCPanData; import java.io.File; File file = new File("/Users/amelia-421/Desktop/pan.webp"); //Specify the file path ZCOCROptions options = ZCOCROptions.getInstance().setModelType(ZCOCRModelType.PAN); //Set the model type ZCContent ocrContent = ZCML.getInstance().getContent(file, options); //Call getContent() with the file object to get the detected text in ZCContent object ZCPanData panData = ocrContent.getPanData(); //This method obtains the PAN data //To fetch individual elements like the first name, last name, PAN details, and DOB from the processed image String firstName = panData.getFirstName(); String lastName = panData.getLastName(); String pan = panData.getPan(); Date dob = panData.getDob(); -------------------------------------------------------------------------------- title: "Passbook" description: "This page describes the method to use the PASSBOOK document processing feature in your Java application with sample code snippets" last_updated: "2026-09-02T11:24:40.578Z" source: "https://docs.catalyst.zoho.com/en/sdk/java/v1/zia-services/identity-scanner/passbook/" service: "Zia Services" related: - Passbook - API (/en/api/code-reference/zia-services/identity-scanner/passbook/#Passbook) -------------------------------------------------------------------------------- # Identity Scanner Identity Scanner is a Zia AI-driven component that enables you to perform secure identity checks on individuals and documents by scanning and processing various ID proofs or official documents. It is a comprehensive suite that incorporates multiple functionalities divided into two major categories- E-KYC and Document Processing. Note: Catalyst does not store any of the files you upload in its systems. The documents you upload are used for one-time processing only. They are not used for ML model training purposes either. Catalyst components are fully compliant with all applicable data protection and privacy laws. ## Passbook The PASSBOOK model is a part of the Document Processing feature that enables you to process Indian bank passbooks as financial or identity proof documents. This enables you to extract fields of data from a passbook using the OCR technology, and fetch the parameters from it in the response. Note: Document Processing is only relevant to Indian users and is only available in the IN DC. This feature will not be available to users accessing from the EU, AU, US, JP, SA or CA data centers. Users outside of India from the other DCs can access the general OCR component to read and process textual content. The Passbook model supports 11 Indian languages and an additional 8 International languages. You can check the list of languages and language codes from the API documentation. You must provide the path to the image of the front page of the passbook, as shown in the code below. Allowed file formats: _.webp_, _.jpeg_, _.png_, _.bmp_, _.tiff_, _.pdf_<br /> File size limit: 15 MB You must specify the model type as PASSBOOK using ZCOCRModelType. You can also optionally specify the language using setLanguageCode(). English will be considered as the default language, if it isn't specified. The response contains the bank details and account details recognized from the passbook such as the bank name, branch, address, account number. The extracted fields of information are assigned to their respective keys. The response also shows if RTGS, NEFT, and IMPS have been enabled for that account. Note: Identity Scanner will return the response only in English, irrespective of the languages present in the passbook. #### Sample Code Snippet <br> import com.zc.component.ml.ZCContent; import com.zc.component.ml.ZCLine; import com.zc.component.ml.ZCML; import com.zc.component.ml.ZCOCRModelType; import com.zc.component.ml.ZCOCROptions; import com.zc.component.ml.ZCParagraph; import java.io.File; File file = new File("/Users/amelia-421/Desktop/MyPassbook.webp"); //Specify the file path ZCOCROptions options = ZCOCROptions.getInstance().setModelType(ZCOCRModelType.PASSBOOK) .setLanguageCode("tam"); //Set the model type and language ZCContent ocrContent = ZCML.getInstance().getContent(file, options); //Call getContent() with the file object to get the detected text in ZCContent object //To get individual paragraphs List paragraphs = ocrContent.getParagraphs(); for(ZCParagraph paragraph : paragraphs) { //To get individual lines in the paragraph List paraLines = paragraph.lines; for(ZCLine line : paraLines) { //To get individual words in the line String words = line.words; String text = line.text; //Raw line text } String text = paragraph.text; //Returns the raw paragraph text } String text = ocrContent.text; //Returns the raw image text -------------------------------------------------------------------------------- title: "Cheque" description: "This page describes the method to use the Cheque document processing feature in your Java application with sample code snippets." last_updated: "2026-09-02T11:24:40.579Z" source: "https://docs.catalyst.zoho.com/en/sdk/java/v1/zia-services/identity-scanner/cheque/" service: "Zia Services" related: - Cheque - API (/en/api/code-reference/zia-services/identity-scanner/cheque/#Cheque) -------------------------------------------------------------------------------- # Identity Scanner Identity Scanner is a Zia AI-driven component that enables you to perform secure identity checks on individuals and documents by scanning and processing various ID proofs or official documents. It is a comprehensive suite that incorporates multiple functionalities divided into two major categories- E-KYC and Document Processing. Note: Catalyst does not store any of the files you upload in its systems. The documents you upload are used for one-time processing only. They are not used for ML model training purposes either. Catalyst components are fully compliant with all applicable data protection and privacy laws. ## Cheque The CHEQUE model is a part of the Document Processing feature that enables you to process Indian bank cheque leaves as identity proof documents. This enables you to extract fields of data from a cheque using an advanced OCR technology, and fetch the parameters recognized from the cheque through the response. Note: Document Processing is only relevant to Indian users and is only available in the IN DC. This feature will not be available to users accessing from the EU, AU, US, JP, SA or CA data centers. Users outside of India from the other DCs can access the general OCR component to read and process textual content. You must provide the path to the image file of the front page of the chequebook, as shown in the code below. The CHEQUE model can only process text in English by default. No other languages are supported. Allowed file formats: _.webp_, _.jpeg_, _.png_<br /> File size limit: 15 MB You must specify the model type as CHEQUE using setModelType(). Note: Zia only processes cheques of the CTS-2010 format. The response will contain the parameters extracted from the cheque, such as the amount, bank name, branch name, account number, IFSC code, assigned to the respective keys. #### Sample Code Snippet <br> import java.sql.Date; import com.zc.component.ml.ZCChequeData; import com.zc.component.ml.ZCContent; import com.zc.component.ml.ZCML; import com.zc.component.ml.ZCOCRModelType; import com.zc.component.ml.ZCOCROptions; import java.io.File; File file = new File("/Users/amelia-421/Desktop/cheque.webp"); //Specify the file path ZCOCROptions options = ZCOCROptions.getInstance().setModelType(ZCOCRModelType.CHEQUE); //Set the model type ZCContent ocrContent = ZCML.getInstance().getContent(file, options); //Call getContent() with the file object to get the detected text in ZCContent object ZCChequeData chequeData = ocrContent.getChequeData(); //This method obtains the cheque data //To fetch individual elements like the account number, IFSC code, bank name, branch, amount, and date of transaction from the processed image String accountNumber = chequeData.getAccountNumber(); String ifsc = chequeData.getIfsc(); String bankName = chequeData.getBankName(); String branchName = chequeData.getBranchName(); Long amount = chequeData.getAmount(); Date date = chequeData.getDate(); --- ## SDK — Modular JavaScript SDK — Identity Scanner -------------------------------------------------------------------------------- title: "Facial Comparison" description: "This page describes the method to perform operations using the components in Zia Services." last_updated: "2026-09-02T11:24:40.580Z" source: "https://docs.catalyst.zoho.com/en/sdk/javascript/v1/zia-services/identity-scanner/facial-comparisson/" service: "Zia Services" related: - Catalyst Zia Services (/en/zia-services/) - Java SDK Documentation (/en/sdk/java/v1/zia-services/identity-scanner/facial-comparison/) - NodeJS SDK Documentation (/en/sdk/nodejs/v2/zia-services/identity-scanner/facial-comparison/) - Python SDK Documentation (/en/sdk/python/v1/zia-services/identity-scanner/facial-comparison/) - REST API Documentation (/en/api/code-reference/zia-services/identity-scanner/facial-comparison/#FacialComparison) -------------------------------------------------------------------------------- # Facial Comparison Notes: * Ensure you have installed the required package to use this SDK method. * Catalyst does not store any of the files you upload in its systems. The documents you upload are used for one-time processing only. They are not used for ML model training purposes either. Catalyst components are fully compliant with all applicable data protection and privacy laws. * While the Document Processing feature of Identity Scanner is only relevant to Indian users, the Facial Comparison API and SDK tools are available to a global audience. However, accessing and testing Facial Comparison or E-KYC from the Catalyst console is restricted to the users from IN DC alone. Facial Comparison, also known as E-KYC, is a part of Identity Scanner that compares two faces in two different images to determine if they are the same individual. This will enable you to verify an individual’s identity from their ID proof by comparing it with an existing photo of theirs. For example, you can verify the authenticity of a photo ID, such as an individual’s Aadhaar card, by comparing it with their current photograph. Note: You can mark either the ID proof image or the individual's photograph as the source or the query image. This will not affect the results. You can perform a face comparison between a source image and a query image, by specifying the path to both the image files, as shown in the sample code. The compareFace() method processes both these images. **Allowed file formats**: .webp, .jpeg, .png **File size limit**: 10 MB The result of the comparison is set to true if the faces match, or false if they don’t match. The result also contains a confidence score between the range of 0 to 1, that determines the accuracy of the processing. Only if the comparison yields a confidence score of above 50% i.e., 0.5, the result will be set to true. The zia reference used in the code snippets below is the component instance created to perform these operations. The promise returned here is resolved to a JSON object. const fs = require('fs'); const sourceImage = fs.createReadStream('/Users/amelia-421/Desktop/source.webp'); // specify the file path const queryImage = fs.createReadStream('/Users/amelia-421/Desktop/query.webp'); // specify the file path const res = await zia.compareFace(sourceImage, queryImage); console.log(res); #### Example of Expected Response A sample response that you will receive is shown below. { "confidence": 0.9464, "matched": "true" } -------------------------------------------------------------------------------- title: "Aadhaar" description: "This page describes the method to perform operations using the components in Zia Services." last_updated: "2026-09-02T11:24:40.581Z" source: "https://docs.catalyst.zoho.com/en/sdk/javascript/v1/zia-services/identity-scanner/aadhaar/" service: "Zia Services" related: - Catalyst Zia Services (/en/zia-services/) - Java SDK Documentation (/en/sdk/java/v1/zia-services/identity-scanner/aadhaar/) - NodeJS SDK Documentation (/en/sdk/nodejs/v2/zia-services/identity-scanner/aadhaar/) - Python SDK Documentation (/en/sdk/python/v1/zia-services/identity-scanner/aadhaar/) - REST API Documentation (/en/api/code-reference/zia-services/identity-scanner/aadhaar/#Aadhaar) -------------------------------------------------------------------------------- # Aadhaar Notes: * Ensure you have installed the required package to use this SDK method. * Catalyst does not store any of the files you upload in its systems. The documents you upload are used for one-time processing only. They are not used for ML model training purposes either. Catalyst components are fully compliant with all applicable data protection and privacy laws. * Document Processing is only relevant to Indian users and is only available in the IN DC. This feature will not be available to users accessing from the EU, AU, US, JP, SA or CA data centers. Users outside of India from the other DCs can access the general OCR component to read and process textual content. * The option to pass the languages present in an Aadhaar card has now been deprecated. Identity Scanner will now automatically identify the languages in an Aadhaar card and process it. The AADHAAR model is a part of the Document Processing feature that enables you to process Indian Aadhaar cards as identity proof documents. This enables you to extract fields of data from an Indian Aadhaar card using an advanced OCR technology. The response will return the parameters recognized from the Aadhaar card, along with confidence scores for each recognition that determine their accuracy. You need to provide the path to the image files of the front and back of the Aadhaar card through createReadStream. You must pass English and the relevant regional language. For example, if you are from Tamil Nadu, you must pass tam and eng as the languages. **Allowed file formats**: .webp, .jpeg, .png, .bmp, .tiff, .pdf **File size limit**: 15 MB The zia reference used in the code snippets below is the component instance created to perform these operations. The promise returned here is resolved to a JSON object. const fs = require('fs'); const result = await zia.extractAadhaarCharacters( fs.createReadStream('./frontImg.webp'), fs.createReadStream('./backImg.webp'), 'eng,tam' ); console.log(result); #### Example of Expected Response A sample response that you will receive is shown below. The response contains the parameters recognized in the Aadhaar card such as the card holder’s name, address, gender, Aadhaar card number assigned to respective keys. The response also shows a confidence score in the range of 0 to 1 for each of the recognized values. { "text": { "address": { "prob": 0.5, "value": "C/O Rainbow, xxxx STREET, xxxx- 0000" }, "gender": { "prob": 0.8, "value": "MALE" }, "dob": { "prob": 0.8, "value": "08/09/2001" }, "name": { "prob": 0.6, "value": "Saeyon Dheeran" }, "aadhaar": { "prob": 0.8, "value": "4000 0000 0000" } } } -------------------------------------------------------------------------------- title: "PAN" description: "This page describes the method to perform operations using the components in Zia Services." last_updated: "2026-09-02T11:24:40.581Z" source: "https://docs.catalyst.zoho.com/en/sdk/javascript/v1/zia-services/identity-scanner/pan/" service: "Zia Services" related: - Catalyst Zia Services (/en/zia-services/) - Java SDK Documentation (/en/api/code-reference/zia-services/identity-scanner/pan/#PAN) - NodeJS SDK Documentation (/en/sdk/nodejs/v2/zia-services/identity-scanner/pan/) - Python SDK Documentation (/en/sdk/python/v1/zia-services/identity-scanner/pan/) - REST API Documentation (/en/api/code-reference/zia-services/identity-scanner/pan/#PAN) -------------------------------------------------------------------------------- # PAN Notes: * Ensure you have installed the required package to use this SDK method. * Catalyst does not store any of the files you upload in its systems. The documents you upload are used for one-time processing only. They are not used for ML model training purposes either. Catalyst components are fully compliant with all applicable data protection and privacy laws. * Document Processing is only relevant to Indian users and is only available in the IN DC. This feature will not be available to users accessing from the EU, AU, US, JP, SA or CA data centers. Users outside of India from the other DCs can access the general OCR component to read and process textual content. The PAN model is a part of the Document Processing feature that enables you to process Indian PAN cards as identity proof documents. This enables you to extract fields of data from a PAN card using an advanced OCR technology, and return the parameters recognized from the PAN card in the response. You must provide the path to the image file of the front side of the PAN card. You must specify the model type as PAN using modelType. The PAN model can only process text in English by default. No other languages are supported. **Allowed file formats**: .webp, .jpeg, .png **File size limit**: 15 MB The zia reference used in the code snippets below is the component instance created to perform these operations. The promise returned here is resolved to a JSON object. const fs = require('fs'); const result = await zia.extractOpticalCharacters(fs.createReadStream('/Users/amelia-421/Desktop/pan.webp'), {modelType: 'PAN'}); // Pass the input file with the model type console.log(result); #### Example of Expected Response A sample response that you will receive is shown below. The response will contain the parameters extracted from the PAN card such as their first name, last name, date of birth, and their PAN card number assigned to the respective keys. { "date_of_birth": "03/04/1982", "last_name": "Dheeran", "pan": "ANRPM2537J", "first_name": "Saeyon" } -------------------------------------------------------------------------------- title: "Passbook" description: "This page describes the method to perform operations using the components in Zia Services." last_updated: "2026-09-02T11:24:40.581Z" source: "https://docs.catalyst.zoho.com/en/sdk/javascript/v1/zia-services/identity-scanner/passbook/" service: "Zia Services" related: - Catalyst Zia Services (/en/zia-services/) - Java SDK Documentation (/en/sdk/java/v1/zia-services/identity-scanner/passbook/) - NodeJS SDK Documentation (/en/sdk/nodejs/v2/zia-services/identity-scanner/passbook/) - Python SDK Documentation (/en/sdk/python/v1/zia-services/identity-scanner/passbook/) - REST API Documentation (/en/api/code-reference/zia-services/identity-scanner/passbook/#Passbook) -------------------------------------------------------------------------------- # Passbook Notes: * Ensure you have installed the required package to use this SDK method. * Catalyst does not store any of the files you upload in its systems. The documents you upload are used for one-time processing only. They are not used for ML model training purposes either. Catalyst components are fully compliant with all applicable data protection and privacy laws. * Document Processing is only relevant to Indian users and is only available in the IN DC. This feature will not be available to users accessing from the EU, AU, US, JP, SA or CA data centers. Users outside of India from the other DCs can access the general OCR component to read and process textual content. The PASSBOOK model is a part of the Document Processing feature that enables you to process Indian bank passbooks as financial or identity proof documents. This enables you to extract fields of data from a passbook using the OCR technology, and fetch the parameters from it in the response. The Passbook model supports 11 Indian languages and an additional 8 International languages. You can check the list of languages and language codes from the API documentation. You must provide the path to the image of the front page of the passbook. You must specify the model type as PASSBOOK using the key modelType. Notes: * English will be considered as the default language, if it isn’t specified. * Identity Scanner will return the response only in English, irrespective of the languages present in the passbook. **Allowed file formats**: .webp, .jpeg, .png, .bmp, .tiff, .pdf **File size limit**: 15 MB The zia reference used in the code snippets below is the component instance created to perform these operations. The promise returned here is resolved to a JSON object. const fs = require('fs'); const result = await zia.extractOpticalCharacters(fs.createReadStream('/Users/amelia-421/Desktop/passbook.webp'), {language: 'tam', modelType: 'PASSBOOK'}); // Pass the input file with the model type and optional language console.log(result); #### Example of Expected Response A sample response that you will receive is shown below. The response contains the bank details and account details recognized from the passbook such as the bank name, branch, address, account number. The extracted fields of information are assigned to their respective keys. The response also shows if RTGS, NEFT, and IMPS have been enabled for that account. { "text": "{ \"address\": \"No.20,Gandhi Road,M.G Lane\", \"city\": \"Chennai\", \"centre\": \"Chennai\", \"bankName\": \"ABX BANK LIMITED\", \"accountNumber\": \"002001001625859\", \"branch\": \"Anna Nagar\", \"dateOfOpening\": \"30/08/2012\", \"imps\": \"true\", \"neft\": \"true\", \"district\": \"Chennai\", \"contact\": \"801234567\", \"micr\": \"641021121\", \"name\": \"2312312\", \"state\": \"Tamil Nadu\", \"rtgs\": \"true\", \"ifsc\": \"ABX0000311\" }" } -------------------------------------------------------------------------------- title: "Cheque" description: "This page describes the method to perform operations using the components in Zia Services." last_updated: "2026-09-02T11:24:40.581Z" source: "https://docs.catalyst.zoho.com/en/sdk/javascript/v1/zia-services/identity-scanner/cheque/" service: "Zia Services" related: - Catalyst Zia Services (/en/zia-services/) - Java SDK Documentation (/en/sdk/java/v1/zia-services/identity-scanner/cheque/) - NodeJS SDK Documentation (/en/sdk/nodejs/v2/zia-services/identity-scanner/cheque/) - Python SDK Documentation (/en/sdk/python/v1/zia-services/identity-scanner/cheque/) - REST API Documentation (/en/api/code-reference/zia-services/identity-scanner/cheque/#Cheque) -------------------------------------------------------------------------------- # Cheque Notes: * Ensure you have installed the required package to use this SDK method. * Catalyst does not store any of the files you upload in its systems. The documents you upload are used for one-time processing only. They are not used for ML model training purposes either. Catalyst components are fully compliant with all applicable data protection and privacy laws. * Document Processing is only relevant to Indian users and is only available in the IN DC. This feature will not be available to users accessing from the EU, AU, US, JP, SA or CA data centers. Users outside of India from the other DCs can access the general OCR component to read and process textual content. The CHEQUE model is a part of the Document Processing feature that enables you to process Indian bank cheque leaves as identity proof documents. This enables you to extract fields of data from a cheque using an advanced OCR technology, and fetch the parameters recognized from the cheque through the response. You must provide the path to the image file of the front page of the cheque book. Notes: * Zia only processes cheques of the CTS-2010 format. * The CHEQUE model can only process text in English by default. No other languages are supported. **Allowed file formats**: .webp, .jpeg, .png **File size limit**: 15 MB You must specify the model type as CHEQUE using modelType(). The zia reference used in the code snippets below is the component instance created to perform these operations. The promise returned here is resolved to a JSON object. const fs = require('fs'); const result = await zia.extractOpticalCharacters(fs.createReadStream('/Users/amelia-421/Desktop/cheque.webp'), {modelType: 'CHEQUE'}); //Pass the input file with the model type console.log(result); #### Example of Expected Response A sample response that you will receive is shown below. { "date": "15/11/2025", "account_number": "89323223232222", "amount": "10615", "branch_name": "TAMBARAM", "bank_name": "ABX BANK", "ifsc": "BB9033232" } --- ## SDK — Node JS — Identity Scanner -------------------------------------------------------------------------------- title: "Facial comparison" description: "This page describes the method to use facial comparison feature in your NodeJS application with sample code snippets." last_updated: "2026-09-02T11:24:40.583Z" source: "https://docs.catalyst.zoho.com/en/sdk/nodejs/v2/zia-services/identity-scanner/facial-comparison/" service: "Zia Services" related: - Facial comparison - API (/en/api/code-reference/zia-services/identity-scanner/facial-comparison/#FacialComparison) - Identity Scanner (/en/zia-services/help/identity-scanner/introduction) -------------------------------------------------------------------------------- # Identity Scanner Identity Scanner is a Zia AI-driven component that enables you to perform secure identity checks on individuals and documents by scanning and processing various ID proofs or official documents. It is a comprehensive suite that incorporates multiple functionalities divided into two major categories- E-KYC and Document Processing. Note: Catalyst does not store any of the files you upload in its systems. The documents you upload are used for one-time processing only. They are not used for ML model training purposes either. Catalyst components are fully compliant with all applicable data protection and privacy laws. ### Facial Comparison Facial Comparison, also known as E-KYC, is a part of Identity Scanner that Compares two faces in two different images to determine if they are the same individual. This will enable you to verify an individual's identity from their ID proof by comparing it with an existing photo of theirs. For example, you can verify the authenticity of a photo ID, such as an individual's Aadhaar card, by comparing it with their current photograph. Note: While the Document Processing feature of Identity Scanner is only relevant to Indian users, the Facial Comparison API and SDK tools are available to a global audience. However, accessing and testing Facial Comparison or E-KYC from the Catalyst console is restricted to the users from IN DC alone. You can perform a face comparison between a source image and a query image, by specifying the path to both the image files, as shown in the sample code. The compareFace() method processes both these images. The zia reference used here is defined in the component instance page. Note: You can mark either the ID proof image or the individual's photograph as the source or the query image. This will not affect the results. Allowed file formats: _.webp_, _.jpeg_, _.png_ File size limit: 10 MB The result of the comparison is set to true if the faces match, or false if they don't match. The result also contains a confidence score between the range of 0 to 1, that determines the accuracy of the processing. Only if the comparison yields a confidence score of above 50% i.e., 0.5, the result will be set to true. let fs = require('fs'); const zia = app.zia(); const sourceImage = fs.createReadStream('/Users/amelia-421/Desktop/source.webp'); //Specify the file path const queryImage = fs.createReadStream('/Users/amelia-421/Desktop/query.webp'); //Specify the file path zia.compareFace(sourceImage, queryImage) .then((res) => console.log(res)) .catch((err) => console.log('error: ', err)); //Push errors to Catalyst Logs A sample response that you will receive is shown below. The response is the same for both versions of Node.js. #### Node js { confidence: 0.9464, matched: "true" } -------------------------------------------------------------------------------- title: "Aadhaar" description: "This page describes the method to use the AADHAAR document processing feature in your Nodejs application with sample code snippets." last_updated: "2026-09-02T11:24:40.583Z" source: "https://docs.catalyst.zoho.com/en/sdk/nodejs/v2/zia-services/identity-scanner/aadhaar/" service: "Zia Services" related: - Identity Scanner (/en/zia-services/help/identity-scanner/introduction) - Aadhaar - API (/en/api/code-reference/zia-services/identity-scanner/aadhaar/#Aadhaar) -------------------------------------------------------------------------------- # Identity Scanner Identity Scanner is a Zia AI-driven component that enables you to perform secure identity checks on individuals and documents by scanning and processing various ID proofs or official documents. It is a comprehensive suite that incorporates multiple functionalities divided into two major categories- E-KYC and Document Processing. Note: Catalyst does not store any of the files you upload in its systems. The documents you upload are used for one-time processing only. They are not used for ML model training purposes either. Catalyst components are fully compliant with all applicable data protection and privacy laws. ### Aadhaar The AADHAAR model is a part of the Document Processing feature that enables you to process Indian Aadhaar cards as identity proof documents. This enables you to extract fields of data from an Indian Aadhaar card using an advanced OCR technology. The response will return the parameters recognized from the Aadhaar card, along with confidence scores for each recognition that determine their accuracy. Note:Document Processing is only relevant to Indian users and is only available in the IN DC. This feature will not be available to users accessing from the EU, AU, US, JP, SA or CA data centers. Users outside of India from the other DCs can access the general OCR component to read and process textual content. You must provide the path to the image files of the front and back of the Aadhaar card through createReadStream, as shown in the code below.The zia reference used below is defined in the component instance page. The promise returned here is resolved to a JSON object. Note: The option to pass the languages present in an Aadhaar card has now been deprecated. Identity Scanner will now automatically identify the languages in an Aadhaar card and process it. The Node.js SDK code snippet will be updated accordingly soon. You can temporarily pass the languages as shown in the code below. You must pass English and the relevant regional language. For example, if you are from Tamil Nadu, you must pass tam and eng as the languages. You can check the list of languages and language codes from the API documentation. Allowed file formats: _.webp_, _.jpeg_, _.png_, _.bmp_, _.tiff_, _.pdf_<br /> File size limit: 15 MB The response contains the parameters recognized in the Aadhaar card such as the card holder's name, address, gender, Aadhaar card number assigned to respective keys. The response also shows a confidence score in the range of 0 to 1 for each of the recognized values. let fs = require('fs'); var zia = app.zia(); zia.extractAadhaarCharacters(fs.createReadStream('./frontImg.webp'), fs.createReadStream('./backImg.webp'),'eng,tam') //Pass the input files with the languages .then((result) => { console.log(result); }) .catch((err) => console.log(err.toString())); }); //Push errors to Catalyst Logs A sample response that you will receive is shown below. The response is the same for both versions of Node.js. #### Nodejs { text: "{ "address":{ "prob":0.5,"value":"C/O Rainbow, xxxx STREET, xxxx- 0000" }, "gender":{ "prob":0.8,"value":"MALE" }, "dob":{ "prob":0.8, "value":"08/09/2001" }, "name":{ "prob":0.6, "value":"Ram Singh" }, "aadhaar":{ "prob":0.8, "value":"4000 0000 0000" } }" } -------------------------------------------------------------------------------- title: "PAN" description: "This page describes the method to use the PAN document processing feature in your NodeJS application with sample code snippets" last_updated: "2026-09-02T11:24:40.583Z" source: "https://docs.catalyst.zoho.com/en/sdk/nodejs/v2/zia-services/identity-scanner/pan/" service: "Zia Services" related: - Identity Scanner (/en/zia-services/help/identity-scanner/introduction) - PAN - API (/en/api/code-reference/zia-services/identity-scanner/pan/#PAN) -------------------------------------------------------------------------------- # Identity Scanner Identity Scanner is a Zia AI-driven component that enables you to perform secure identity checks on individuals and documents by scanning and processing various ID proofs or official documents. It is a comprehensive suite that incorporates multiple functionalities divided into two major categories- E-KYC and Document Processing. Note:Catalyst does not store any of the files you upload in its systems. The documents you upload are used for one-time processing only. They are not used for ML model training purposes either. Catalyst components are fully compliant with all applicable data protection and privacy laws. ### PAN The PAN model is a part of the Document Processing feature that enables you to process Indian PAN cards as identity proof documents. This enables you to extract fields of data from a PAN card using an advanced OCR technology, and return the parameters recognized from the PAN card in the response. Note:Document Processing is only relevant to Indian users and is only available in the IN DC. This feature will not be available to users accessing from the EU, AU, US, JP, SA or CA data centers. Users outside of India from the other DCs can access the general OCR component to read and process textual content. You must provide the path to the image file of the front side of the PAN card, as shown in the code below. The zia reference used below is defined in the component instance page. Allowed file formats: _.webp_, _.jpeg_, _.png_<br /> File size limit: 15 MB You must specify the model type as PAN using modelType. The PAN model can only process text in English by default. No other languages are supported. The response will contain the parameters extracted from the PAN card such as their first name, last name, date of birth, and their PAN card number assigned to the respective keys. let fs = require('fs'); const zia = app.zia(); zia.extractOpticalCharacters(fs.createReadStream('/Users/amelia-421/Desktop/pan.webp'), {modelType: 'PAN'}) //Pass the input file with the model type .then((result) => { console.log(result); }) .catch((err) => console.log(err.toString())); //Push errors to Catalyst Logs }); A sample response that you will receive is shown below. The response is the same for both versions of Node.js. #### Nodejs { date_of_birth: "03/04/1982", last_name: "VASUDEV MAHTO", pan: "ANRPM2537J", first_name: "PRAMOD KUMAR MAHTO" } -------------------------------------------------------------------------------- title: "Passbook" description: "This page describes the method to use the PASSBOOK document processing feature in your Java application with sample code snippets" last_updated: "2026-09-02T11:24:40.584Z" source: "https://docs.catalyst.zoho.com/en/sdk/nodejs/v2/zia-services/identity-scanner/passbook/" service: "Zia Services" related: - Identity Scanner (/en/zia-services/help/identity-scanner/introduction) - Passbook - API (/en/api/code-reference/zia-services/identity-scanner/passbook/#Passbook) -------------------------------------------------------------------------------- # Identity Scanner Identity Scanner is a Zia AI-driven component that enables you to perform secure identity checks on individuals and documents by scanning and processing various ID proofs or official documents. It is a comprehensive suite that incorporates multiple functionalities divided into two major categories- E-KYC and Document Processing. Note: Catalyst does not store any of the files you upload in its systems. The documents you upload are used for one-time processing only. They are not used for ML model training purposes either. Catalyst components are fully compliant with all applicable data protection and privacy laws. ### Passbook The PASSBOOK model is a part of the Document Processing feature that enables you to process Indian bank passbooks as financial or identity proof documents. This enables you to extract fields of data from a passbook using the OCR technology, and fetch the parameters from it in the response. Note: Document Processing is only relevant to Indian users and is only available in the IN DC. This feature will not be available to users accessing from the EU, AU, US, JP, SA or CA data centers. Users outside of India from the other DCs can access the general OCR component to read and process textual content. The Passbook model supports 11 Indian languages and an additional 8 International languages. You can check the list of languages and language codes from the API documentation. You must provide the path to the image of the front page of the passbook, as shown in the code below. Allowed file formats: _.webp_, _.jpeg_, _.png_, _.bmp_, _.tiff_, _.pdf_<br /> File size limit: 15 MB You must specify the model type as PASSBOOK using the key modelType. You can also optionally specify the language as shown in the code below. English will be considered as the default language, if it isn't specified. The response contains the bank details and account details recognized from the passbook such as the bank name, branch, address, account number. The extracted fields of information are assigned to their respective keys. The response also shows if RTGS, NEFT, and IMPS have been enabled for that account. Note: Identity Scanner will return the response only in English, irrespective of the languages present in the passbook. The zia reference used below is defined in the component instance page. let fs = require('fs'); var zia = app.zia(); zia.extractOpticalCharacters(fs.createReadStream('/Users/amelia-421/Desktop/passbook.webp'), {language: 'tam', modelType: 'PASSBOOK'}) //Pass the input file with the model type and the optional language .then((result) => { console.log(result); }) .catch((err) => console.log(err.toString())); //Push errors to Catalyst Logs }); A sample response that you will receive is shown below. The response is the same for both versions of Node.js. #### Node js { text: "{ "address":"No.20,Gandhi Road,M.G Lane", "city":"Chennai", "centre":"Chennai", "bankName":"ABX BANK LIMITED", "accountNumber":"002001001625859", "branch":"Anna Nagar", "dateOfOpening":"30/08/2012", "imps":"true", "neft":"true", "district":"Chennai", "contact":"801234567", "micr":"641021121", "name":" 2312312", "state":"Tamil Nadu", "rtgs":"true", "ifsc":"ABX0000311" }" } -------------------------------------------------------------------------------- title: "Cheque" description: "This page describes the method to use the Cheque document processing feature in your NodeJS application with sample code snippets." last_updated: "2026-09-02T11:24:40.584Z" source: "https://docs.catalyst.zoho.com/en/sdk/nodejs/v2/zia-services/identity-scanner/cheque/" service: "Zia Services" related: - Identity Scanner (/en/zia-services/help/identity-scanner/introduction) - Cheque - API (/en/api/code-reference/zia-services/identity-scanner/cheque/#Cheque) -------------------------------------------------------------------------------- # Identity Scanner Identity Scanner is a Zia AI-driven component that enables you to perform secure identity checks on individuals and documents by scanning and processing various ID proofs or official documents. It is a comprehensive suite that incorporates multiple functionalities divided into two major categories- E-KYC and Document Processing. Note: Catalyst does not store any of the files you upload in its systems. The documents you upload are used for one-time processing only. They are not used for ML model training purposes either. Catalyst components are fully compliant with all applicable data protection and privacy laws. ### Cheque The CHEQUE model is a part of the Document Processing feature that enables you to process Indian bank cheque leaves as identity proof documents. This enables you to extract fields of data from a cheque using an advanced OCR technology, and fetch the parameters recognized from the cheque through the response. Note: Document Processing is only relevant to Indian users and is only available in the IN DC. This feature will not be available to users accessing from the EU, AU, US, JP, SA or CA data centers. Users outside of India from the other DCs can access the general OCR component to read and process textual content. You must provide the path to the image file of the front page of the chequebook, as shown in the code below. The CHEQUE model can only process text in English by default. No other languages are supported. Allowed file formats: _.webp_, _.jpeg_, _.png_<br /> File size limit: 15 MB You must specify the model type as CHEQUE using modelType(). Note:Zia only processes cheques of the CTS-2010 format. The zia reference used below is defined in the component instance page. let fs = require('fs'); var zia = app.zia(); zia.extractOpticalCharacters(fs.createReadStream('/Users/amelia-421/Desktop/cheque.webp'), {modelType: 'CHEQUE'}) //Pass the input file with the model type .then((result) => { console.log(result); }) .catch((err) => console.log(err.toString())); //Push errors to Catalyst Logs }); A sample response that you will receive is shown below. The response is the same for both versions of Node.js. #### Nodejs { date: "15/11/2014", account_number: "89323223232222", amount: "10615", branch_name: "ANNA NAGAR", bank_name: "ABX BANK", ifsc: "BB9033232" } --- ## SDK — Python — Identity Scanner -------------------------------------------------------------------------------- title: "Facial Comparison" description: "This page describes the method to use facial comparison feature in your Python application with sample code snippets." last_updated: "2026-09-02T11:24:40.585Z" source: "https://docs.catalyst.zoho.com/en/sdk/python/v1/zia-services/identity-scanner/facial-comparison/" service: "Zia Services" related: - Facial Comparison - API (/en/api/code-reference/zia-services/identity-scanner/facial-comparison/#FacialComparison) - Facial Comparison Help (/en/zia-services/help/identity-scanner/key-concepts/#facial-comparison-process) - SDK Scopes (/en/sdk/python/v1/sdk-scopes) -------------------------------------------------------------------------------- # Identity Scanner Identity Scanner is a Zia AI-driven component that enables you to perform secure identity checks on individuals and documents by scanning and processing various ID proofs or official documents. It is a comprehensive suite that incorporates multiple functionalities divided into two major categories- E-KYC and Document Processing. Note: Catalyst does not store any of the files you upload in its systems. The documents you upload are only used for one-time processing. They are not used for ML model training purposes. Catalyst components are fully compliant with all applicable data protection and privacy laws. ### Facial Comparison Facial Comparison, also known as E-KYC, is a part of Identity Scanner that Compares two faces in two different images to determine if they are the same individual. This will enable you to verify an individual's identity from their ID proof by comparing it with an existing photo of theirs. For example, you can verify the authenticity of a photo ID, such as an individual's Aadhaar card, by comparing it with their current photograph. Note: While the Document Processing feature of Identity Scanner is only relevant to Indian users, the Facial Comparison API and SDK tools are available to a global audience. However, accessing and testing Facial Comparison or E-KYC from the Catalyst console is restricted to the users from IN DC alone. You can perform a face comparison between a source image and a query image, by specifying the path to both the image files, as shown in the sample code. The compare_face() method processes both these images. To know more about the component instance zia used below, please refer to this help section. Note: You can mark either the ID proof image or the individual's photograph as the source or the query image. This will not affect the results. Allowed file formats: _.webp_, _.jpeg_, _.png_ File size limit: 10 MB The result of the comparison is set to true if the faces match, or false if they don't match. The result also contains a confidence score between the range of 0 to 1, which determines the accuracy of the processing. Only if the comparison yields a confidence score of above 50% i.e., 0.5, the result will be set to true. **Parameters Used** <table class="content-table"> <thead> <tr> <th class="w20p">Parameter Name</th> <th class="w20p">Data Type</th> <th class="w60p">Definition</th> </tr> </thead> <tbody> <tr> <td>img</td> <td>Image</td> <td>A Mandatory parameter. Will store the first image file of the face.</td> </tr> <tr> <td>img2</td> <td>Image</td> <td>A Mandatory parameter. Will store the second image file of the face.</td> </tr> </tbody> </table> # Facial Comparison feature implementation zia = app.zia() img = open("sample1.webp", "rb") img2 = open("sample2.webp", "rb") result = zia.compare_face(img, img2) The sample response is shown below : { "confidence":0.9464, "matched":"true" } Info : Refer to the SDK Scopes table to determine the required permission level for performing the above operation. -------------------------------------------------------------------------------- title: "Aadhaar" description: "This page describes the method to use the AADHAAR document processing feature in your Python application with sample code snippets." last_updated: "2026-09-02T11:24:40.585Z" source: "https://docs.catalyst.zoho.com/en/sdk/python/v1/zia-services/identity-scanner/aadhaar/" service: "Zia Services" related: - Aadhaar - API (/en/api/code-reference/zia-services/identity-scanner/aadhaar/#Aadhaar) - Aadhaar Help (/en/zia-services/help/identity-scanner/key-concepts/#model-types) - SDK Scopes (/en/sdk/python/v1/sdk-scopes) -------------------------------------------------------------------------------- # Identity Scanner Identity Scanner is a Zia AI-driven component that enables you to perform secure identity checks on individuals and documents by scanning and processing various ID proofs or official documents. It is a comprehensive suite that incorporates multiple functionalities divided into two major categories- E-KYC and Document Processing. Note: Catalyst does not store any of the files you upload in its systems. The documents you upload are used for one-time processing only. They are not used for ML model training purposes either. Catalyst components are fully compliant with all applicable data protection and privacy laws. ## Aadhaar The AADHAAR model is a part of the Document Processing feature that enables you to process Indian Aadhaar cards as identity proof documents. This enables you to extract fields of data from an Indian Aadhaar card using an advanced OCR technology. The response will return the parameters recognized from the Aadhaar card, along with confidence scores for each recognition that determine their accuracy. Note:Document Processing is only relevant to Indian users and is only available in the IN DC. This feature will not be available to users accessing from the EU, AU, US, JP, SA or CA data centers. Users outside of India from the other DCs can access the general OCR component to read and process textual content. You must provide the path to the image files of the front and back of the Aadhaar card to the open() method, as shown in the code below. This opens both the files and returns the respective file objects as a response. To know more about the component instance zia used below, please refer to this help section. Identity Scanner will now automatically identify the languages in an Aadhaar card and process it. You can temporarily pass the languages as shown in the code below. You must pass English and the relevant regional language. For example, if you are from Tamil Nadu, you must pass tam and eng as the languages. You can check the list of languages and language codes from the API documentation. Allowed file formats: _.webp_, _.jpeg_, _.png_, _.bmp_, _.tiff_, _.pdf_<br /> File size limit: 15 MB The response contains the parameters recognized in the Aadhaar card such as the card holder's name, address, gender, Aadhaar card number assigned to respective keys. The response also shows a confidence score in the range of 0 to 1 for each of the recognized values. **Parameters Used** <table class="content-table"> <thead> <tr> <th class="w20p">Parameter Name</th> <th class="w20p">Data Type</th> <th class="w60p">Definition</th> </tr> </thead> <tbody> <tr> <td>aadhar_front</td> <td>Image</td> <td>A Mandatory parameter. Will store the front side Aadhaar image in less than 15 MB.</td> </tr> <tr> <td>aadhar_back</td> <td>Image</td> <td>A Mandatory parameter. Will store the back side Aadhaar image in less than 15 MB.</td> </tr> <tr> <td>language</td> <td>String</td> <td>A Mandatory parameter. Will store the language to be identified.</td> </tr> </tbody> </table> zia = app.zia() img = open("sample.webp", "rb") img2 = open("sample2.webp", "rb") result = zia.extract_aadhaar_characters(img, img2, language="eng,tam") A sample response is shown below : { "text":{ "address":{ "prob":0.5, "value":"C/O Rainbow, xxxx STREET, xxxx- 0000" }, "gender":{ "prob":0.8, "value":"MALE" }, "dob":{ "prob":0.8, "value":"08/09/2001" }, "name":{ "prob":0.6, "value":"Ram Singh" }, "aadhaar":{ "prob":0.8, "value":"4000 0000 0000" } } } Info : Refer to the SDK Scopes table to determine the required permission level for performing the above operation. -------------------------------------------------------------------------------- title: "PAN" description: "This page describes the method to use the PAN document processing feature in your Python application with sample code snippets" last_updated: "2026-09-02T11:24:40.586Z" source: "https://docs.catalyst.zoho.com/en/sdk/python/v1/zia-services/identity-scanner/pan/" service: "Zia Services" related: - PAN - API (/en/api/code-reference/zia-services/identity-scanner/pan/#PAN) - PAN Help (/en/zia-services/help/identity-scanner/key-concepts/#model-types) - SDK Scopes (/en/sdk/python/v1/sdk-scopes) -------------------------------------------------------------------------------- # Identity Scanner Identity Scanner is a Zia AI-driven component that enables you to perform secure identity checks on individuals and documents by scanning and processing various ID proofs or official documents. It is a comprehensive suite that incorporates multiple functionalities divided into two major categories- E-KYC and Document Processing. Note: Catalyst does not store any of the files you upload in its systems. The documents you upload are used for one-time processing only. They are not used for ML model training purposes either. Catalyst components are fully compliant with all applicable data protection and privacy laws. #### PAN The PAN model is a part of the Document Processing feature that enables you to process Indian PAN cards as identity proof documents. This enables you to extract fields of data from a PAN card using an advanced OCR technology, and return the parameters recognized from the PAN card in the response. Note:Document Processing is only relevant to Indian users and is only available in the IN DC. This feature will not be available to users accessing from the EU, AU, US, JP, SA or CA DCs. Users outside of India from the other DCs can access the general OCR component to read and process textual content. You must provide the path to the image file of the front side of the PAN card to the open() method, as shown in the code below. This method opens the file and returns the file object as a response. To know more about the component instance zia used below, please refer to this help section. Allowed file formats: _.webp_, _.jpeg_, _.png_<br /> File size limit: 15 MB You must specify the model type as PAN using modelType. The PAN model can only process text in English by default. No other languages are supported. The response will contain the parameters extracted from the PAN card such as their first name, last name, date of birth, and their PAN card number assigned to the respective keys. **Parameters Used** <table class="content-table"> <thead> <tr> <th class="w20p">Parameter Name</th> <th class="w20p">Data Type</th> <th class="w60p">Definition</th> </tr> </thead> <tbody> <tr> <td>img</td> <td>Image</td> <td>A Mandatory parameter. Will store the image file of the front side of the PAN card.</td> </tr> <tr> <td>modelType</td> <td>String</td> <td>A Mandatory parameter. Will store the default value as "PAN".</td> </tr> </tbody> </table> zia = app.zia() img = open("sample.webp", "rb") result = zia.extract_optical_characters(img, {"modelType": "PAN"}) The response is shown below : { "date_of_birth":"03/04/1982", "last_name":"VASUDEV MAHTO", "pan":"ANRPM2537J", "first_name":"PRAMOD KUMAR MAHTO" } Info : Refer to the SDK Scopes table to determine the required permission level for performing the above operation. -------------------------------------------------------------------------------- title: "Passbook" description: "This page describes the method to use the PASSBOOK document processing feature in your Python application with sample code snippets" last_updated: "2026-09-02T11:24:40.586Z" source: "https://docs.catalyst.zoho.com/en/sdk/python/v1/zia-services/identity-scanner/passbook/" service: "Zia Services" related: - Passbook - API (/en/api/code-reference/zia-services/identity-scanner/passbook/#Passbook) - Passbook Help (/en/zia-services/help/identity-scanner/key-concepts/#model-types) - SDK Scopes (/en/sdk/python/v1/sdk-scopes) -------------------------------------------------------------------------------- # Identity Scanner Identity Scanner is a Zia AI-driven component that enables you to perform secure identity checks on individuals and documents by scanning and processing various ID proofs or official documents. It is a comprehensive suite that incorporates multiple functionalities divided into two major categories- E-KYC and Document Processing. Note: Catalyst does not store any of the files you upload in its systems. The documents you upload are used for one-time processing only. They are not used for ML model training purposes either. Catalyst components are fully compliant with all applicable data protection and privacy laws. #### Passbook The PASSBOOK model is a part of the Document Processing feature that enables you to process Indian bank passbooks as financial or identity proof documents. This enables you to extract fields of data from a passbook using the OCR technology, and fetch the parameters from it in the response. Note: Document Processing is only relevant to Indian users and is only available in the IN DC. This feature will not be available to users accessing from the EU, AU, US, JP, SA or CA data centers. Users outside of India from the other DCs can access the general OCR component to read and process textual content. The Passbook model supports 11 Indian languages and an additional 8 International languages. You can check the list of languages and language codes from the API documentation. You must provide the path to the image of the front page of the passbook, as shown in the code below. Allowed file formats: _.webp_, _.jpeg_, _.png_, _.bmp_, _.tiff_, _.pdf_<br /> File size limit: 15 MB You must specify the model type as PASSBOOK using the key modelType. You can also optionally specify the language as shown in the code below. English will be considered as the default language, if it isn't specified. The response contains the bank details and account details recognized from the passbook such as the bank name, branch, address, account number. The extracted fields of information are assigned to their respective keys. The response also shows if RTGS, NEFT, and IMPS have been enabled for that account. Note: Identity Scanner will return the response only in English, irrespective of the languages present in the passbook. To know more about the component instance zia used below, please refer to this help section. **Parameters Used** <table class="content-table"> <thead> <tr> <th class="w20p">Parameter Name</th> <th class="w20p">Data Type</th> <th class="w60p">Definition</th> </tr> </thead> <tbody> <tr> <td>img</td> <td>Image</td> <td>A Mandatory parameter. Will store the language to be detected.</td> </tr> <tr> <td>modelType</td> <td>String</td> <td>A Mandatory parameter. Will store the default value as "PASSBOOK".</td> </tr> </tbody> </table> zia = app.zia() img = open("sample.webp", "rb") result = zia.extract_optical_characters( img, {"language": "tam", "modelType": "PASSBOOK"} ) A sample reference is shown below : { "text":{ "address":"No.20,Gandhi Road,M.G Lane", "city":"Chennai", "centre":"Chennai", "bankName":"ABX BANK LIMITED", "accountNumber":"002001001625859", "branch":"Anna Nagar", "dateOfOpening":"30/08/2012", "imps":"true", "neft":"true", "district":"Chennai", "contact":"801234567", "micr":"641021121", "name":" 2312312", "state":"Tamil Nadu", "rtgs":"true", "ifsc":"ABX0000311" } } Info : Refer to the SDK Scopes table to determine the required permission level for performing the above operation. -------------------------------------------------------------------------------- title: "Cheque" description: "This page describes the method to use the Cheque document processing feature in your Python application with sample code snippets." last_updated: "2026-09-02T11:24:40.586Z" source: "https://docs.catalyst.zoho.com/en/sdk/python/v1/zia-services/identity-scanner/cheque/" service: "Zia Services" related: - Cheque - API (/en/api/code-reference/zia-services/identity-scanner/cheque/#Cheque) - Cheque Help (/en/zia-services/help/identity-scanner/key-concepts/#model-types) - SDK Scopes (/en/sdk/python/v1/sdk-scopes) -------------------------------------------------------------------------------- # Identity Scanner Identity Scanner is a Zia AI-driven component that enables you to perform secure identity checks on individuals and documents by scanning and processing various ID proofs or official documents. It is a comprehensive suite that incorporates multiple functionalities divided into two major categories- E-KYC and Document Processing. Note: Catalyst does not store any of the files you upload in its systems. The documents you upload are used for one-time processing only. They are not used for ML model training purposes either. Catalyst components are fully compliant with all applicable data protection and privacy laws. #### Cheque The CHEQUE model is a part of the Document Processing feature that enables you to process Indian bank cheque leaves as identity proof documents. This enables you to extract fields of data from a cheque using an advanced OCR technology, and fetch the parameters recognized from the cheque through the response. Note: Document Processing is only relevant to Indian users and is only available in the IN DC. This feature will not be available to users accessing from the EU, AU, JP, SA, US, or CA DCs. Users outside of India from the other DCs can access the general OCR component to read and process textual content. You must provide the path to the image file of the front page of the chequebook to the open() method, as shown in the code below. This method returns the file object as a response. The CHEQUE model can only process text in English by default. No other languages are supported. Allowed file formats: _.webp_, _.jpeg_, _.png_<br /> File size limit: 15 MB You must specify the model type as CHEQUE using modelType(). Note:Zia only processes cheques of the CTS-2010 format. To know more about the component instance zia used below, please refer to this help section. **Parameters Used** <table class="content-table"> <thead> <tr> <th class="w20p">Parameter Name</th> <th class="w20p">Data Type</th> <th class="w60p">Definition</th> </tr> </thead> <tbody> <tr> <td>img</td> <td>Image</td> <td>A Mandatory parameter. Will store the image file of the front page of the chequebook.</td> </tr> <tr> <td>modelType</td> <td>String</td> <td>A Mandatory parameter. Will store the default value as "CHEQUE".</td> </tr> </tbody> </table> zia = app.zia() img = open('sample.webp', 'rb') result = zia.extract_optical_characters(img, {'modelType': 'CHEQUE'}) A sample response is shown below : { "date":"15/11/2014", "account_number":"89323223232222", "amount":"10615", "branch_name":"ANNA NAGAR", "bank_name":"ABX BANK", "ifsc":"BB9033232" } Info : Refer to the SDK Scopes table to determine the required permission level for performing the above operation.