Go to a premium theme like this https://wordpress.com/theme/floral
Click the “Pick this design $xx” button
Select my premium site. E.g: premium.wordpress.com
The button “Purchase” displays
I am redirected to https://wordpress.com/checkout/premium.wordpress.com/theme:floral
Looks wrong to me. I delete this theme from the cart.
I go to this link https://wordpress.com/themes/premium.wordpress.com. I can add any theme freely here.
I am using Mac on Chrome.
Tested and confirmed that with a Premium Plan active I can activate premium themes from within my Calypso site dashboard at https://wordpress.com/themes/:site: but I am asked to pay for the theme for the same site if I start from https://wordpress.com/themes such as https://wordpress.com/theme/floral or from the All Sites view.
Dupe of https://github.com/Automattic/wp-calypso/issues/157? I hope that after ridding ThemesSiteSelectorModal of sites-list, we might finally be able to implement something like this. Feel free to ping me for further info.
Hey @ockham, I have been testing for a bit, and yes, indeed it is a duplicate. I'll ping you later on, so we can work together on this.
@mendezcode https://github.com/Automattic/wp-calypso/pull/9368 might be helpful to get in first
This came up again in a customer feedback survey:
Customers are occasionally charged for premium themes even when they have a Premium plan
I encountered this issue with the theme flow today when testing a premium site.
I ran into this while testing https://github.com/Automattic/wp-calypso/issues/21075. I can reproduce it with the steps above for an account with multiple sites, and for an account with a single site (a more likely case since most users have only one site).
Here's a screencast on an account with a single site (on the Premium plan):

I got hopeful when I first saw the message "Woohoo! You don't owe us anything!" on the checkout page, but that was while the price was being calculated. That message was then replaced by the checkout screen charging me for the theme.
However, for accounts with only one site, I noticed that if you wait on the theme detail page for a bit, the "Pick this design $xx" button changes to "Activate this design" and you can activate the theme for free. So it seems it's more of an issue for accounts with multiple sites.
As I mentioned here, how about changing how we handle /theme to work like how /customize is handled: require site selection before showing themes?
If that's done, it's probably worth ensuring that users who aren't signed in don't need to select a site, as is currently the case.
Most helpful comment
If that's done, it's probably worth ensuring that users who aren't signed in don't need to select a site, as is currently the case.