1) You could use Digital File Pro to upload the file and move it to the correct location.
2) Use validation toolkit to validate the form and make sure it is .csv
3) Write code to open the file and store it as a string
4) Write code to use the php explode function (function.explode) to create a multidimensional array from the csv data stored as a string
5) Write php code by hand to loop through the parent array created above which would consist of one record per row. Here you may want to add some hand-coded validation to ensure the .csv has the correct number of columns and data format you expect for each row, and check to make sure the invoice number has not already been inserted.
6) Use dataAssist insert record server behavior to insert into the orders table referencing the field values from the nested array as if it was inside the loop you created... don't set a redirect page or it will only do the first one.
7) Manually move the code into the loop.
8) Write php code below using the same trigger that deletes the file and redirects to the proper page to show after completion.