PDF invoice sending automation

Hi everyone,

Would like to know if it is possible to automate the process of sending invoices to customers.
Before we start will provide you with the data that we have, so we can connect the dots and automate the whole process.


  1. PDF files (opened via Adobe Acrobat or PDF24)
  2. Emails list (Using web Excel or Google Sheets)
  3. Edge Browser (Other versions not available)
  4. Delays due to working on a Virtual Machine using AX2012 Microsoft Dynamics

The Process
The sales order is created by a user (human) then the order is picked up, then the sales order gets processed on AX2012 then the invoice is created in Adobe Acrobat Reader still in VM, then the file is saved in USB Pin Drive locally then it is being opened using PDF24 then the option of sending in PDF24 is clicked, a new web tab is opened, log in details is inserted, then a click is done to selected Invoice Template which will include that attached PDF invoice file, then a new tab will be clicked to take the email address of the customer and add it to the web page that was opened via PDF24 then the user will click send, and the same process will be repeated again.

The Objective
To use UI. Vision to automatically go through or open PDF saved files locally or saved on Google Drive, then after it can access the PDF files, it can use English OCR to identify the address of the company and match it up with its designated email address from the Excel or Google Sheets list, after that it will automatically send it to the customer using the preloaded template from PDF. Later if possible to add an option or a list of shipped items to ensure that this sales order (SO) has been sent to this customer using this email address.

Some of these tasks might not be feasible, however, if we can manage at least to automate some of the phases, that would be very good.

Please do let me know what you think
Feel free to add me on social media and GitHub using:

Medo Hamdani

The simplest solution to perform this job is to create a folder with all the PDF files ordered by names, then create a csv archive with the specified email and name of the pdf and finally create an automation that reads the csv file and extrapolates the emails and names of PDF file to send. It is a complex job in any case, it will have to be well studied and it takes a long time because in case of errors (sending the pdf to the wrong email) it will be a problem

Why the local usb drive step inbetween? IMHO you should add the order to a server database and this whole open pdf or OCR steps etc would totally not be needed. You can create a new pdf if needed but it feels to me as a developer without disrespect that you are complicating things that are not needed.


Is there is a way to rename files since the PDF file when its saved, it is saved with a different name, so if possible if there is a possible way to read the PDF file and take the company name and then rename the file, so later it can match the email address.

The USB Drive, since in the company we are using VM (Virtual Machine) to use AX2012 and to open a free version of Adobe Acrobat, therefore there is a possibility to save the files the documents folder on the desktop, and the USB can be disregard, however the point of adding the order to a server database is not clear.

Power Automation It might be useful what do you think?

I overlooked the part that you are using AX2012 Microsoft Dynamics . BUT…again that makes it even easier as all the details are already in a SQL database.
So let me try to explain my thoughts and why I think your whole process of puting it on a stick etc is not efficient. I do assume your VM can be reached by the internet from the point of the user doing that processing.

  • When creating the invoice the file should be saved and a table in the database should be there to hold the name of the file/invoicenumber and it’s location (google drive etc)
  • The user processsing the order should have a new interface that shows the details of the order and only 1 button to click send. The whole process of entering data again should not be there as these details are already in your database and they can be displayed in the screen of that user just to verify and maybe there should be a function to edit or something but that user should not have to copy paste anything.
    In the backend, the system “knows” which order it works on so also which company, which address and which invoice as that was saved in that table.

In short, you make the pdf yourself, so then it makes no sense trying to read it through ocr again imho and what you describe should be handled at the backend and not by the user.
Hope this helps a bit

In my opinion this is not a job to automate, it is simpler, safer and less expensive to use a program to issue invoices that sends them via email and therefore avoids creating complex macros to implement. Implementing a complex macro takes time and also high costs so it makes no sense to automate a job of this type with better invoicing software that can be easily automated.

Hi Edynas,

Hava a look at this video
AX2012 should do that by default (sending invoices), although it does that while sending a quote, but it doesn’t send the invoice as simple and as fast as the quote. In order to send the invoice the normal way, it will take the user quite some time to process every and each invoice (roughly between 2-3 minutes to process each invoice without calculating the delay and the lag due to VM connection)
That’s why a new automated system is needed to process all of the invoices at least using the classic way of click>hold>delay>force resend> okay> and wait> repeat

Hope that was clear and thanks much for your help, will do update you guys with new updates.

Could you suggest such a program?

Electronic invoicing is in force in my country and invoices are sent automatically with a click, surely there is also software in your country that can do this

Well, in AX2012 there should be, but it is slow and it is not with one click, it needs several clicks and some delays due to VM