
Announcements
I've been testing multiple apps and services in Power Automate to convert PDF invoices into CSV files. These invoices will come from many different vendors, and each will have a unique layout and format. I work for an accounting firm, and automating this process would be a huge win for what is currently a tedious daily task.
Before I continue with my testing, does anyone have a similar flow running in production that works across different invoice formats and vendors? What tools or services have you had the best success with?
Any suggestions would be greatly appreciated!
AI Builder lets you train custom models to extract structured data from invoices.
You upload a set of sample invoices (about 5-15 per vendor/layout) to teach the model key fields like vendor name, invoice number, date, total, line items, etc.
AI Builder can handle multiple invoice formats if you train a model with diverse examples.
Pros: Low code, no deep ML expertise required, integrates natively with Power Automate.
Cons: Model training required per vendor, limited for highly complex layouts.
Azure Form Recognizer is a cognitive service specialized in document extraction.
It supports prebuilt models for invoices and also lets you create custom models.
You can train with multiple vendor samples to increase accuracy.
Integrates with Power Automate via HTTP connector or Azure Logic Apps.
Pros: High accuracy, supports complex and multi-layout extraction, scalable.
Cons: Requires Azure subscription and some developer setup.
Trigger: When a PDF invoice is received (e.g., from email or SharePoint folder).
Action: Pass the PDF to AI Builder or Azure Form Recognizer.
Parse the extracted JSON output to get invoice fields.
Transform the extracted data into CSV format (using Power Automate expressions or compose actions).
Store or send CSV: Save to OneDrive/SharePoint or email the CSV file.
Train AI Builder/Azure Form Recognizer with samples from all known vendors.
Use conditional logic in Power Automate to route different vendor invoices to appropriate models if you use multiple models.
For unknown layouts, consider fallback manual review or a generic template.
If I have answered your question, please mark it as the preferred solution ✅ . If you like my response, please give it a Thumbs Up 👍.
Regards,
Riyaz