I'll address your first question:
GA4 has the capability to track purchases and provide data on their sources, amounts, user information (primarily device and location), and other related metrics. However, this functionality doesn't come preconfigured with GA; you'll need to set up your tracking to send this information to GA.
The method to achieve this can vary. You can use Google Tag Manager (GTM), which may be a bit more complex. If your website is built on a popular CMS like WordPress, Shopify, or Squarespace, there are relatively easy GA integrations available to send sales data seamlessly.
However, you've mentioned a factor that might complicate matters: your monthly membership program. When measuring the effectiveness of a traffic source for such a program, it becomes more intricate. You may need to base your analysis on the first purchase and then determine the lifetime value of a single user, relying on estimations.
For complete accuracy, integrating a Customer Relationship Management (CRM) system or a similar solution that tracks individual membership payments and their frequencies is necessary. In GA, you primarily receive numerical data.
Regarding your second question:
It's likely feasible to create some form of visualization for this, although it may not precisely match your requirements. You could explore options to visualize this data in a tool like Looker Studio, but it would entail connecting different platforms, possibly including your email marketing platform.
To be honest, you're embarking on a somewhat complex task. It's certainly solvable, and you can work it out, but it may take some time. Depending on your budget, it might be worth considering bringing in someone with expertise to assist you with this.