What is your goal?
Hey techies I am building an automation in Make where invoices received by email are processed automatically.
My current scenario is you should know
I am working in a company at CSG Technosol Pvt Ltd, a software development conpany
My needs are
Watch incoming emails with invoice attachments.
Extract the PDF attachment.
Send the document to an AI Agent to identify fields such as:
Invoice number
Customer name
Total amount
Invoice date
Search my CRM using the invoice number.
If the invoice doesn’t exist, create a new record.
If it already exists, update the existing record.
The workflow works most of the time, but I’m running into an issue when multiple emails are processed at nearly the same time. Occasionally, the same invoice is created twice because both executions perform the search before either one creates the record.
I have already tried:
My questions are:
Is there a recommended pattern in Make for preventing duplicate records in concurrent scenarios?
Would using a Data Store as a locking mechanism be a better approach?
Has anyone implemented a similar AI document-processing workflow and found a reliable solution?
Any suggestions or best practices would be appreciated.
What is the problem & what have you tried?
Searching the CRM by invoice number before creating a record.
Adding filters and delays between modules.
Using error handlers and retries.
However, duplicate records still occur during concurrent executions.