Next-gen OCR: finally
reliable and fully customizable
Turn all your documents into actionable insights.
Tailor data extraction to fit your unique needs with ease.
50 free credits
No credit card required
Secure and private

The best teams work with Koncile
The tool to turn your documents into structured data
Transform any PDF document into structured data for your business. The intuitive interface allows you to define the fields to extract, reformat, and enrich. Start with our document templates such as Invoice OCR, Purchase Order OCR, or ID Document OCR.


Pierre Laprée
Founder & CPO at SpendHQ
Koncile automates the intelligent extraction of contractual data. Despite the complexity of our clients’ contracts, the tool ensures quality and speed, saving us valuable time.
Explore our template library
Start with a ready-to-use document template and customize it to fit your needs.
Security and privacy by design
No training on your data
Fully encrypted application
Secured data storage
GDPR compliant
99%
Average extraction success rate
Unmatched reliability
The most advanced OCR technology, combining computer vision and LLMs for superior accuracy
Customize extraction to fit your needs
Use our intuitive interface to define the fields you want to extract and format them as needed. Explore our wide range of available and adjustable templates.


Get line-by-line details from your invoices & quotes
Koncile Extract captures every transaction in your invoices and quotes. Finally, access all your purchases in a structured, usable format.
AI sorts and organizes your documents effortlessly
Automatically route your documents to the right category or supplier. Easily streamline your management processes.

The API to streamline your document management
status
string
Document status can be DONE, DUPLICATE, or IN PROGRESS
document_id
integer
Unique identifier assigned to each document
general_fields
objects
Fields that appear once per document. Returns in the format: {field_name: extracted_value}
line_fields
objects
Repeated fields extracted in bulk for each row or table. Returns in the format: {field_name: extracted_value}
Request
curl api.koncile.ai/tasks/{task_id}/ \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $API_KEY"
response = requests.get(f"{api_url}/tasks/{task_id}/",
headers={"accept": "application/json", "Authorization":{"Bearer{api_key}"})
Response
{
"status": DONE,
"document_id": ID,
"General_fields":
{
"Date" : "05/08/20222",
"Price" : "23$",
"Supplier name" : "Koncile",
},
"Line_fields":
{
"Date" : ["05/08/2022", "05/09/2022", "03/02/2023"],
"Price" : ["23$", "12$", "5$"],
}
}