Considering Learning Drupal

Hello everyone!

    I am an amateur developer, and primarily use WordPress for my clients. WordPress has become boring, and I am looking for more of a challenge, and I have also taken on a pretty intense project. I am not sure really what to use to build it. I am familiar with all front-end languages, but this project will require an intense back-end as well. Let me know if you think Drupal would be able to help out in anyway with this!

A website for an association/network of providers. 

Will have the ability to sell a consumer membership and a provider membership

Providers will need to be able to submit invoices to the association through their own portal, as well as schedule training, pay yearly dues, and general portal functions. 

Consumers will need to be able to sign up, log into the portal, pay dues, search providers, view uploaded invoiced uploaded by providers, and schedule with providers. 

The site will need a search function to search values entered by association off of invoices submitted by providers. This number would be an identification number for the consumer product being serviced.

The association will need to be able to coordinate billing, manage consumer and providers, view invoices per particular provider, approve provider applications through a workflow process, and manage the database of identification numbers/invoices.

A non-member consumer would have the ability to pay for a search in the identification number database to generate a report of the invoice records of a particular consumer product. Kind of a carfax report but different product.

Its all pretty easy to draw out on paper, but getting a system to handle that many workflows is well above what WordPress can do from what I have seen. Any suggestions?

Drupal version: