Hello, I suppose that you want to prepare some interface to import invoices from other external system. For that purpose it is better to use External Supplier Invoice functionality. You have to prepare a file with invoices and import with Assistant.
The external supplier invoice where a file is loaded with N invoices. It allows a configurable templates / numerous options for data structure an processing with / without image data.
Loading XML - The XML is dropped into an inbox and the message is handled via IFS.
PLSQL script in my opinion is far less common and probably far more difficult. The supplier invoice is an extremely large group of code and offers great flexibility / functionality.
Both input functions above external supplier invoice and XML based message already have the flexibility / data management within the solution.
If you wish to create a real time interface, I would lean towards the XML. Batch type process, I would lean towards external supplier invoice. It can be automated.
Just FYI, typically, we would consider self-billing functionality for that use case, automate a AP invoice due to PO arrival. Self-billing does have some limitations, but it is a common solution where needed.