# 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-03-18T07:41:08.699Z" 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%}}{{%bold%}}Note:{{%/bold%}} 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.{{%/note%}} 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: * {{%bold%}}E-KYC:{{%/bold%}} 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. * {{%bold%}}Document Processing:{{%/bold%}} 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 {{%bold%}}Java{{%/bold%}}, {{%bold%}}Node.js{{%/bold%}} and {{%bold%}}Python{{%/bold%}} 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 {{%link href="/en/sdk/java/v1/zia-services/identity-scanner/facial-comparison" %}}Java SDK documentation{{%/link%}}, {{%link href="/en/sdk/nodejs/v2/zia-services/identity-scanner/facial-comparison" %}}Node.js SDK documentation{{%/link%}} and {{%link href="/en/sdk/python/v1/zia-services/identity-scanner/facial-comparison" %}}Python SDK documentation{{%/link%}} for code samples of Identity Scanner in those environments. Refer to the {{%link href="/en/api/code-reference/zia-services/identity-scanner/facial-comparison/#FacialComparison" %}}API documentation{{%/link%}} to learn about the APIs available for Identity Scanner. You can learn more about the other components of Catalyst Zia Services from {{%link href="/en/zia-services" %}}this page{{%/link%}}. {{%note%}}{{%bold%}}Note:{{%/bold%}} * Document Processing is only relevant to Indian users and is {{%bold%}}only available in the IN DC{{%/bold%}} (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 {{%link href="/en/zia-services/help/optical-character-recognition/introduction" %}}general OCR component{{%/link%}} 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 {{%badge%}}AADHAAR{{%/badge%}}, {{%badge%}}PASSBOOK{{%/badge%}}, {{%badge%}}PAN{{%/badge%}}, {{%badge%}}CHEQUE{{%/badge%}} 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 {{%link href="/en/zia-services/help/face-analytics/introduction" %}}Face Analytics help page{{%/link%}} to learn more. {{%/note%}} -------------------------------------------------------------------------------- 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-03-18T07:41:08.700Z" 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 {{%bold%}}source image{{%/bold%}} and the {{%bold%}}query image{{%/bold%}}. 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%}}{{%bold%}}Note:{{%/bold%}} * 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. {{%/note%}} ### 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 {{%link href="/en/zia-services/help/identity-scanner/key-concepts#response-format"%}}confidence score{{%/link%}} 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: * {{%bold%}}Using the SDKs and APIs:{{%/bold%}}<br /><br /> {{%bold%}}JSON response:{{%/bold%}} 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 {{%badge%}}true{{%/badge%}} if the faces match, or {{%badge%}}false{{%/badge%}} 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 {{%badge%}}true{{%/badge%}}. For more information, refer to the {{%link href="/en/sdk/java/v1/zia-services/identity-scanner/facial-comparison" %}}Java{{%/link%}}, {{%link href="/en/sdk/nodejs/v2/zia-services/identity-scanner/facial-comparison" %}}Node.js{{%/link%}} and {{%link href="/en/sdk/python/v1/zia-services/identity-scanner/facial-comparison" %}}Python{{%/link%}} SDK, and the {{%link href="/en/api/code-reference/zia-services/identity-scanner/facial-comparison/#FacialComparison" %}}API documentation{{%/link%}}. * {{%bold%}}In the console:{{%/bold%}}<br /><br /> When you upload images or files to test in the console, it will return the response in two formats:<br /> * {{%bold%}}Simplified response:{{%/bold%}} 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. * {{%bold%}}JSON response:{{%/bold%}} 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 {{%badge%}}PASSBOOK{{%/badge%}} model. When the language is already specified, this processing is performed more quickly. You can learn about the supported languages in the {{%link href=""%}}next section{{%/link%}}. 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: * {{%bold%}}{{%badge%}}AADHAAR{{%/badge%}}:{{%/bold%}} 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. * {{%bold%}}{{%badge%}}PAN{{%/badge%}}:{{%/bold%}} 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. * {{%bold%}}{{%badge%}}PASSBOOK{{%/badge%}}:{{%/bold%}} 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. * {{%bold%}}{{%badge%}}CHEQUE{{%/badge%}}:{{%/bold%}} 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 {{%link href="/en/sdk/java/v1/zia-services/identity-scanner/facial-comparison" %}}Java{{%/link%}}, {{%link href="/en/sdk/nodejs/v2/zia-services/identity-scanner/facial-comparison" %}}Node.js{{%/link%}} or {{%link href="/en/sdk/python/v1/zia-services/identity-scanner/facial-comparison" %}}Python{{%/link%}} SDK code , or when working with the {{%link href="/en/api/code-reference/zia-services/ocr/#OCR" %}}APIs{{%/link%}}. {{%note%}}{{%bold%}}Note:{{%/bold%}} You must submit the exact documents for each of the document models to ensure accurate information recognition and extraction for that format. {{%/note%}} ### Supported Languages {{%note%}}{{%bold%}}Note:{{%/bold%}} 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.{{%/note%}} {{%bold%}}PASSBOOK{{%/bold%}} The {{%badge%}}PASSBOOK{{%/badge%}} 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 {{%bold%}}AADHAAR{{%/bold%}} The {{%badge%}}AADHAAR{{%/badge%}} 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%}}{{%bold%}}Note:{{%/bold%}} 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 {{%bold%}}deprecated{{%/bold%}}. 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.{{%/note%}} {{%bold%}}CHEQUE and PAN{{%/bold%}} The {{%badge%}}CHEQUE{{%/badge%}} and {{%badge%}}PAN{{%/badge%}} 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 {{%badge%}}PASSBOOK{{%/badge%}} 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 {{%badge%}}CHEQUE{{%/badge%}} or the {{%badge%}}PAN{{%/badge%}} models, as English is the only supported language for these types. You will not be able to select the languages for the {{%badge%}}AADHAAR{{%/badge%}} 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: * {{%bold%}}Using the SDKs and APIs:{{%/bold%}}<br /> {{%bold%}}JSON response:{{%/bold%}} The default JSON response will include the status message and the data for the respective operation, as specified in the {{%link href="/en/zia-services/help/identity-scanner/key-concepts#model-types"%}}Model Types{{%/link%}} section. You can format the text you receive in the response for the document processing in your code. For more information, refer to the {{%link href="/en/sdk/java/v1/zia-services/identity-scanner/facial-comparison" %}}Java{{%/link%}}, {{%link href="/en/sdk/nodejs/v2/zia-services/identity-scanner/facial-comparison" %}}Node.js{{%/link%}} and {{%link href="/en/sdk/python/v1/zia-services/identity-scanner/facial-comparison" %}}Python{{%/link%}} SDK documentation. * {{%bold%}}In the console:{{%/bold%}}<br /> When you upload images or files to test in the console, it will return the response in two formats:<br /> * {{%bold%}}Simplified response:{{%/bold%}} The simplified textual response will list the parameters extracted from the identity proof in a readable format. * {{%bold%}}JSON response:{{%/bold%}} 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-03-18T07:41:08.700Z" source: "https://docs.catalyst.zoho.com/en/zia-services/help/identity-scanner/benefits/" service: "Zia Services" -------------------------------------------------------------------------------- # Benefits 1. {{%bold%}}Seamless Integration of Identity Verification Feature{{%/bold%}}<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. {{%bold%}}Multiple Language Support{{%/bold%}}<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. {{%bold%}}Accurate Results through Advanced Training {{%/bold%}}<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. {{%bold%}}Instantaneous Response{{%/bold%}}<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. {{%bold%}}Testing in the Console{{%/bold%}}<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-03-18T07:41:08.701Z" 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-03-18T07:41:08.701Z" 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 {{%link href="/en/sdk/java/v1/zia-services/identity-scanner/facial-comparison" %}}SDK{{%/link%}} and {{%link href="/en/api/code-reference/zia-services/identity-scanner/facial-comparison" %}}API{{%/link%}} documentation sections for implementing the feature in your application. ### Access Identity Scanner To access Identity Scanner in your Catalyst console: 1. Navigate to {{%bold%}}Zia Services{{%/bold%}} in the left pane of the Catalyst console and click {{%bold%}}Identity Scanner.{{%/bold%}}<br /> 2. Click {{%bold%}}Try a Demo{{%/bold%}} 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%}}{{%bold%}}Note:{{%/bold%}} Refer to the {{%link href="/en/zia-services/help/identity-scanner/key-concepts/#request-format" %}}E-KYC Request Format{{%/link%}} or {{%link href="/en/zia-services/help/identity-scanner/key-concepts/#request-format-1" %}}Document Processing Request Format{{%/link%}} sections for the input formats.{{%/note%}} #### E-KYC To process sample files or files of your own and test {{%link href="/en/zia-services/help/identity-scanner/key-concepts/#e-kyc" %}}E-KYC{{%/link%}}: 1. Click {{%bold%}}Select a Sample Image{{%/bold%}} or {{%bold%}}Browse Files{{%/bold%}} 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 {{%bold%}}Select a Sample Image{{%/bold%}} or {{%bold%}}Browse Files{{%/bold%}} 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 {{%link href="/en/zia-services/help/identity-scanner/key-concepts/#response-format" %}}E-KYC Response Format section{{%/link%}}. You can view the default JSON response that is fetched, by clicking {{%bold%}}View Response{{%/bold%}}. #### Aadhaar Card You can process a sample Aadhaar card or a card of your own and test the {{%link href="/en/zia-services/help/identity-scanner/key-concepts/#model-types" %}}AADHAAR model{{%/link%}} as follows: 1. Navigate to the _Aadhaar Card_ section. 2. Click {{%bold%}}Select a Sample Image{{%/bold%}} or {{%bold%}}Browse Files{{%/bold%}} 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%}}{{%bold%}}Note:{{%/bold%}} Refer to the {{%link href="/en/zia-services/help/identity-scanner/key-concepts/#request-format-1" %}}Document Processing Request Format section{{%/link%}} for the input file format.{{%/note%}} 4. Click {{%bold%}}Select a Sample Image{{%/bold%}} or {{%bold%}}Browse Files{{%/bold%}} 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 {{%bold%}}Get Result{{%/bold%}}. {{%note%}}{{%bold%}}Note:{{%/bold%}} 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.{{%/note%}} 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 {{%link href="/en/zia-services/help/identity-scanner/key-concepts/#response-format-1" %}}Document Processing Response Format section{{%/link%}}. You can view the default JSON response that is fetched, by clicking {{%bold%}}View Response{{%/bold%}}. #### PAN Card You can process a sample PAN card or a card of your own and test the {{%link href="/en/zia-services/help/identity-scanner/key-concepts/#model-types" %}}PAN model{{%/link%}} as follows: 1. Navigate to the _PAN Card_ section. 2. Click {{%bold%}}Select a Sample Image{{%/bold%}} or {{%bold%}}Browse Files{{%/bold%}} 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%}}{{%bold%}}Note:{{%/bold%}} Refer to the {{%link href="/en/zia-services/help/identity-scanner/key-concepts/#request-format-1" %}}Document Processing Request Format section{{%/link%}} for the input file format.{{%/note%}} 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 {{%link href="/en/zia-services/help/identity-scanner/key-concepts/#response-format-1" %}}Document Processing Response Format section{{%/link%}}. You can view the default JSON response that is fetched, by clicking {{%bold%}}View Response{{%/bold%}}. #### Passbook You can process a sample bank passbook or a passbook of your own and test the {{%link href="/en/zia-services/help/identity-scanner/key-concepts/#model-types" %}}PASSBOOK model{{%/link%}} as follows: 1. Navigate to the _Passbook_ section. 2. Click {{%bold%}}Select a Sample Image{{%/bold%}} or {{%bold%}}Browse Files{{%/bold%}} 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%}}{{%bold%}}Note:{{%/bold%}} Refer to the {{%link href="/en/zia-services/help/identity-scanner/key-concepts/#request-format-1" %}}Document Processing Request Format section{{%/link%}} for the input file format.{{%/note%}} 4. Select the languages present in the passbook from the drop-down for quicker and more efficient processing, then click {{%bold%}}Get Result{{%/bold%}}.<br /> {{%note%}}{{%bold%}}Note:{{%/bold%}} Refer to the {{%link href="/en/zia-services/help/identity-scanner/key-concepts/#supported-languages" %}}Supported Languages section{{%/link%}} for a list of languages supported by the {{%badge%}}PASSBOOK{{%/badge%}} model.{{%/note%}} 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 {{%link href="/en/zia-services/help/identity-scanner/key-concepts/#response-format-1" %}}Document Processing Response Format section{{%/link%}}. You can view the default JSON response that is fetched, by clicking {{%bold%}}View Response{{%/bold%}}. #### Cheque You can process a sample cheque leaf or a cheque of your own and test the {{%link href="/en/zia-services/help/identity-scanner/key-concepts/#model-types" %}}CHEQUE model{{%/link%}} as follows: 1. Navigate to the _Cheque_ section. 2. Click {{%bold%}}Select a Sample Image{{%/bold%}} or {{%bold%}}Browse Files{{%/bold%}} 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%}}{{%bold%}}Note:{{%/bold%}} Refer to the {{%link href="/en/zia-services/help/identity-scanner/key-concepts/#request-format-1" %}}Document Processing Request Format section{{%/link%}} for the input file format.{{%/note%}} 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 {{%link href="/en/zia-services/help/identity-scanner/key-concepts/#response-format-1" %}}Document Processing Response Format section{{%/link%}}. You can view the default JSON response that is fetched, by clicking {{%bold%}}View Response{{%/bold%}}. ### 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%}}{{%bold%}}Note:{{%/bold%}} 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 {{%badge%}}AADHAAR{{%/badge%}} model. Similarly, if you click the Passbook tab and scroll down, you will find the code templates for the {{%badge%}}PASSBOOK{{%/badge%}} model. Ensure that you are copying the right code for the feature you require.{{%/note%}} Click the {{%bold%}}Java SDK{{%/bold%}}, {{%bold%}}NodeJS SDK{{%/bold%}} or {{%bold%}}Python SDK{{%/bold%}} 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%}}{{%bold%}}Note:{{%/bold%}} Refer to the {{%link href="/en/sdk/java/v1/zia-services/identity-scanner/facial-comparison" %}}Java SDK{{%/link%}}, {{%link href="/en/sdk/nodejs/v2/zia-services/identity-scanner/facial-comparison" %}}Node.js{{%/link%}} and {{%link href="/en/sdk/python/v1/zia-services/identity-scanner/facial-comparison" %}}Python{{%/link%}} SDK help pages for an explanation of the code templates of each feature.{{%/note%}} --- ## API Reference — Identity Scanner -------------------------------------------------------------------------------- title: "Facial Comparison" description: "This API enables you to compares two faces in two different images to determine if they are the same individual." last_updated: "2026-03-18T07:41:08.708Z" source: "https://docs.catalyst.zoho.com/en/api/code-reference/zia-services/identity-scanner/facial-comparison/" service: "Zia Services" -------------------------------------------------------------------------------- {{% section path="/en/api/code-reference/zia-services/identity-scanner/facial-comparison/" id="FacialComparison" %}} {{%divtag class="LeftContent"%}} # Identity Scanner {{%link href="/en/zia-services/help/identity-scanner/introduction/"%}}Identity Scanner{{%/link%}} 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%}}{{%bold class="bold-primary"%}}Note:{{%/bold%}} 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.{{%/note%}} # Facial Comparison {{%link href="/en/zia-services/help/identity-scanner/key-concepts/#e-kyc"%}}Facial Comparison{{%/link%}}, 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%}}{{%bold class="bold-primary"%}}Note:{{%/bold%}} 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.{{%/note%}} ## 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%}}{{%bold class="bold-primary"%}}Note:{{%/bold%}} 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.{{%/note%}} ### Request Details #### Request URL {{%request class="apiyellow" req="POST" %}}<p>{api-domain}/baas/v1/project/{project_id}/ml/facecomparison</p>{{%/request%}} {{%request_id id="api-domain" data="URL" %}}The DC-specific domain to access Catalyst API{{%/request_id%}} {{%request_id id="project_id" data="Numerical" %}}The {{%link href="/en/getting-started/set-up-a-catalyst-project/general-settings/"%}}unique ID{{%/link%}} of the project{{%/request_id%}} #### Request Headers {{%scope%}} **Authorization:** Zoho-oauthtoken {oauth_token} <br> **content-type:** multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW {{%/scope%}} **Optional Headers** <br> {{%scope%}} **CATALYST-ORG:** {org_id} {{%/scope%}} {{%scope%}} **Environment:** Development {{%/scope%}} #### Scope {{%scope%}} ZohoCatalyst.mlkit.READ {{%/scope%}} #### Request JSON Properties {{% nested_fields children="open" border="yes" expandable="no" title="source_image" textformat="file" condition="mandatory" maxlength=" " %}} 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 {{% /nested_fields %}} {{% nested_fields children="open" border="yes" expandable="no" title="query_image" textformat="file" condition="mandatory" maxlength=" " %}} 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 {{% /nested_fields %}} ### Response Details The response returns the result of comparison as {{%badge%}}true{{%/badge%}} if the faces match, or {{%badge%}}false{{%/badge%}} 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 {{%badge%}}true{{%/badge%}}. {{%/divtag%}} {{%divtag class="RightContent"%}} {{% panel_without_adjustment header="Sample Request" class="language-bash" %}}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 {{% /panel_without_adjustment %}} {{% panel_without_adjustment header="Sample Response" class="language-json line-numbers"%}} { "status": "success", "data": { "confidence": 1.0, "matched": "true" } }{{% /panel_without_adjustment %}} {{% expand-container %}} {{% expand id="sdk_docs" header="SDK Documentation"%}} {{%link href="/en/sdk/java/v1/zia-services/identity-scanner/facial-comparison"%}}Facial Comparison- Java SDK{{%/link%}}<br><br> {{%link href="/en/sdk/nodejs/v2/zia-services/identity-scanner/facial-comparison"%}}Facial Comparison- Node.js SDK{{%/link%}}<br><br> {{%link href="/en/sdk/python/v1/zia-services/identity-scanner/facial-comparison"%}}Facial Comparison- Python SDK{{%/link%}} {{%/expand%}} {{%/expand-container%}} {{%/divtag%}} {{%/section%}} -------------------------------------------------------------------------------- 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-03-18T07:41:08.708Z" source: "https://docs.catalyst.zoho.com/en/api/code-reference/zia-services/identity-scanner/aadhaar/" service: "Zia Services" -------------------------------------------------------------------------------- {{% section path="/en/api/code-reference/zia-services/identity-scanner/aadhaar/" id="Aadhaar" %}} {{%divtag class="LeftContent"%}} # Aadhaar The {{%badge%}}AADHAAR{{%/badge%}} model is a part of the Document Processing feature of {{%link href="/en/zia-services/help/identity-scanner/introduction/"%}}Identity Scanner{{%/link%}} that enables you to process Indian Aadhaar cards as identity proof documents. {{%note%}}{{%bold class="bold-primary"%}}Note:{{%/bold%}} <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 {{%link href="/en/api/code-reference/zia-services/identity-scanner/aadhaar/#OCR"%}}general OCR component{{%/link%}} to read and process textual content.{{%/note%}} ## 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 {{%badge%}}AADHAAR{{%/badge%}} in the API request. {{%note%}}{{%bold class="bold-primary"%}}Note:{{%/bold%}} 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.{{%/note%}} ### Request Details #### Request URL {{%request class="apiyellow" req="POST" %}}<p>{api-domain}/baas/v1/project/{project_id}/ml/ocr</p>{{%/request%}} {{%request_id id="api-domain" data="URL" %}}The DC-specific domain to access Catalyst API{{%/request_id%}} {{%request_id id="project_id" data="Numerical" %}}The {{%link href="/en/getting-started/set-up-a-catalyst-project/general-settings/"%}}unique ID{{%/link%}} of the project{{%/request_id%}} #### Request Headers {{%scope%}} **Authorization:** Zoho-oauthtoken {oauth_token} <br> **content-type:** multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW {{%/scope%}} **Optional Headers** <br> {{%scope%}} **CATALYST-ORG:** {org_id} {{%/scope%}} {{%scope%}} **Environment:** Development {{%/scope%}} #### Scope {{%scope%}} ZohoCatalyst.mlkit.READ {{%/scope%}} #### Request JSON Properties {{% nested_fields children="open" border="yes" expandable="no" title="aadhaar_front" textformat="file" condition="mandatory" maxlength=" " %}} 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 {{% /nested_fields %}} {{% nested_fields children="open" border="yes" expandable="no" title="aadhaar_back" textformat="file" condition="mandatory" maxlength=" " %}} 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 {{% /nested_fields %}} {{% nested_fields children="open" border="yes" expandable="no" title="model_type" textformat="string" condition="mandatory" maxlength=" " %}} The model type of the image Value to be passed: {{%badge%}}AADHAAR{{%/badge%}} {{% /nested_fields %}} {{% nested_fields children="open" border="yes" expandable="no" title="language" textformat="string" condition="optional" maxlength=" " %}} The language code of the language to be identified. The {{%badge%}}AADHAAR{{%/badge%}} 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 {{%badge%}}tam{{%/badge%}} and {{%badge%}}eng{{%/badge%}} in the request. {{% /nested_fields %}} #### 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>{{%badge%}}eng{{%/badge%}}</td> </tr> <tr> <td>Hindi</td> <td>{{%badge%}}hin{{%/badge%}}</td> </tr> <tr> <td>Bengali</td> <td>{{%badge%}}ben{{%/badge%}}</td> </tr> <tr> <td>Marathi</td> <td>{{%badge%}}mar{{%/badge%}}</td> </tr> <tr> <td>Telugu</td> <td>{{%badge%}}tel{{%/badge%}}</td> </tr> <tr> <td>Tamil</td> <td>{{%badge%}}tam{{%/badge%}}</td> </tr> <tr> <td>Gujarati</td> <td>{{%badge%}}guj{{%/badge%}}</td> </tr> <tr> <td>Urdu</td> <td>{{%badge%}}urd{{%/badge%}}</td> </tr> <tr> <td>Kannada</td> <td>{{%badge%}}kan{{%/badge%}}</td> </tr> <tr> <td>Malayalam</td> <td>{{%badge%}}mal{{%/badge%}}</td> </tr> <tr> <td>Sanskrit</td> <td>{{%badge%}}san{{%/badge%}}</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. {{%/divtag%}} {{%divtag class="RightContent"%}} {{% panel_without_adjustment header="Sample Request" class="language-bash" %}}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" {{% /panel_without_adjustment %}} {{% panel_without_adjustment header="Sample Response" class="language-json line-numbers"%}} { "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\"}}" } }{{% /panel_without_adjustment %}} {{% expand-container %}} {{% expand id="sdk_docs" header="SDK Documentation"%}} {{%link href="/en/sdk/java/v1/zia-services/identity-scanner/aadhaar"%}}Identity Scanner: Aadhaar- Java SDK{{%/link%}}<br><br> {{%link href="/en/sdk/nodejs/v2/zia-services/identity-scanner/aadhaar"%}}Identity Scanner: Aadhaar- Node.js SDK{{%/link%}}<br><br> {{%link href="/en/sdk/python/v1/zia-services/identity-scanner/aadhaar"%}}Identity Scanner: Aadhaar- Python SDK{{%/link%}}<br><br> {{%/expand%}} {{%/expand-container%}} {{%/divtag%}} {{%/section%}} -------------------------------------------------------------------------------- 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-03-18T07:41:08.712Z" source: "https://docs.catalyst.zoho.com/en/api/code-reference/zia-services/identity-scanner/pan/" service: "Zia Services" -------------------------------------------------------------------------------- {{% section path="/en/api/code-reference/zia-services/identity-scanner/pan/" id="PAN" %}} {{%divtag class="LeftContent"%}} # PAN The {{%badge%}}PAN{{%/badge%}} model is a part of the Document Processing feature of {{%link href="/en/zia-services/help/identity-scanner/introduction/"%}}Identity Scanner{{%/link%}} that enables you to process Indian PAN cards as identity proof documents. {{%note%}}{{%bold class="bold-primary"%}}Note:{{%/bold%}} <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 {{%link href="/en/api/code-reference/zia-services/identity-scanner/pan/#OCR"%}}general OCR component{{%/link%}} to read and process textual content.{{%/note%}} ## 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 {{%badge%}}PAN{{%/badge%}}, to process the PAN card. The {{%badge%}}PAN{{%/badge%}} model can only process text in English by default. ### Request Details #### Request URL {{%request class="apiyellow" req="POST" %}}<p>{api-domain}/baas/v1/project/{project_id}/ml/ocr</p>{{%/request%}} {{%request_id id="api-domain" data="URL" %}}The DC-specific domain to access Catalyst API{{%/request_id%}} {{%request_id id="project_id" data="Numerical" %}}The {{%link href="/en/getting-started/set-up-a-catalyst-project/general-settings/"%}}unique ID{{%/link%}} of the project{{%/request_id%}} #### Request Headers {{%scope%}} **Authorization:** Zoho-oauthtoken {oauth_token} <br> **content-type:** multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW {{%/scope%}} **Optional Headers** <br> {{%scope%}} **CATALYST-ORG:** {org_id} {{%/scope%}} {{%scope%}} **Environment:** Development {{%/scope%}} #### Scope {{%scope%}} ZohoCatalyst.mlkit.READ {{%/scope%}} #### Request JSON Properties {{% nested_fields children="open" border="yes" expandable="no" title="image" textformat="file" condition="mandatory" maxlength=" " %}} 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 {{% /nested_fields %}} {{% nested_fields children="open" border="yes" expandable="no" title="model_type" textformat="string" condition="mandatory" maxlength=" " %}} The model type of the image Value to be passed: {{%badge%}}PAN{{%/badge%}} {{% /nested_fields %}} ### 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. {{%/divtag%}} {{%divtag class="RightContent"%}} {{% panel_without_adjustment header="Sample Request" class="language-bash" %}}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 {{% /panel_without_adjustment %}} {{% panel_without_adjustment header="Sample Response" class="language-json"%}} { "status": "success", "data": { "first_name": "KIRAN", "last_name": "RAO", "date_of_birth": "03/04/1982", "pan": "ANRPM2537J" } }{{% /panel_without_adjustment %}} {{% expand-container %}} {{% expand id="sdk_docs" header="SDK Documentation"%}} {{%link href="/en/sdk/java/v1/zia-services/identity-scanner/pan"%}}Identity Scanner: PAN- Java SDK{{%/link%}}<br><br> {{%link href="/en/sdk/nodejs/v2/zia-services/identity-scanner/pan"%}}Identity Scanner: PAN- Node.js SDK{{%/link%}}<br><br> {{%link href="/en/sdk/python/v1/zia-services/identity-scanner/pan"%}}Identity Scanner: PAN- Python SDK{{%/link%}}<br><br> {{%/expand%}} {{%/expand-container%}} {{%/divtag%}} {{%/section%}} -------------------------------------------------------------------------------- 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-03-18T07:41:08.714Z" source: "https://docs.catalyst.zoho.com/en/api/code-reference/zia-services/identity-scanner/passbook/" service: "Zia Services" -------------------------------------------------------------------------------- {{% section path="/en/api/code-reference/zia-services/identity-scanner/passbook/" id="Passbook" %}} {{%divtag class="LeftContent"%}} # Passbook The {{%badge%}}PASSBOOK{{%/badge%}} model is a part of the Document Processing feature of {{%link href="/en/zia-services/help/identity-scanner/introduction/"%}}Identity Scanner{{%/link%}} that enables you to process Indian bank passbooks as financial or identity proof documents. {{%note%}}{{%bold class="bold-primary"%}}Note:{{%/bold%}} <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 {{%link href="/en/api/code-reference/zia-services/identity-scanner/passbook/#OCR"%}}general OCR component{{%/link%}} to read and process textual content.{{%/note%}} ## 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 {{%badge%}}PASSBOOK{{%/badge%}} 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 {{%request class="apiyellow" req="POST" %}}<p>{api-domain}/baas/v1/project/{project_id}/ml/ocr</p>{{%/request%}} {{%request_id id="api-domain" data="URL" %}}The DC-specific domain to access Catalyst API{{%/request_id%}} {{%request_id id="project_id" data="Numerical" %}}The {{%link href="/en/getting-started/set-up-a-catalyst-project/general-settings/"%}}unique ID{{%/link%}} of the project{{%/request_id%}} #### Request Headers {{%scope%}} **Authorization:** Zoho-oauthtoken {oauth_token} <br> **content-type:** multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW {{%/scope%}} **Optional Headers** <br> {{%scope%}} **CATALYST-ORG:** {org_id} {{%/scope%}} {{%scope%}} **Environment:** Development {{%/scope%}} #### Scope {{%scope%}} ZohoCatalyst.mlkit.READ {{%/scope%}} #### Request JSON Properties {{% nested_fields children="open" border="yes" expandable="no" title="image" textformat="file" condition="mandatory" maxlength=" " %}} 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 {{% /nested_fields %}} {{% nested_fields children="open" border="yes" expandable="no" title="model_type" textformat="string" condition="mandatory" maxlength=" " %}} The model type of the image Value to be passed: {{%badge%}}PASSBOOK{{%/badge%}} {{% /nested_fields %}} {{% nested_fields children="open" border="yes" expandable="no" title="language" textformat="string" condition="optional" maxlength=" " %}} The language code of the languages to be identified. You can pass multiple languages. The {{%badge%}}PASSBOOK{{%/badge%}} model supports the Indian and international languages specified in the tables below. Default value: {{%badge%}}eng{{%/badge%}} {{% /nested_fields %}} #### 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>{{%badge%}}eng{{%/badge%}}</td> </tr> <tr> <td>Arabic</td> <td>{{%badge%}}ara{{%/badge%}}</td> </tr> <tr> <td>Chinese</td> <td>{{%badge%}}chi_sim{{%/badge%}}</td> </tr> <tr> <td>French</td> <td>{{%badge%}}fra{{%/badge%}}</td> </tr> <tr> <td>Italian</td> <td>{{%badge%}}ita{{%/badge%}}</td> </tr> <tr> <td>Japanese</td> <td>{{%badge%}}jpn{{%/badge%}}</td> </tr> <tr> <td>Portuguese</td> <td>{{%badge%}}por{{%/badge%}}</td> </tr> <tr> <td>Romanian</td> <td>{{%badge%}}ron{{%/badge%}}</td> </tr> <tr> <td>Spanish</td> <td>{{%badge%}}spa{{%/badge%}}</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>{{%badge%}}hin{{%/badge%}}</td> </tr> <tr> <td>Bengali</td> <td>{{%badge%}}ben{{%/badge%}}</td> </tr> <tr> <td>Marathi</td> <td>{{%badge%}}mar{{%/badge%}}</td> </tr> <tr> <td>Telugu</td> <td>{{%badge%}}tel{{%/badge%}}</td> </tr> <tr> <td>Tamil</td> <td>{{%badge%}}tam{{%/badge%}}</td> </tr> <tr> <td>Gujarati</td> <td>{{%badge%}}guj{{%/badge%}}</td> </tr> <tr> <td>Urdu</td> <td>{{%badge%}}urd{{%/badge%}}</td> </tr> <tr> <td>Kannada</td> <td>{{%badge%}}kan{{%/badge%}}</td> </tr> <tr> <td>Malayalam</td> <td>{{%badge%}}mal{{%/badge%}}</td> </tr> <tr> <td>Sanskrit</td> <td>{{%badge%}}san{{%/badge%}}</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 {{%badge%}}true{{%/badge%}} or {{%badge%}}false{{%/badge%}} for those keys. {{%note%}}{{%bold class="bold-primary"%}}Note:{{%/bold%}} Identity Scanner will return the response only in English, irrespective of the languages present in the passbook.{{%/note%}} {{%/divtag%}} {{%divtag class="RightContent"%}} {{% panel_without_adjustment header="Sample Request" class="language-bash" %}}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" {{% /panel_without_adjustment %}} {{% panel_without_adjustment header="Sample Response" class="language-json"%}} { "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\"}" } }{{% /panel_without_adjustment %}} {{% expand-container %}} {{% expand id="sdk_docs" header="SDK Documentation"%}} {{%link href="/en/sdk/java/v1/zia-services/identity-scanner/passbook"%}}Identity Scanner: Passbook- Java SDK{{%/link%}}<br><br> {{%link href="/en/sdk/nodejs/v2/zia-services/identity-scanner/passbook"%}}Identity Scanner: Passbook- Node.js SDK{{%/link%}}<br><br> {{%link href="/en/sdk/python/v1/zia-services/identity-scanner/passbook"%}}Identity Scanner: Passbook- Python SDK{{%/link%}}<br><br> {{%/expand%}} {{%/expand-container%}} {{%/divtag%}} {{%/section%}} -------------------------------------------------------------------------------- title: "Cheque" description: "This API enables you to extract fields of data from an Indian cheque leaves and fetch the parameters recognized from it." last_updated: "2026-03-18T07:41:08.715Z" source: "https://docs.catalyst.zoho.com/en/api/code-reference/zia-services/identity-scanner/cheque/" service: "Zia Services" -------------------------------------------------------------------------------- {{% section path="/en/api/code-reference/zia-services/identity-scanner/cheque/" id="Cheque" %}} {{%divtag class="LeftContent"%}} # Cheque The {{%badge%}}CHEQUE{{%/badge%}} model is a part of the Document Processing feature of {{%link href="/en/zia-services/help/identity-scanner/introduction/"%}}Identity Scanner{{%/link%}} that enables you to process Indian bank cheque leaves as identity proof documents. {{%note%}}{{%bold class="bold-primary"%}}Note:{{%/bold%}} <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 {{%link href="/en/api/code-reference/zia-services/identity-scanner/cheque/#OCR"%}}general OCR component{{%/link%}} to read and process textual content.{{%/note%}} ## 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 {{%badge%}}CHEQUE{{%/badge%}} in the API request. The {{%badge%}}CHEQUE{{%/badge%}} model can only process text in English by default. No other languages are supported. {{%note%}}{{%bold class="bold-primary"%}}Note:{{%/bold%}} Zia only processes cheques of the CTS-2010 format.{{%/note%}} ### Request Details #### Request URL {{%request class="apiyellow" req="POST" %}}<p>{api-domain}/baas/v1/project/{project_id}/ml/ocr</p>{{%/request%}} {{%request_id id="api-domain" data="URL" %}}The DC-specific domain to access Catalyst API{{%/request_id%}} {{%request_id id="project_id" data="Numerical" %}}The {{%link href="/en/getting-started/set-up-a-catalyst-project/general-settings/"%}}unique ID{{%/link%}} of the project{{%/request_id%}} #### Request Headers {{%scope%}} **Authorization:** Zoho-oauthtoken {oauth_token} <br> **content-type:** multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW {{%/scope%}} **Optional Headers** <br> {{%scope%}} **CATALYST-ORG:** {org_id} {{%/scope%}} {{%scope%}} **Environment:** Development {{%/scope%}} #### Scope {{%scope%}} ZohoCatalyst.mlkit.READ {{%/scope%}} #### Request JSON Properties {{% nested_fields children="open" border="yes" expandable="no" title="image" textformat="file" condition="mandatory" maxlength=" " %}} 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 {{% /nested_fields %}} {{% nested_fields children="open" border="yes" expandable="no" title="model_type" textformat="string" condition="mandatory" maxlength=" " %}} The model type of the image Value to be passed: {{%badge%}}CHEQUE{{%/badge%}} {{% /nested_fields %}} ### 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. {{%/divtag%}} {{%divtag class="RightContent"%}} {{% panel_without_adjustment header="Sample Request" class="language-bash" %}}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 \ {{% /panel_without_adjustment %}} {{% panel_without_adjustment header="Sample Response" class="language-json line-numbers"%}} { "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" } }{{% /panel_without_adjustment %}} {{% expand-container %}} {{% expand id="sdk_docs" header="SDK Documentation"%}} {{%link href="/en/sdk/java/v1/zia-services/identity-scanner/cheque"%}}Identity Scanner: Cheque- Java SDK{{%/link%}}<br><br> {{%link href="/en/sdk/nodejs/v2/zia-services/identity-scanner/cheque"%}}Identity Scanner: Cheque- Node.js SDK{{%/link%}}<br><br> {{%link href="/en/sdk/python/v1/zia-services/identity-scanner/cheque"%}}Identity Scanner: Cheque- Python SDK{{%/link%}}<br><br> {{%/expand%}} {{%/expand-container%}} {{%/divtag%}} {{%/section%}} --- ## 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-03-18T07:41:08.735Z" 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 {{%link href="/en/zia-services/help/identity-scanner/introduction" %}}Identity Scanner{{%/link%}} 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%}}{{%bold%}}Note:{{%/bold%}} 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.{{%/note%}} ## 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%}}{{%bold%}}Note:{{%/bold%}} 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.{{%/note%}} 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 {{%badge%}}compareFace(){{%/badge%}} method processes both these images. {{%note%}}{{%bold%}}Note:{{%/bold%}} 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.{{%/note%}} {{%bold%}}Allowed file formats:{{%/bold%}} _.webp_, _.jpeg_, _.png_ {{%bold%}}File size limit:{{%/bold%}} 10 MB The result of the comparison is set to {{%bold%}}{{%badge%}}true{{%/badge%}}{{%/bold%}} if the faces match, or {{%bold%}}{{%badge%}}false{{%/badge%}}{{%/bold%}} 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 {{%badge%}}true{{%/badge%}}. #### Sample Code Snippet <br> {{% panel_without_adjustment header="Package Imports" class="language-java line-numbers" %}}import com.catalyst.advanced.CatalystAdvancedIOHandler; import com.zc.component.ml.ZCFaceComparisonData; import com.zc.component.ml.ZCML; import java.io.File;{{% /panel_without_adjustment %}} {{%code class="language-java" scroll="set-scroll" %}}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 {{%/code%}} -------------------------------------------------------------------------------- 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-03-18T07:41:08.735Z" 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 {{%link href="/en/zia-services/help/identity-scanner/introduction" %}}Identity Scanner{{%/link%}} 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%}}{{%bold%}}Note:{{%/bold%}} 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.{{%/note%}} ## Aadhaar The {{%badge%}}AADHAAR{{%/badge%}} 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%}}{{%bold%}}Note:{{%/bold%}} Document Processing is only relevant to Indian users and is {{%bold%}}only available in the IN DC{{%/bold%}}. 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 {{%link href="/en/sdk/java/v1/zia-services/ocr" %}}general OCR component{{%/link%}} to read and process textual content.{{%/note%}} You must provide the path to the image files of the front and back of the Aadhaar card using the keys {{%badge%}}aadhaarFront{{%/badge%}} and {{%badge%}}aadhaarBack{{%/badge%}}, as shown in the code below. {{%note%}}{{%bold%}}Note:{{%/bold%}} 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.{{%/note%}} 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 {{%badge%}}tam{{%/badge%}} and {{%badge%}}eng{{%/badge%}} as the languages. You can check the list of languages and language codes from the {{%link href="/en/api/code-reference/zia-services/identity-scanner/aadhaar/#Aadhaar" %}}API documentation{{%/link%}}. {{%bold%}}Allowed file formats:{{%/bold%}} _.webp_, _.jpeg_, _.png_, _.bmp_, _.tiff_, _.pdf_<br /> {{%bold%}}File size limit:{{%/bold%}} 15 MB {{%bold%}}Note:{{%/bold%}} The variables should be declared only in following order: {{%badge%}}aadhaarFront{{%/badge%}}, {{%badge%}}aadhaarBack{{%/badge%}}, {{%badge%}}languageCode{{%/badge%}} 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> {{% panel_without_adjustment header="Package Imports" class="language-java line-numbers" %}}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; {{% /panel_without_adjustment %}} {{%code class="language-java" scroll="set-scroll" %}}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 {{% /code%}} -------------------------------------------------------------------------------- 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-03-18T07:41:08.735Z" 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 {{%link href="/en/zia-services/help/identity-scanner/introduction" %}}Identity Scanner{{%/link%}} 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%}}{{%bold%}}Note:{{%/bold%}} 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.{{%/note%}} ## PAN The {{%badge%}}PAN{{%/badge%}} 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%}}{{%bold%}}Note:{{%/bold%}} Document Processing is only relevant to Indian users and is {{%bold%}}only available in the IN DC{{%/bold%}}. 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 {{%link href="/en/sdk/java/v1/zia-services/ocr" %}}general OCR component{{%/link%}} to read and process textual content.{{%/note%}} You must provide the path to the image file of the front side of the PAN card, as shown in the code below. {{%bold%}}Allowed file formats:{{%/bold%}} _.webp_, _.jpeg_, _.png_<br /> {{%bold%}}File size limit:{{%/bold%}} 15 MB You must specify the model type as {{%badge%}}PAN{{%/badge%}} using {{%badge%}}ZCOCRModelType{{%/badge%}}. The {{%badge%}}PAN{{%/badge%}} 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> {{% panel_without_adjustment header="Package Imports" class="language-java line-numbers" %}}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; {{% /panel_without_adjustment %}} {{%code class="language-java" scroll="set-scroll" %}}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(); {{%/code%}} -------------------------------------------------------------------------------- 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-03-18T07:41:08.735Z" 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 {{%link href="/en/zia-services/help/identity-scanner/introduction" %}}Identity Scanner{{%/link%}} 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%}}{{%bold%}}Note:{{%/bold%}} 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.{{%/note%}} ## Passbook The {{%badge%}}PASSBOOK{{%/badge%}} 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%}}{{%bold%}}Note:{{%/bold%}} Document Processing is only relevant to Indian users and is {{%bold%}}only available in the IN DC{{%/bold%}}. 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 {{%link href="/en/sdk/java/v1/zia-services/ocr/" %}}general OCR component{{%/link%}} to read and process textual content.{{%/note%}} 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 {{%link href="/en/api/code-reference/zia-services/identity-scanner/passbook/#Passbook" %}}API documentation{{%/link%}}. You must provide the path to the image of the front page of the passbook, as shown in the code below. {{%bold%}}Allowed file formats:{{%/bold%}} _.webp_, _.jpeg_, _.png_, _.bmp_, _.tiff_, _.pdf_<br /> {{%bold%}}File size limit:{{%/bold%}} 15 MB You must specify the model type as {{%badge%}}PASSBOOK{{%/badge%}} using {{%badge%}}ZCOCRModelType{{%/badge%}}. You can also optionally specify the language using {{%badge%}}setLanguageCode(){{%/badge%}}. 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%}}{{%bold%}}Note:{{%/bold%}} Identity Scanner will return the response only in English, irrespective of the languages present in the passbook.{{%/note%}} #### Sample Code Snippet <br> {{% panel_without_adjustment header="Package Imports" class="language-java line-numbers" %}}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; {{% /panel_without_adjustment %}} {{%code class="language-java" scroll="set-scroll" %}}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 {{%/code%}} -------------------------------------------------------------------------------- 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-03-18T07:41:08.735Z" 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 {{%link href="/en/zia-services/help/identity-scanner/introduction" %}}Identity Scanner{{%/link%}} 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%}}{{%bold%}}Note:{{%/bold%}} 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.{{%/note%}} ## Cheque The {{%badge%}}CHEQUE{{%/badge%}} 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%}}{{%bold%}}Note:{{%/bold%}} Document Processing is only relevant to Indian users and is {{%bold%}}only available in the IN DC{{%/bold%}}. 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 {{%link href="/en/sdk/java/v1/zia-services/ocr/" %}}general OCR component{{%/link%}} to read and process textual content.{{%/note%}} You must provide the path to the image file of the front page of the chequebook, as shown in the code below. The {{%badge%}}CHEQUE{{%/badge%}} model can only process text in English by default. No other languages are supported. {{%bold%}}Allowed file formats:{{%/bold%}} _.webp_, _.jpeg_, _.png_<br /> {{%bold%}}File size limit:{{%/bold%}} 15 MB You must specify the model type as {{%badge%}}CHEQUE{{%/badge%}} using {{%badge%}}setModelType(){{%/badge%}}. {{%bold%}}Note:{{%/bold%}} 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> {{% panel_without_adjustment header="Package Imports" class="language-java line-numbers" %}}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; {{% /panel_without_adjustment %}} {{%code class="language-java" scroll="set-scroll" %}}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(); {{%/code%}} --- ## 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-03-18T07:41:08.736Z" 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 {{%link href="/en/zia-services/help/identity-scanner/introduction" %}}Identity Scanner{{%/link%}} 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%}}{{%bold%}}Note:{{%/bold%}} 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.{{%/note%}} ### 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%}}{{%bold%}}Note:{{%/bold%}} 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.{{%/note%}} 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 {{%badge%}}compareFace(){{%/badge%}} method processes both these images. The {{%badge%}}zia{{%/badge%}} reference used here is defined in the {{%link href="/en/sdk/nodejs/v2/zia-services/get-component-instance" %}}component instance page{{%/link%}}. {{%note%}}{{%bold%}}Note:{{%/bold%}} 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.{{%/note%}} {{%bold%}}Allowed file formats:{{%/bold%}} _.webp_, _.jpeg_, _.png_ {{%bold%}}File size limit:{{%/bold%}} 10 MB The result of the comparison is set to {{%bold%}}{{%badge%}}true{{%/badge%}}{{%/bold%}} if the faces match, or {{%bold%}}{{%badge%}}false{{%/badge%}}{{%/bold%}} 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 {{%badge%}}true{{%/badge%}}. {{%code class="language-javascript" scroll="set-scroll" %}}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{{% /code%}} A sample response that you will receive is shown below. The response is the same for both versions of Node.js. #### Node js {{%code class="language-javascript" scroll="set-scroll" %}}{ confidence: 0.9464, matched: "true" } {{% /code%}} -------------------------------------------------------------------------------- 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-03-18T07:41:08.736Z" 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 {{%link href="/en/zia-services/help/identity-scanner/introduction" %}}Identity Scanner{{%/link%}} 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. {{%bold%}}Note:{{%/bold%}} 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 {{%badge%}}AADHAAR{{%/badge%}} 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%}}{{%bold class="bold-primary" %}}Note:{{%/bold%}}Document Processing is only relevant to Indian users and is {{%bold%}}only available in the IN DC{{%/bold%}}. 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 {{%link href="/en/sdk/nodejs/v2/zia-services/ocr" %}}general OCR component{{%/link%}} to read and process textual content.{{%/note%}} You must provide the path to the image files of the front and back of the Aadhaar card through {{%badge%}}createReadStream{{%/badge%}}, as shown in the code below.The {{%badge%}}zia{{%/badge%}} reference used below is defined in the {{%link href="/en/sdk/nodejs/v2/zia-services/get-component-instance" %}}component instance page{{%/link%}}. The promise returned here is resolved to a JSON object. {{%note%}}{{%bold class="bold-primary" %}}Note:{{%/bold%}} 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.{{%/note%}} 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 {{%badge%}}tam{{%/badge%}} and {{%badge%}}eng{{%/badge%}} as the languages. You can check the list of languages and language codes from the {{%link href="/en/api/code-reference/zia-services/identity-scanner/aadhaar/#Aadhaar" %}}API documentation{{%/link%}}. {{%bold%}}Allowed file formats:{{%/bold%}} _.webp_, _.jpeg_, _.png_, _.bmp_, _.tiff_, _.pdf_<br /> {{%bold%}}File size limit:{{%/bold%}} 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. {{%code class="language-javascript" scroll="set-scroll" %}}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{{% /code%}} A sample response that you will receive is shown below. The response is the same for both versions of Node.js. #### Nodejs {{%code class="language-javascript line-numbers" scroll="set-scroll" %}}{ 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" } }" } {{% /code%}} -------------------------------------------------------------------------------- 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-03-18T07:41:08.736Z" 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 {{%link href="/en/zia-services/help/identity-scanner/introduction" %}}Identity Scanner{{%/link%}} 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%}}{{%bold%}}Note:{{%/bold%}}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.{{%/note%}} ### PAN The {{%badge%}}PAN{{%/badge%}} 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%}}{{%bold%}}Note:{{%/bold%}}Document Processing is only relevant to Indian users and is {{%bold%}}only available in the IN DC{{%/bold%}}. 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 {{%link href="/en/sdk/nodejs/v2/zia-services/ocr" %}}general OCR component{{%/link%}} to read and process textual content.{{%/note%}} You must provide the path to the image file of the front side of the PAN card, as shown in the code below. The {{%badge%}}zia{{%/badge%}} reference used below is defined in the {{%link href="/en/sdk/nodejs/v2/zia-services/get-component-instance" %}}component instance page{{%/link%}}. {{%bold%}}Allowed file formats:{{%/bold%}} _.webp_, _.jpeg_, _.png_<br /> {{%bold%}}File size limit:{{%/bold%}} 15 MB You must specify the model type as {{%badge%}}PAN{{%/badge%}} using {{%badge%}}modelType{{%/badge%}}. The {{%badge%}}PAN{{%/badge%}} 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. {{%code class="language-javascript" scroll="set-scroll" %}}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 });{{% /code%}} A sample response that you will receive is shown below. The response is the same for both versions of Node.js. #### Nodejs {{%code class="language-javascript" scroll="set-scroll" %}}{ date_of_birth: "03/04/1982", last_name: "VASUDEV MAHTO", pan: "ANRPM2537J", first_name: "PRAMOD KUMAR MAHTO" }{{% /code%}} -------------------------------------------------------------------------------- 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-03-18T07:41:08.736Z" 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 {{%link href="/en/zia-services/help/identity-scanner/introduction" %}}Identity Scanner{{%/link%}} 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%}}{{%bold%}}Note:{{%/bold%}} 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.{{%/note%}} ### Passbook The {{%badge%}}PASSBOOK{{%/badge%}} 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%}}{{%bold%}}Note:{{%/bold%}} Document Processing is only relevant to Indian users and is {{%bold%}}only available in the IN DC{{%/bold%}}. 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 {{%link href="/en/sdk/nodejs/v2/zia-services/ocr" %}}general OCR component{{%/link%}} to read and process textual content.{{%/note%}} 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 {{%link href="/en/api/code-reference/zia-services/ocr/#OCR" %}}API documentation{{%/link%}}. You must provide the path to the image of the front page of the passbook, as shown in the code below. {{%bold%}}Allowed file formats:{{%/bold%}} _.webp_, _.jpeg_, _.png_, _.bmp_, _.tiff_, _.pdf_<br /> {{%bold%}}File size limit:{{%/bold%}} 15 MB You must specify the model type as {{%badge%}}PASSBOOK{{%/badge%}} using the key {{%badge%}}modelType{{%/badge%}}. 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%}}{{%bold%}}Note:{{%/bold%}} Identity Scanner will return the response only in English, irrespective of the languages present in the passbook.{{%/note%}} The {{%badge%}}zia{{%/badge%}} reference used below is defined in the {{%link href="/en/sdk/nodejs/v2/zia-services/get-component-instance" %}}component instance page{{%/link%}}. {{%code class="language-javascript" scroll="set-scroll" %}}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 });{{% /code%}} A sample response that you will receive is shown below. The response is the same for both versions of Node.js. #### Node js {{%code class="language-javascript" scroll="set-scroll" %}}{ 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" }" }{{% /code%}} -------------------------------------------------------------------------------- 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-03-18T07:41:08.736Z" 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 {{%link href="/en/zia-services/help/identity-scanner/introduction" %}}Identity Scanner{{%/link%}} 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%}}{{%bold%}}Note:{{%/bold%}} 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.{{%/note%}} ### Cheque The {{%badge%}}CHEQUE{{%/badge%}} 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%}}{{%bold%}}Note:{{%/bold%}} Document Processing is only relevant to Indian users and is {{%bold%}}only available in the IN DC{{%/bold%}}. 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 {{%link href="/en/sdk/nodejs/v2/zia-services/ocr/" %}}general OCR component{{%/link%}} to read and process textual content.{{%/note%}} You must provide the path to the image file of the front page of the chequebook, as shown in the code below. The {{%badge%}}CHEQUE{{%/badge%}} model can only process text in English by default. No other languages are supported. {{%bold%}}Allowed file formats:{{%/bold%}} _.webp_, _.jpeg_, _.png_<br /> {{%bold%}}File size limit:{{%/bold%}} 15 MB You must specify the model type as {{%badge%}}CHEQUE{{%/badge%}} using {{%badge%}}modelType(){{%/badge%}}. {{%note%}}{{%bold%}}Note:{{%/bold%}}Zia only processes cheques of the CTS-2010 format.{{%/note%}} The {{%badge%}}zia{{%/badge%}} reference used below is defined in the {{%link href="/en/sdk/nodejs/v2/zia-services/get-component-instance" %}}component instance page{{%/link%}}. {{%code class="language-javascript" scroll="set-scroll" %}}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 });{{% /code%}} A sample response that you will receive is shown below. The response is the same for both versions of Node.js. #### Nodejs {{%code class="language-javascript" scroll="set-scroll" %}} { date: "15/11/2014", account_number: "89323223232222", amount: "10615", branch_name: "ANNA NAGAR", bank_name: "ABX BANK", ifsc: "BB9033232" } {{% /code%}} --- ## 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-03-18T07:41:08.737Z" 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 {{%link href="/en/zia-services/help/identity-scanner/introduction" %}}Identity Scanner{{%/link%}} 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%}}{{%bold%}}Note:{{%/bold%}} 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.{{%/note%}} ### 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%}}{{%bold%}}Note:{{%/bold%}} 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.{{%/note%}} 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 {{%badge%}}compare_face(){{%/badge%}} method processes both these images. To know more about the component instance {{%badge%}}zia{{%/badge%}} used below, please refer to {{%link href="/en/sdk/python/v1/zia-services/get-component-instance/" %}}this help section{{%/link%}}. {{%note%}}{{%bold%}}Note:{{%/bold%}} 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.{{%/note%}} {{%bold%}}Allowed file formats:{{%/bold%}} _.webp_, _.jpeg_, _.png_ {{%bold%}}File size limit:{{%/bold%}} 10 MB The result of the comparison is set to {{%bold%}}{{%badge%}}true{{%/badge%}}{{%/bold%}} if the faces match, or {{%bold%}}{{%badge%}}false{{%/badge%}}{{%/bold%}} 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 {{%badge%}}true{{%/badge%}}. **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>{{%badge%}}img{{%/badge%}}</td> <td>Image</td> <td>A {{%bold%}}Mandatory{{%/bold%}} parameter. Will store the first image file of the face.</td> </tr> <tr> <td>{{%badge%}}img2{{%/badge%}}</td> <td>Image</td> <td>A {{%bold%}}Mandatory{{%/bold%}} parameter. Will store the second image file of the face.</td> </tr> </tbody> </table> {{%code class="language-python" scroll="set-scroll" %}}# Facial Comparison feature implementation zia = app.zia() img = open("sample1.webp", "rb") img2 = open("sample2.webp", "rb") result = zia.compare_face(img, img2) {{% /code%}} The sample response is shown below : {{%code class="language-json" scroll="set-scroll" %}}{ "confidence":0.9464, "matched":"true" } {{% /code%}} {{%note%}}{{%bold%}}Info :{{%/bold%}} Refer to the {{%link href="/en/sdk/python/v1/sdk-scopes" %}}SDK Scopes table{{%/link%}} to determine the required permission level for performing the above operation.{{%/note%}} -------------------------------------------------------------------------------- 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-03-18T07:41:08.737Z" 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 {{%link href="/en/zia-services/help/identity-scanner/introduction" %}}Identity Scanner{{%/link%}} 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%}}{{%bold%}}Note:{{%/bold%}} 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.{{%/note%}} ## Aadhaar The {{%badge%}}AADHAAR{{%/badge%}} 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%}}{{%bold class="bold-primary" %}}Note:{{%/bold%}}Document Processing is only relevant to Indian users and is {{%bold%}}only available in the IN DC{{%/bold%}}. 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 {{%link href="/en/zia-services/help/optical-character-recognition/introduction" %}}general OCR component{{%/link%}} to read and process textual content.{{%/note%}} You must provide the path to the image files of the front and back of the Aadhaar card to the {{%badge%}}open(){{%/badge%}} 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 {{%badge%}}zia{{%/badge%}} used below, please refer to {{%link href="/en/sdk/python/v1/zia-services/get-component-instance/" %}}this help section{{%/link%}}. 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 {{%badge%}}tam{{%/badge%}} and {{%badge%}}eng{{%/badge%}} as the languages. You can check the list of languages and language codes from the {{%link href="/en/api/code-reference/zia-services/identity-scanner/aadhaar/#Aadhaar" %}}API documentation{{%/link%}}. {{%bold%}}Allowed file formats:{{%/bold%}} _.webp_, _.jpeg_, _.png_, _.bmp_, _.tiff_, _.pdf_<br /> {{%bold%}}File size limit:{{%/bold%}} 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>{{%badge%}}aadhar_front{{%/badge%}}</td> <td>Image</td> <td>A {{%bold%}}Mandatory{{%/bold%}} parameter. Will store the front side Aadhaar image in less than 15 MB.</td> </tr> <tr> <td>{{%badge%}}aadhar_back{{%/badge%}}</td> <td>Image</td> <td>A {{%bold%}}Mandatory{{%/bold%}} parameter. Will store the back side Aadhaar image in less than 15 MB.</td> </tr> <tr> <td>{{%badge%}}language{{%/badge%}}</td> <td>String</td> <td>A {{%bold%}}Mandatory{{%/bold%}} parameter. Will store the language to be identified.</td> </tr> </tbody> </table> {{%code class="language-python" scroll="set-scroll" %}}zia = app.zia() img = open("sample.webp", "rb") img2 = open("sample2.webp", "rb") result = zia.extract_aadhaar_characters(img, img2, language="eng,tam") {{% /code%}} A sample response is shown below : {{%code class="language-json line-numbers" scroll="set-scroll" %}}{ "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" } } } {{% /code%}} {{%note%}}{{%bold%}}Info :{{%/bold%}} Refer to the {{%link href="/en/sdk/python/v1/sdk-scopes" %}}SDK Scopes table{{%/link%}} to determine the required permission level for performing the above operation.{{%/note%}} -------------------------------------------------------------------------------- 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-03-18T07:41:08.737Z" 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 {{%link href="/en/zia-services/help/identity-scanner/introduction" %}}Identity Scanner{{%/link%}} 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%}}{{%bold%}}Note:{{%/bold%}} 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.{{%/note%}} #### PAN The {{%badge%}}PAN{{%/badge%}} 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%}}{{%bold%}}Note:{{%/bold%}}Document Processing is only relevant to Indian users and is {{%bold%}}only available in the IN DC{{%/bold%}}. 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 {{%link href="/en/zia-services/help/optical-character-recognition/introduction" %}}general OCR component{{%/link%}} to read and process textual content.{{%/note%}} You must provide the path to the image file of the front side of the PAN card to the {{%badge%}}open(){{%/badge%}} 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 {{%badge%}}zia{{%/badge%}} used below, please refer to {{%link href="/en/sdk/python/v1/zia-services/get-component-instance/" %}}this help section{{%/link%}}. {{%bold%}}Allowed file formats:{{%/bold%}} _.webp_, _.jpeg_, _.png_<br /> {{%bold%}}File size limit:{{%/bold%}} 15 MB You must specify the model type as {{%badge%}}PAN{{%/badge%}} using {{%badge%}}modelType{{%/badge%}}. The {{%badge%}}PAN{{%/badge%}} 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>{{%badge%}}img{{%/badge%}}</td> <td>Image</td> <td>A {{%bold%}}Mandatory{{%/bold%}} parameter. Will store the image file of the front side of the PAN card.</td> </tr> <tr> <td>{{%badge%}}modelType{{%/badge%}}</td> <td>String</td> <td>A {{%bold%}}Mandatory{{%/bold%}} parameter. Will store the default value as "PAN".</td> </tr> </tbody> </table> {{%code class="language-python" scroll="set-scroll" %}}zia = app.zia() img = open("sample.webp", "rb") result = zia.extract_optical_characters(img, {"modelType": "PAN"}) {{% /code%}} The response is shown below : {{%code class="language-json" scroll="set-scroll" %}}{ "date_of_birth":"03/04/1982", "last_name":"VASUDEV MAHTO", "pan":"ANRPM2537J", "first_name":"PRAMOD KUMAR MAHTO" } {{% /code%}} {{%note%}}{{%bold%}}Info :{{%/bold%}} Refer to the {{%link href="/en/sdk/python/v1/sdk-scopes" %}}SDK Scopes table{{%/link%}} to determine the required permission level for performing the above operation.{{%/note%}} -------------------------------------------------------------------------------- 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-03-18T07:41:08.737Z" 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 {{%link href="/en/zia-services/help/identity-scanner/introduction" %}}Identity Scanner{{%/link%}} 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%}}{{%bold%}}Note:{{%/bold%}} 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.{{%/note%}} #### Passbook The {{%badge%}}PASSBOOK{{%/badge%}} 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%}}{{%bold%}}Note:{{%/bold%}} Document Processing is only relevant to Indian users and is {{%bold%}}only available in the IN DC{{%/bold%}}. 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 {{%link href="/en/zia-services/help/optical-character-recognition/introduction" %}}general OCR component{{%/link%}} to read and process textual content.{{%/note%}} 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 {{%link href="/en/api/code-reference/zia-services/identity-scanner/passbook/#Passbook" %}}API documentation{{%/link%}}. You must provide the path to the image of the front page of the passbook, as shown in the code below. {{%bold%}}Allowed file formats:{{%/bold%}} _.webp_, _.jpeg_, _.png_, _.bmp_, _.tiff_, _.pdf_<br /> {{%bold%}}File size limit:{{%/bold%}} 15 MB You must specify the model type as {{%badge%}}PASSBOOK{{%/badge%}} using the key {{%badge%}}modelType{{%/badge%}}. 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%}}{{%bold%}}Note:{{%/bold%}} Identity Scanner will return the response only in English, irrespective of the languages present in the passbook.{{%/note%}} To know more about the component instance {{%badge%}}zia{{%/badge%}} used below, please refer to {{%link href="/en/sdk/python/v1/zia-services/get-component-instance/" %}}this help section{{%/link%}}. **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>{{%badge%}}img{{%/badge%}}</td> <td>Image</td> <td>A {{%bold%}}Mandatory{{%/bold%}} parameter. Will store the language to be detected.</td> </tr> <tr> <td>{{%badge%}}modelType{{%/badge%}}</td> <td>String</td> <td>A {{%bold%}}Mandatory{{%/bold%}} parameter. Will store the default value as "PASSBOOK".</td> </tr> </tbody> </table> {{%code class="language-python" scroll="set-scroll" %}}zia = app.zia() img = open("sample.webp", "rb") result = zia.extract_optical_characters( img, {"language": "tam", "modelType": "PASSBOOK"} ) {{% /code%}} A sample reference is shown below : {{%code class="language-json" scroll="set-scroll" %}}{ "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" } } {{% /code%}} {{%note%}}{{%bold%}}Info :{{%/bold%}} Refer to the {{%link href="/en/sdk/python/v1/sdk-scopes" %}}SDK Scopes table{{%/link%}} to determine the required permission level for performing the above operation.{{%/note%}} -------------------------------------------------------------------------------- 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-03-18T07:41:08.738Z" 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 {{%link href="/en/zia-services/help/identity-scanner/introduction" %}}Identity Scanner{{%/link%}} 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%}}{{%bold%}}Note:{{%/bold%}} 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.{{%/note%}} #### Cheque The {{%badge%}}CHEQUE{{%/badge%}} 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%}}{{%bold%}}Note:{{%/bold%}} Document Processing is only relevant to Indian users and is {{%bold%}}only available in the IN DC{{%/bold%}}. 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 {{%link href="/en/zia-services/help/optical-character-recognition/introduction" %}}general OCR component{{%/link%}} to read and process textual content.{{%/note%}} You must provide the path to the image file of the front page of the chequebook to the {{%badge%}}open(){{%/badge%}} method, as shown in the code below. This method returns the file object as a response. The {{%badge%}}CHEQUE{{%/badge%}} model can only process text in English by default. No other languages are supported. {{%bold%}}Allowed file formats:{{%/bold%}} _.webp_, _.jpeg_, _.png_<br /> {{%bold%}}File size limit:{{%/bold%}} 15 MB You must specify the model type as {{%badge%}}CHEQUE{{%/badge%}} using {{%badge%}}modelType(){{%/badge%}}. {{%note%}}{{%bold%}}Note:{{%/bold%}}Zia only processes cheques of the CTS-2010 format.{{%/note%}} To know more about the component instance {{%badge%}}zia{{%/badge%}} used below, please refer to {{%link href="/en/sdk/python/v1/zia-services/get-component-instance/" %}}this help section{{%/link%}}. **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>{{%badge%}}img{{%/badge%}}</td> <td>Image</td> <td>A {{%bold%}}Mandatory{{%/bold%}} parameter. Will store the image file of the front page of the chequebook.</td> </tr> <tr> <td>{{%badge%}}modelType{{%/badge%}}</td> <td>String</td> <td>A {{%bold%}}Mandatory{{%/bold%}} parameter. Will store the default value as "CHEQUE".</td> </tr> </tbody> </table> {{%code class="language-python" scroll="set-scroll" %}}zia = app.zia() img = open('sample.webp', 'rb') result = zia.extract_optical_characters(img, {'modelType': 'CHEQUE'}) {{% /code%}} A sample response is shown below : {{%code class="language-json line-numbers" scroll="set-scroll" %}}{ "date":"15/11/2014", "account_number":"89323223232222", "amount":"10615", "branch_name":"ANNA NAGAR", "bank_name":"ABX BANK", "ifsc":"BB9033232" } {{% /code%}} {{%note%}}{{%bold%}}Info :{{%/bold%}} Refer to the {{%link href="/en/sdk/python/v1/sdk-scopes" %}}SDK Scopes table{{%/link%}} to determine the required permission level for performing the above operation.{{%/note%}}