This should be an easy question, but for some reason I have found some difficulty in finding resources that help with our simple use case:
Company A (does not use SalesForce) has data that they wish to send periodically to Company B's Salesforce. Company A will send the data using any format needed to fit Salesforce's data structures. Ideally this would be done via a REST API. Company B has created a connected app on their SF and provided Company A with the consumer key and secret. The problem is that sending data via the rest API using the consumer key and secret also requires an SF username and password for OAuth. Should Company B create a user account for Company A in addition to the consumer and secret for this type of integration to work? I went over the SF REST API docs but wasn't able to clarify. Specifically here:
In your client application, redirect the user to the appropriate Salesforce authorization endpoint. On successful user login, Salesforce calls your redirect URI with an authorization code. You use the authorization code in the next step to get the access token.
In our workflow, the user is not part of the process. Company A will have a backend process that will periodically format the data and send it to Company B.