This can be done, but with limited information it is difficult to give you the right answer.
The button will be a url something like
flow/NameofMyFlow?varinmyflow={!Account.Id}&retURL={!Account.Id}&saveURL={!Opportunity.Id}
varinmyflow is a variable you set in your flow, assuming you need account variables to be passed from the account you are on to the flow creating the new records.
To create one record on one object, you will use record create. If you are creating multiple records on one object you use fast create. Fast is for lists.
I recommend the site below as it is the best resource I have found for visual workflows.
https://salesforcesidekick.com/2015/05/09/how-to-use-a-record-create/
This is not my site, but it has the best information on this topic I have found.