For Voucher documents, our module can extract the digitally printed and handwritten information along with signature verification and stamp identification required to process the transaction automatically.
Captures both digitally printed and handwritten information from vouchers
Ensures precise and dependable extraction of voucher details
Extracts all essential information from bank vouchers for complete data processing
Simple to integrate with existing systems for seamless data flow
Annual API Volume
Accuracy Rate
Daily API Volume
Time to launch
Hassle-Free,
No Code Platform
Easy to adopt
& integrate
99.99%
API Success Rate
Reliable &
Secure
14 March 2024
The current KYC procedures have been resource-intensive, prone to errors...
22 May 2024
Every business and organization relies on documents and critical files...
6 June 2024
The amount of data handled by organisations worldwide has reached...
Please wait...
Key | Value |
---|---|
Payee Name | : {{output.page1['Payee name']||'-'}} |
Amount in words | : {{output.page1['Amount in words']||'-'}} |
Date | : {{output.page1['Date']||'-'}} |
Account Name | : {{output.page1['Account name']||'-'}} |
Instrument Number | : {{output.page1['Instrument number']||'-'}} |
Amount in Figures | : {{output.page1['Amount in figures']||'-'}} |
Account Number | : {{output.page1['A/C number']||'-'}} |
{{output.body.error_message}}
curl --location --request POST '{{getEndpoint(url, api_version, pageDetails.ping_endpoint)}}' \
--header 'token: < your private token >' \
--header 'content-type: application/json' \
--data-raw '{
"doc_type":'image',
"action":'extract',
"doc_base64": '< base64 string of document >',
"req_id": '< string >'
}'
OkHttpClient client = new OkHttpClient().newBuilder().build();
MediaType mediaType = MediaType.parse("application/javascript");
RequestBody body = RequestBody.create(mediaType, "{ "doc_type":'image', "action":'extract', "doc_base64": '< base64 string of document >',"req_id": '< string >' }");
Request request = new Request.Builder()
.url("{{getEndpoint(url, api_version, pageDetails.ping_endpoint)}}")
.method("POST", body)
.addHeader("token", "< your private token >")
.addHeader("content-type", "application/json")
.build();
Response response = client.newCall(request).execute();
require "uri"
require "net/http"
url = URI("{{getEndpoint(url, api_version, pageDetails.ping_endpoint)}}")
https = Net::HTTP.new(url.host, url.port)
https.use_ssl = true
request = Net::HTTP::Post.new(url)
request["token"] = "< your private token >"
request["content-type"] = "application/json"
request.body = "{"doc_type":'image', "action":'extract', "doc_base64": '< base64 string of document >',"req_id": < string > }"
response = https.request(request)
puts response.read_body
CURL *curl;
CURLcode res;
curl = curl_easy_init();
if(curl) {
curl_easy_setopt(curl, CURLOPT_CUSTOMREQUEST, "POST");
curl_easy_setopt(curl, CURLOPT_URL, "{{getEndpoint(url, api_version, pageDetails.ping_endpoint)}}");
curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, 1L);
curl_easy_setopt(curl, CURLOPT_DEFAULT_PROTOCOL, "https");
struct curl_slist *headers = NULL;
headers = curl_slist_append(headers, "token: < your private token >");
headers = curl_slist_append(headers, "content-type: application/json");
curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers);
const char *data = "{"doc_type":'image', "action":'extract', "doc_base64": '< base64 string of document >',"req_id": < string > }";
curl_easy_setopt(curl, CURLOPT_POSTFIELDS, data);
res = curl_easy_perform(curl);
}
curl_easy_cleanup(curl);
var request = require('request');
var options = {
'method': 'POST',
'url': '{{getEndpoint(url, api_version, pageDetails.ping_endpoint)}}',
'headers': {
'token': '< your private token >',
'content-type':'application/json'
},
body: '{"doc_type":'image', "action":'extract', "doc_base64": "< base64 string of document >","req_id": < string > }'
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
var client = new RestClient("{{getEndpoint(url, api_version, pageDetails.ping_endpoint)}}");
ṣclient.Timeout = -1;
var request = new RestRequest(Method.POST);
request.AddHeader("token", "< your private token >");
request.AddHeader("content-type", "application/json");
var body = @"{" + "" +
@" "doc_type": 'image'," + "" +
@" "action": 'extract'," + "" +
@" "doc_base64": '< base64 string of document >'," + "" +
@" "req_id": < string >" + "" +
@" }";
request.AddParameter("application/json", body, ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
Console.WriteLine(response.Content);
php
require_once 'HTTP/Request2.php';
$request = new HTTP_Request2();
$request->setUrl('{{getEndpoint(url, api_version, pageDetails.ping_endpoint)}}');
$request->setMethod(HTTP_Request2::METHOD_POST);
$request->setConfig(array(
'follow_redirects' => TRUE
));
$request->setHeader(array(
'token' => '< your private token >',
'content-type' => 'application/json'
));
$request->setBody('{"doc_type":'image', "action":'extract', "doc_base64": "< base64 string of document >","req_id": < string > }');
try {
$response = $request->send();
if ($response->getStatus() == 200) {
echo $response->getBody();
}
else {
echo 'Unexpected HTTP status: ' . $response->getStatus() . ' ' .
$response->getReasonPhrase();
}
}
catch(HTTP_Request2_Exception $e) {
echo 'Error: ' . $e->getMessage();
}
?>
import requests
url = "{{getEndpoint(url, api_version, pageDetails.ping_endpoint)}}"
payload = {"doc_type":'image', "action":'extract', "doc_base64": "< base64 string of document >", "req_id": < string > }
headers = {
'token': '< your private token >',
'content-type':'application/json'
}
response = requests.request("POST", url, json=payload, headers=headers)
print(response.text)
Name | Description |
---|---|
token | String |
Name | Description |
---|---|
body |
{ "doc_type" : < string >, "action" : < string >, "req_id" : < string >, "doc_base64": < base64 encoded string > } |
Name | Description |
---|---|
body |
{ "req_id" : < string >, "success" : < boolean >, "document": < string > "error_message" : < string >, "data" : < dict >, } |
Fields | Values/Description |
---|---|
doc_type | “image” |
req_id | Unique request ID used for processing requests |
doc_base64 | Base64 encoded string of the document |
action | extract |
Fields | Values/Description |
---|---|
req_id | Corresponding request id |
success | Flag if the request is processed successfully |
doc_type | Type of KYC document uploaded |
error_message | If success is False then: Error message |
data | Nested Dictionary with keys corresponding to the number of pages in the input image ( For e.g : data[“page1”] , data[“page2”], data[“page3”] and so on ) |