Automatically Extracting Receipts Using the Mindee Client Libraries
PreviousExtracting Invoices using Invoice Splitter Tutorial (Node.js)NextExtracting and Parsing Multi-Receipts Tutorial (Node.js)
Last updated
Was this helpful?
Was this helpful?
from mindee import Client, product
from mindee.extraction.multi_receipts_extractor.multi_receipts_extractor import (
extract_receipts,
)
mindee_client = Client(api_key="my-api-key-here")
# mindee_client = Client() # Optionally, set from env.<?php
use Mindee\Client;
use Mindee\Extraction\ImageExtractor;
use Mindee\Input\PathInput;
use Mindee\Product\MultiReceiptsDetector\MultiReceiptsDetectorV1;
use Mindee\Product\Receipt\ReceiptV5;
$mindeeClient = new Client("my-api-key-here");
// $mindeeClient = new Client(); // Optionally, use an environment variable.
$inputPath = "path/to/your/file.ext";# frozen_string_literal: true
require 'mindee'
require 'mindee/extraction'
mindee_client = Mindee::Client.new(api_key: 'my-api-key')
my_file_path = '/path/to/the/file.ext'import com.mindee.MindeeClient;
import com.mindee.input.LocalInputSource;
import com.mindee.extraction.ExtractedImage;
import com.mindee.extraction.ImageExtractor;
import com.mindee.parsing.common.PredictResponse;
import com.mindee.parsing.common.Page;
import com.mindee.product.multireceiptsdetector.MultiReceiptsDetectorV1;
import com.mindee.product.multireceiptsdetector.MultiReceiptsDetectorV1Document;
import com.mindee.product.receipt.ReceiptV5;
import java.io.File;
import java.io.IOException;
import java.util.List;
public class AutoMultiReceiptExtractionExample {
private static final String API_KEY = "my-api-key";
private static final MindeeClient mindeeClient = new MindeeClient(API_KEY);
public static void main(String[] args) throws IOException, InterruptedException {
String myFilePath = "/path/to/the/file.ext";
//...
}
}using Mindee;
using Mindee.Extraction;
using Mindee.Input;
using Mindee.Product.MultiReceiptsDetector;
using Mindee.Product.Receipt;
var myFilePath = "path/to/my/file.ext";
var mindeeClient = new MindeeClient("my-api-key");input_doc = mindee_client.source_from_path(input_path)
result_split = mindee_client.parse(
product.MultiReceiptsDetectorV1, input_doc, close_file=False
)<?php
$inputSource = new PathInput($inputPath);
$imageExtractor = new ImageExtractor($inputSource);
$multiReceiptsResult = $client->parse(MultiReceiptsDetectorV1::class, $inputSource);input_source = mindee_client.source_from_path(file_path)
result_split = mindee_client.parse(
input_source,
Mindee::Product::MultiReceiptsDetector::MultiReceiptsDetectorV1,
close_file: false
)LocalInputSource inputSource = new LocalInputSource(new File(filePath));
PredictResponse<MultiReceiptsDetectorV1> resultSplit =
mindeeClient.parse(MultiReceiptsDetectorV1.class, inputSource);var inputSource = new LocalInputSource(filePath);
var resutlSplit = await mindeeClient.ParseAsync<MultiReceiptsDetectorV1>(inputSource).ConfigureAwait(false);extracted_receipts = extract_receipts(input_doc, result_split.document.inference)<?php
$pageCount = $inputSource->countDocPages();
$totalExtractedReceipts = [];
$pages = $multiReceiptsResult->document->inference->pages;
for ($i = 0; $i < $pageCount; $i++) {
$receiptsPositions = $pages[$i]->prediction->receipts;
$extractedReceipts = $imageExtractor->extractImagesFromPage($receiptsPositions, $i);
$totalExtractedReceipts = array_merge($totalExtractedReceipts, $extractedReceipts);
}images = Mindee::Extraction::MultiReceiptsExtractor.extract_receipts(
input_source, result_split.document.inference
)for (Page<MultiReceiptsDetectorV1Document> page : resultSplit.getDocument().getInference().getPages()) {
List<ExtractedImage> subImages = imageExtractor.extractImagesFromPage(
page.getPrediction().getReceipts(),
page.getPageId()
);var imageExtractor = new ImageExtractor(inputSource);
foreach (var page in resutlSplit.Document.Inference.Pages)
{
var subImages = imageExtractor.ExtractImagesFromPage(
page.Prediction.Receipts, page.Id);
//...
}for idx, receipt in enumerate(extracted_receipts, 1):
result_receipt = mindee_client.parse(product.ReceiptV5, receipt.as_source())
print(f"Receipt {idx}:")
print(result_receipt.document)
print("-" * 40)
# Uncomment to save each extracted receipt
# save_path = f"./receipt_{idx}.pdf"
# receipt.save_to_file(save_path)<?php
foreach ($totalExtractedReceipts as $receipt) {
// Optional: save the extracted receipts to a file
// $receipt->writeToFile("output/path");
$result = $client->parse(ReceiptV5::class, $receipt->asInputSource());
echo $result->document . "\n";
}images.each do |sub_image|
# Optional: Save the files locally
# sub_image.write_to_file("/path/to/my/extracted/file/folder")
result_receipt = mindee_client.parse(
sub_image.as_source,
Mindee::Product::Receipt::ReceiptV5,
close_file: false
)
puts result_receipt.document
endfor (ExtractedImage subImage : subImages) {
// Optionally: write to a file
// subImage.writeToFile("/path/to/my/extracted/file/folder");
PredictResponse<ReceiptV5> resultReceipt =
mindeeClient.parse(ReceiptV5.class, subImage.asInputSource());
System.out.println(resultReceipt.getDocument().toString());
}foreach (var subImage in subImages)
{
// subImage.WriteToFile($"/path/to/my/extracted/file/folder"); // Optionally: write to a file
var resultReceipt = await mindeeClient.ParseAsync<ReceiptV5>(subImage.AsInputSource()).ConfigureAwait(false);
Console.WriteLine(resultReceipt.Document);
}########
Document
########
:Mindee ID: 8506a82c-bc1f-4d5b-abd1-174f60459091
:Filename: receipt_p0_0.pdf
Inference
#########
:Product: mindee/expense_receipts v5.1
:Rotation applied: Yes
Prediction
==========
:Expense Locale: fr-FR; fr; FR; EUR;
:Purchase Category: miscellaneous
:Purchase Subcategory:
:Document Type: CREDIT CARD RECEIPT
:Purchase Date: 2022-08-24
:Purchase Time: 12:45
:Total Amount: 16.50
:Total Net:
:Total Tax:
:Tip and Gratuity:
:Taxes:
+---------------+--------+----------+---------------+
| Base | Code | Rate (%) | Amount |
+===============+========+==========+===============+
:Supplier Name:
:Supplier Company Registrations: 81187803200010
:Supplier Address:
:Supplier Phone Number:
:Line Items:
Page Predictions
================
Page 0
------
:Expense Locale: fr-FR; fr; FR; EUR;
:Purchase Category: miscellaneous
:Purchase Subcategory:
:Document Type: CREDIT CARD RECEIPT
:Purchase Date: 2022-08-24
:Purchase Time: 12:45
:Total Amount: 16.50
:Total Net:
:Total Tax:
:Tip and Gratuity:
:Taxes:
+---------------+--------+----------+---------------+
| Base | Code | Rate (%) | Amount |
+===============+========+==========+===============+
:Supplier Name:
:Supplier Company Registrations: 81187803200010
:Supplier Address:
:Supplier Phone Number:
:Line Items:
########
Document
########
:Mindee ID: f8e5b080-533e-43b6-b4bb-ef77208a74a3
:Filename: receipt_p0_1.pdf
Inference
#########
:Product: mindee/expense_receipts v5.1
:Rotation applied: Yes
Prediction
==========
:Expense Locale: fr-FR; fr; FR; EUR;
:Purchase Category: food
:Purchase Subcategory: restaurant
:Document Type: EXPENSE RECEIPT
:Purchase Date: 2022-08-25
:Purchase Time: 12:43
:Total Amount: 21.50
:Total Net: 19.55
:Total Tax: 1.95
:Tip and Gratuity:
:Taxes:
+---------------+--------+----------+---------------+
| Base | Code | Rate (%) | Amount |
+===============+========+==========+===============+
| 19.55 | TVA | 10.00 | 1.95 |
+---------------+--------+----------+---------------+
:Supplier Name: CHES
:Supplier Company Registrations: 87880027500017
:Supplier Address: 35 rue charlot 75003 paris
:Supplier Phone Number: 0100000000
:Line Items:
+--------------------------------------+----------+--------------+------------+
| Description | Quantity | Total Amount | Unit Price |
+======================================+==========+==============+============+
| Repas | 1.00 | 21.50 | |
+--------------------------------------+----------+--------------+------------+
Page Predictions
================
Page 0
------
:Expense Locale: fr-FR; fr; FR; EUR;
:Purchase Category: food
:Purchase Subcategory: restaurant
:Document Type: EXPENSE RECEIPT
:Purchase Date: 2022-08-25
:Purchase Time: 12:43
:Total Amount: 21.50
:Total Net: 19.55
:Total Tax: 1.95
:Tip and Gratuity:
:Taxes:
+---------------+--------+----------+---------------+
| Base | Code | Rate (%) | Amount |
+===============+========+==========+===============+
| 19.55 | TVA | 10.00 | 1.95 |
+---------------+--------+----------+---------------+
:Supplier Name: CHES
:Supplier Company Registrations: 87880027500017
:Supplier Address: 35 rue charlot 75003 paris
:Supplier Phone Number: 0100000000
:Line Items:
+--------------------------------------+----------+--------------+------------+
| Description | Quantity | Total Amount | Unit Price |
+======================================+==========+==============+============+
| Repas | 1.00 | 21.50 | |
+--------------------------------------+----------+--------------+------------+
########
Document
########
:Mindee ID: 6812060a-b9e4-4e45-8492-00aef14de36d
:Filename: receipt_p0_2.pdf
Inference
#########
:Product: mindee/expense_receipts v5.1
:Rotation applied: Yes
Prediction
==========
:Expense Locale: fr-FR; fr; FR; EUR;
:Purchase Category: food
:Purchase Subcategory: restaurant
:Document Type: EXPENSE RECEIPT
:Purchase Date: 2022-08-22
:Purchase Time: 12:27
:Total Amount: 13.50
:Total Net:
:Total Tax:
:Tip and Gratuity:
:Taxes:
+---------------+--------+----------+---------------+
| Base | Code | Rate (%) | Amount |
+===============+========+==========+===============+
:Supplier Name: LA CERISE SUR LA PIZZA
:Supplier Company Registrations: 51092131500063
:Supplier Address: 14 rue froissart 75003 paris france
:Supplier Phone Number:
:Line Items:
+--------------------------------------+----------+--------------+------------+
| Description | Quantity | Total Amount | Unit Price |
+======================================+==========+==============+============+
| EMPORTER LA CASTE | 1.00 | 11.50 | 11.50 |
+--------------------------------------+----------+--------------+------------+
| CANETTE SODA | 1.00 | 2.00 | 2.00 |
+--------------------------------------+----------+--------------+------------+
Page Predictions
================
Page 0
------
:Expense Locale: fr-FR; fr; FR; EUR;
:Purchase Category: food
:Purchase Subcategory: restaurant
:Document Type: EXPENSE RECEIPT
:Purchase Date: 2022-08-22
:Purchase Time: 12:27
:Total Amount: 13.50
:Total Net:
:Total Tax:
:Tip and Gratuity:
:Taxes:
+---------------+--------+----------+---------------+
| Base | Code | Rate (%) | Amount |
+===============+========+==========+===============+
:Supplier Name: LA CERISE SUR LA PIZZA
:Supplier Company Registrations: 51092131500063
:Supplier Address: 14 rue froissart 75003 paris france
:Supplier Phone Number:
:Line Items:
+--------------------------------------+----------+--------------+------------+
| Description | Quantity | Total Amount | Unit Price |
+======================================+==========+==============+============+
| EMPORTER LA CASTE | 1.00 | 11.50 | 11.50 |
+--------------------------------------+----------+--------------+------------+
| CANETTE SODA | 1.00 | 2.00 | 2.00 |
+--------------------------------------+----------+--------------+------------+
########
Document
########
:Mindee ID: ac5a337b-7ca2-4acd-8a3f-a2cf54697ede
:Filename: receipt_p0_3.pdf
Inference
#########
:Product: mindee/expense_receipts v5.1
:Rotation applied: Yes
Prediction
==========
:Expense Locale: fr-FR; fr; FR; EUR;
:Purchase Category: food
:Purchase Subcategory: restaurant
:Document Type: EXPENSE RECEIPT
:Purchase Date: 2022-08-24
:Purchase Time: 12:45
:Total Amount: 16.50
:Total Net: 15.00
:Total Tax: 1.50
:Tip and Gratuity:
:Taxes:
+---------------+--------+----------+---------------+
| Base | Code | Rate (%) | Amount |
+===============+========+==========+===============+
| 15.00 | TVA | 10.00 | 1.50 |
+---------------+--------+----------+---------------+
:Supplier Name: BUR
:Supplier Company Registrations: FR95811878032
81187803200010
:Supplier Address: 22 rue rambuteau 75003 paris france
:Supplier Phone Number:
:Line Items:
+--------------------------------------+----------+--------------+------------+
| Description | Quantity | Total Amount | Unit Price |
+======================================+==========+==============+============+
| Repas | 1.00 | 16.50 | 16.50 |
+--------------------------------------+----------+--------------+------------+
Page Predictions
================
Page 0
------
:Expense Locale: fr-FR; fr; FR; EUR;
:Purchase Category: food
:Purchase Subcategory: restaurant
:Document Type: EXPENSE RECEIPT
:Purchase Date: 2022-08-24
:Purchase Time: 12:45
:Total Amount: 16.50
:Total Net: 15.00
:Total Tax: 1.50
:Tip and Gratuity:
:Taxes:
+---------------+--------+----------+---------------+
| Base | Code | Rate (%) | Amount |
+===============+========+==========+===============+
| 15.00 | TVA | 10.00 | 1.50 |
+---------------+--------+----------+---------------+
:Supplier Name: BUR
:Supplier Company Registrations: FR95811878032
81187803200010
:Supplier Address: 22 rue rambuteau 75003 paris france
:Supplier Phone Number:
:Line Items:
+--------------------------------------+----------+--------------+------------+
| Description | Quantity | Total Amount | Unit Price |
+======================================+==========+==============+============+
| Repas | 1.00 | 16.50 | 16.50 |
+--------------------------------------+----------+--------------+------------+
########
Document
########
:Mindee ID: 2fc54836-61eb-4c0f-b3f3-35717505f7aa
:Filename: receipt_p0_4.pdf
Inference
#########
:Product: mindee/expense_receipts v5.1
:Rotation applied: Yes
Prediction
==========
:Expense Locale: fr-FR; fr; FR; EUR;
:Purchase Category: food
:Purchase Subcategory: restaurant
:Document Type: EXPENSE RECEIPT
:Purchase Date: 2022-08-23
:Purchase Time: 12:52
:Total Amount: 14.50
:Total Net:
:Total Tax: 0.21
:Tip and Gratuity:
:Taxes:
+---------------+--------+----------+---------------+
| Base | Code | Rate (%) | Amount |
+===============+========+==========+===============+
| | TVA | 5.50 | 0.21 |
+---------------+--------+----------+---------------+
:Supplier Name: CHEZ ALAIN MIAM MIAM
:Supplier Company Registrations: 83833640200014
:Supplier Address: 26 rue char lot 75003 paris france
:Supplier Phone Number:
:Line Items:
+--------------------------------------+----------+--------------+------------+
| Description | Quantity | Total Amount | Unit Price |
+======================================+==========+==============+============+
| MIAM MIAM | 1.00 | 10.50 | 10.50 |
+--------------------------------------+----------+--------------+------------+
| Limonade | 1.00 | 4.00 | 4.00 |
+--------------------------------------+----------+--------------+------------+
Page Predictions
================
Page 0
------
:Expense Locale: fr-FR; fr; FR; EUR;
:Purchase Category: food
:Purchase Subcategory: restaurant
:Document Type: EXPENSE RECEIPT
:Purchase Date: 2022-08-23
:Purchase Time: 12:52
:Total Amount: 14.50
:Total Net:
:Total Tax: 0.21
:Tip and Gratuity:
:Taxes:
+---------------+--------+----------+---------------+
| Base | Code | Rate (%) | Amount |
+===============+========+==========+===============+
| | TVA | 5.50 | 0.21 |
+---------------+--------+----------+---------------+
:Supplier Name: CHEZ ALAIN MIAM MIAM
:Supplier Company Registrations: 83833640200014
:Supplier Address: 26 rue char lot 75003 paris france
:Supplier Phone Number:
:Line Items:
+--------------------------------------+----------+--------------+------------+
| Description | Quantity | Total Amount | Unit Price |
+======================================+==========+==============+============+
| MIAM MIAM | 1.00 | 10.50 | 10.50 |
+--------------------------------------+----------+--------------+------------+
| Limonade | 1.00 | 4.00 | 4.00 |
+--------------------------------------+----------+--------------+------------+
########
Document
########
:Mindee ID: dfb53ec3-7f05-4e6a-a26a-c727a52b8984
:Filename: receipt_p0_5.pdf
Inference
#########
:Product: mindee/expense_receipts v5.1
:Rotation applied: Yes
Prediction
==========
:Expense Locale: fr-FR; fr; FR; EUR;
:Purchase Category: miscellaneous
:Purchase Subcategory:
:Document Type: CREDIT CARD RECEIPT
:Purchase Date: 2022-08-23
:Purchase Time: 12:52
:Total Amount: 14.50
:Total Net:
:Total Tax:
:Tip and Gratuity:
:Taxes:
+---------------+--------+----------+---------------+
| Base | Code | Rate (%) | Amount |
+===============+========+==========+===============+
:Supplier Name:
:Supplier Company Registrations: 83833640200022
:Supplier Address:
:Supplier Phone Number:
:Line Items:
+--------------------------------------+----------+--------------+------------+
| Description | Quantity | Total Amount | Unit Price |
+======================================+==========+==============+============+
| NO AUTO: MONTANT | | 14.50 | |
+--------------------------------------+----------+--------------+------------+
Page Predictions
================
Page 0
------
:Expense Locale: fr-FR; fr; FR; EUR;
:Purchase Category: miscellaneous
:Purchase Subcategory:
:Document Type: CREDIT CARD RECEIPT
:Purchase Date: 2022-08-23
:Purchase Time: 12:52
:Total Amount: 14.50
:Total Net:
:Total Tax:
:Tip and Gratuity:
:Taxes:
+---------------+--------+----------+---------------+
| Base | Code | Rate (%) | Amount |
+===============+========+==========+===============+
:Supplier Name:
:Supplier Company Registrations: 83833640200022
:Supplier Address:
:Supplier Phone Number:
:Line Items:
+--------------------------------------+----------+--------------+------------+
| Description | Quantity | Total Amount | Unit Price |
+======================================+==========+==============+============+
| NO AUTO: MONTANT | | 14.50 | |
+--------------------------------------+----------+--------------+------------+import os
from mindee import Client, product
from mindee.extraction.multi_receipts_extractor.multi_receipts_extractor import (
extract_receipts,
)
def parse_receipts(input_path):
mindee_client = Client(api_key="my-api-key-here")
# mindee_client = Client() # Optionally, set from env.
input_doc = mindee_client.source_from_path(input_path)
result_split = mindee_client.parse(
product.MultiReceiptsDetectorV1, input_doc, close_file=False
)
extracted_receipts = extract_receipts(input_doc, result_split.document.inference)
for idx, receipt in enumerate(extracted_receipts, 1):
result_receipt = mindee_client.parse(product.ReceiptV5, receipt.as_source())
print(f"Receipt {idx}:")
print(result_receipt.document)
print("-" * 40)
# Uncomment to save each extracted receipt
# save_path = f"./receipt_{idx}.pdf"
# receipt.save_to_file(save_path)
if __name__ == "__main__":
input_file = "path/to/my/file.ext"
parse_receipts(input_file)
<?php
use Mindee\Client;
use Mindee\Extraction\ImageExtractor;
use Mindee\Input\PathInput;
use Mindee\Product\MultiReceiptsDetector\MultiReceiptsDetectorV1;
use Mindee\Product\Receipt\ReceiptV5;
$mindeeClient = new Client("my-api-key-here");
// $mindeeClient = new Client(); // Optionally, use an environment variable.
$inputPath = "path/to/your/file.ext";
function processReceipts($client, $inputPath) {
$inputSource = new PathInput($inputPath);
$imageExtractor = new ImageExtractor($inputSource);
$multiReceiptsResult = $client->parse(MultiReceiptsDetectorV1::class, $inputSource);
$pageCount = $inputSource->countDocPages();
$totalExtractedReceipts = [];
for ($i = 0; $i < $pageCount; $i++) {
$receiptsPositions = $multiReceiptsResult->document->inference->pages[$i]->prediction->receipts;
$extractedReceipts = $imageExtractor->extractImagesFromPage($receiptsPositions, $i);
$totalExtractedReceipts = array_merge($totalExtractedReceipts, $extractedReceipts);
}
foreach ($totalExtractedReceipts as $receipt) {
// Optional: save the extracted receipts to a file
// $receipt->writeToFile("output/path");
$result = $client->parse(ReceiptV5::class, $receipt->asInputSource());
echo $result->document . "\n";
}
}
processReceipts($mindeeClient, $inputPath);# frozen_string_literal: true
require 'mindee'
require 'mindee/extraction'
mindee_client = Mindee::Client.new(api_key: 'my-api-key')
def multi_receipts_detection(file_path, mindee_client)
input_source = mindee_client.source_from_path(file_path)
result_split = mindee_client.parse(
input_source,
Mindee::Product::MultiReceiptsDetector::MultiReceiptsDetectorV1,
close_file: false
)
images = Mindee::Extraction::MultiReceiptsExtractor.extract_receipts(input_source, result_split.document.inference)
images.each do |sub_image|
# Optional: Save the files locally
# sub_image.write_to_file("/path/to/my/extracted/file/folder")
result_receipt = mindee_client.parse(
sub_image.as_source,
Mindee::Product::Receipt::ReceiptV5,
close_file: false
)
puts result_receipt.document
end
end
my_file_path = '/path/to/the/file.ext'
multi_receipts_detection(my_file_path, mindee_client)
import com.mindee.MindeeClient;
import com.mindee.input.LocalInputSource;
import com.mindee.extraction.ExtractedImage;
import com.mindee.extraction.ImageExtractor;
import com.mindee.parsing.common.PredictResponse;
import com.mindee.parsing.common.Page;
import com.mindee.product.multireceiptsdetector.MultiReceiptsDetectorV1;
import com.mindee.product.multireceiptsdetector.MultiReceiptsDetectorV1Document;
import com.mindee.product.receipt.ReceiptV5;
import java.io.File;
import java.io.IOException;
import java.util.List;
public class AutoMultiReceiptExtractionExample {
private static final String API_KEY = "my-api-key";
private static final MindeeClient mindeeClient = new MindeeClient(API_KEY);
public static void main(String[] args) throws IOException, InterruptedException {
String myFilePath = "/path/to/the/file.ext";
processMultiReceipts(myFilePath);
}
private static void processMultiReceipts(String filePath) throws IOException, InterruptedException {
LocalInputSource inputSource = new LocalInputSource(new File(filePath));
PredictResponse<MultiReceiptsDetectorV1> resultSplit =
mindeeClient.parse(MultiReceiptsDetectorV1.class, inputSource);
ImageExtractor imageExtractor = new ImageExtractor(inputSource);
for (Page<MultiReceiptsDetectorV1Document> page : resultSplit.getDocument().getInference().getPages()) {
List<ExtractedImage> subImages = imageExtractor.extractImagesFromPage(
page.getPrediction().getReceipts(),
page.getPageId()
);
for (ExtractedImage subImage : subImages) {
// Optionally: write to a file
// subImage.writeToFile("/path/to/my/extracted/file/folder");
PredictResponse<ReceiptV5> resultReceipt =
mindeeClient.parse(ReceiptV5.class, subImage.asInputSource());
System.out.println(resultReceipt.getDocument().toString());
}
}
}
}
using Mindee;
using Mindee.Extraction;
using Mindee.Input;
using Mindee.Product.MultiReceiptsDetector;
using Mindee.Product.Receipt;
var myFilePath = "path/to/my/file.ext";
var mindeeClient = new MindeeClient("my-api-key");
async Task processReceipts(string filePath)
{
var inputSource = new LocalInputSource(filePath);
var resutlSplit = await mindeeClient.ParseAsync<MultiReceiptsDetectorV1>(inputSource).ConfigureAwait(false);
var imageExtractor = new ImageExtractor(inputSource);
foreach (var page in resutlSplit.Document.Inference.Pages)
{
var subImages = imageExtractor.ExtractImagesFromPage(page.Prediction.Receipts, page.Id);
foreach (var subImage in subImages)
{
// subImage.WriteToFile($"/path/to/my/extracted/file/folder"); // Optionally: write to a file
var resultReceipt = await mindeeClient.ParseAsync<ReceiptV5>(subImage.AsInputSource()).ConfigureAwait(false);
Console.WriteLine(resultReceipt.Document);
}
}
}
await processReceipts(myFilePath).ConfigureAwait(false);