These are all very good technical solutions, but there is a business problem not addressed in any of the comments, Supplier Onboarding. This is the general term, and requires data to be mapped from the supplier data to Magento. Any solution from csv to api to magmi to other tools must deal with currency conversion (checkout currency to website pricing), mapping of products from one category to another, cleaning of the data, mapping of brands to single names. Once the initial data loads are done you then have pricing and inventory updates, automatically removing un-necessary products (in a way which does no 404). On top of that if you sql insert or Magmi or switch off index on save, this causes many other problems if you have products in the 10s thousands as you need to reindex constantly putting load on servers and also causing some frontend issues.
The more you want to automate this process the more complex the solution, if you are not dealing with suppliers then it is very simple as you will not have more than a few hundred products so onboarding is very simple and can be done directly. We use a solution from some multi-national consultants who adapted it for small business, this allows us to supplier onboard with mappings taking one hour (no coding) and fully automated from supplier file download to Magento import. Most do not have this so it is a rather painful process.