The bottom line is that Microsoft Access is certainly not recommended for this task! Unfortunately, many organisations build systems in Access only to later hit the many and varied issues and limitations it has. so no matter what is said here, you will find it cheaper and easier in the long run to redevelop in a technology designed for the task.
The problem with using SharePoint, especially the Office 365 variant is that of CAL's (Client Access Licenses).
If you are happy to license all of your users including your vendors, then I'd say that SharePoint Online is a good way to go. You can then keep the data in a SharePoint list and either access it through web forms or use an Access database as a front end. Note that there are ways to give access to non-licensed users though you will need to carefully check the limitations in regard to how many "users" you are allowed and what it does to your security model.
If you are already running an on-prem version of SharePoint, you still need sufficient CAL's I think to allow full access for external users though you could make use of the web features that you don't really get in SharePoint Online. Creating a SharePoint instance just to do this I would think very expensive.
Without knowing the design of the database, the interface, the value, the required security, etc. it is pretty impossible to give a definitive answer in the end. I'd probably say that, unless you already have SharePoint and already have the in-house skills for developing it, I would look elsewhere. A decent web developer with SQL skills should be able to build something very quickly indeed.