Toivalan Metalli Oy

Toivalan Metalli Oy is a metal industry subcontractor based in Kuopio, Finland, known for its precision-engineered products, high-quality workmanship, and customer-focused service. The company has consistently developed its operations and continues to invest in its processes, employee expertise, and machinery to become a modern leader in the metal industry.
Order processing was time-consuming and required extensive manual work
Toivalan Metalli uses the Odoo ERP system to manage products, orders, production, and deliveries. The system plays a central role in the company’s daily operations, but before the new solution was introduced, processing orders involved considerable manual work to ensure that all information was entered into the system correctly.
Another challenge was that orders arrived in multiple email inboxes and customers submitted them in different formats. Some sent orders using PDF forms, others used Excel files, and some placed orders directly in the body of an email. Because Toivalan Metalli has an extensive product range and products are identified in Odoo by drawing numbers and revisions, every order had to be carefully reviewed manually.
Customers also frequently used their own product codes, which did not directly match the identifiers used in Odoo. Orders sometimes included variations in materials or colors, which had to be identified and checked individually. Estimating delivery times was also time-consuming, as the person processing the order had to gather information from several sources, including the customer’s requested delivery date, component availability, and lead times for different manufacturing stages.
Overall, order processing was slow, prone to errors, and heavily dependent on the knowledge and experience of individual employees.
An AI agent was introduced to streamline daily operations
We customized our Odoo AI order processing tool to help Toivalan Metalli handle incoming orders faster and more consistently. The tool reads orders received in different formats, structures their contents, compares the information against product data in Odoo, and highlights potential discrepancies before an order moves into production.
The project began with a thorough requirements definition phase. Together with Toivalan Metalli’s team, we reviewed order structures, common exceptions, customer-specific ordering practices, and Odoo’s product structures. This allowed us to tailor the solution to real-world situations and the company’s practical needs.
The solution was customized and tested using Toivalan Metalli’s actual order documents. Customer profiles can also include customer-specific instructions that the AI follows when interpreting orders. This helps the system recognize different customers’ document formats, product codes, and typical discrepancies.
A dedicated email address was created for the system, allowing orders to be forwarded automatically. The tool reads incoming messages and attachments, whether the order arrives as a PDF, an Excel file, or plain email text.
The system then extracts essential information, including products, drawing numbers, revisions, quantities, prices, and delivery details. Order header information, such as order numbers, contact persons, delivery addresses, and shipping and payment terms, is also populated automatically. Special customer instructions, such as purchase order numbers and job numbers that must appear on invoices, are saved in the order notes.
The extracted information is checked against Odoo’s product catalog and bills of materials (BOMs). For a new product, the tool suggests the closest matching bill of materials. Even when a customer uses their own product code, the correct product can be identified using its drawing number and revision.
Each order line displays a confidence score for the suggested match, and uncertain matches are flagged for review. If an order contains a discrepancy, such as a change in material or color, the system clearly highlights it for the person processing the order. Missing or conflicting information is also flagged so it can be verified before the order is approved.
The solution also helps estimate delivery times. It brings together the customer’s requested delivery date, component availability, and lead times for different manufacturing stages.
The person processing the order can immediately see an estimate of whether the requested delivery date is realistic or whether further discussion with the customer is needed before confirmation. The suggested date is based on availability and manufacturing lead-time data from Odoo, taking material shortages and purchasing delays into account. The system also explains the reasoning behind its estimate, allowing the user to recalculate it or adjust the date before saving.
All order processing staff have access to the same orders, and the system shows who is handling each one. This makes it easier to distribute work, reduces duplicate effort, and helps orders move smoothly through the approval process.
When an order has no discrepancies, it can be approved with a single click. With automatic processing enabled, the order can also be transferred directly to Odoo as a sales order. The customer then receives an automatic order acknowledgment.
If discrepancies are detected, the order remains available for manual review. The person handling it can see a list of issues, correct the relevant order lines, and approve the order.
The solution was implemented as a cloud-based service that integrates with Odoo through its REST API. Data transmission is encrypted, the server environment is monitored, data is backed up automatically, and all data is stored within the EU.
The tool is provided under a licensing model that includes the server environments, language model usage costs, integration maintenance, version updates, and support.
Technologies: Azure, OpenAI, Python, TypeScript, React
Less manual work, better visibility, and smoother order processing
The solution reduces the manual work involved in processing orders because incoming orders are automatically imported into the system, eliminating the need to enter individual order lines into Odoo by hand. This allows employees to focus more on reviewing exceptions and making decisions that require human judgment.
The tool speeds up the verification of drawing numbers, revisions, and other product information, reducing order processing times. By identifying discrepancies earlier, it also reduces the risk of errors. At the same time, delivery estimates can be generated using more up-to-date information, making it easier to provide customers with realistic delivery commitments.
The solution also improves visibility across the entire order processing workflow. With clearer information about order statuses, outstanding issues, and task assignments, teamwork becomes easier and daily operations more manageable.
For Toivalan Metalli, the solution represents an important step toward faster, more consistent order processing that relies less on the knowledge and experience of individual employees.
Want to reduce the manual work involved in order processing and get orders moving faster? Get in touch, and let’s explore how an AI order processing tool could fit your processes.
Ready to get started?
"*" indicates required fields
