cocalc icon indicating copy to clipboard operation
cocalc copied to clipboard

Simplify subscription interface and do not show confusing details to users

Open novoselt opened this issue 1 year ago • 3 comments

These are details for a subscription that will renew soon: image I think that what it means is:

  • the subscription will renew in 5 days
  • that coming period is not paid for yet
  • the user can pay now by pressing the button, otherwise it will be paid for automatically, either using the balance, if it is sufficient, or generating a Stripe transaction

I claim that it is completely unreasonable to expect a regular user to come up with this train of thoughts...

What should be shown:

  • the monthly price
  • the next renewal date
  • IF for some reason the renewal transaction does not go through, show something AFTER we have tried to renew it, NOT before!

As a comparison, this is what Google shows for a subscription renewing in a week: image The amount of the future charge is clear, the date of that charge is clear, and NO scary messages that the subscription is unpaid!

novoselt avatar Dec 07 '23 04:12 novoselt

What if they do not have automatic payments enabled?

-- William Stein

On Wed, Dec 6, 2023 at 8:44 PM Andrey Novoseltsev @.***> wrote:

These are details for a subscription that will renew soon: image.png (view on web) https://github.com/sagemathinc/cocalc/assets/1993227/50c436a8-9240-4163-9ee2-962e68b9a150 I think that what it means is:

  • the subscription will renew in 5 days
  • that coming period is not paid for yet
  • the user can pay now by pressing the button, otherwise it will be paid for automatically, either using the balance, if it is sufficient, or generating a Stripe transaction

I claim that it is completely unreasonable to expect a regular user to come up with this train of thoughts...

What should be shown:

  • the monthly price
  • the next renewal date
  • IF for some reason the renewal transaction does not go through, show something AFTER we have tried to renew it, NOT before!

— Reply to this email directly, view it on GitHub https://github.com/sagemathinc/cocalc/issues/7109, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAJXS5XM7PUAQHJNCSHGM23YIFCTFAVCNFSM6AAAAABAKOCT3WVHI2DSMVQWIX3LMV43ASLTON2WKOZSGAZDSOBYG44TAMQ . You are receiving this because you are subscribed to this thread.Message ID: @.***>

williamstein avatar Dec 07 '23 05:12 williamstein

What if they do not have automatic payments enabled?

Also, I should check to see how many subscriptions without automatic payments exist. We made that possible, but I don't know if anybody actually does it.

williamstein avatar Dec 07 '23 05:12 williamstein

One option is to make what is displayed depend on existence of any automatic payment method on file (including sufficient balance to cover the next charge).

Another is to add more information to the current display to increase clarity. Red "Unpaid" status for a subscription which is paid for right now makes no sense to me at all. It has to be something positive and green until the next payment fails. There can be another column titled "Next charge on" with a date and there can be a button "Pay Now" or a message that it will be automatically charged. Although I think there is no need in the message. The price is shown, the date is shown, it is clear what should happen.

Instead of "Current Period" there can be "Paid Till" or something similar. Then it is also feasible to prepay for several months in advance, if desired. This may be unnecessary complication, but I think it would be more clear than "current period".

novoselt avatar Dec 07 '23 18:12 novoselt

Not some random user, but I got pretty scared seeing this message for a large scale subscription: image

There is a message about update to automatic payments required on the account, but there is plenty of balance to cover this subscription for a few more month. I strongly object to this "Unpaid" status - it IS paid for, 3 days into the future! The renewal is not paid for yet and it can be displayed if it is clearly explained what exactly is unpaid...

novoselt avatar Jul 07 '24 17:07 novoselt

I strongly object to this "Unpaid" status - it IS paid for, 3 days into the future! The renewal is not paid for yet and it can be displayed if it is clearly explained what exactly is unpaid...

If you're going to strongly object, I hope you also have time to write a precise proposal for what to do instead. Thanks.

williamstein avatar Jul 07 '24 17:07 williamstein

My understanding is that the label is determined by https://github.com/sagemathinc/cocalc/blob/master/src/packages/frontend/purchases/subscriptions.tsx#L60 If "unpaid" status is essential for inner workings and subscription renewal, which certainly may be the case, I would at least make the logic of this particular function more complicated - if the subscription is paid through some future date, show it as "active" even if "the actual status" is "unpaid".

novoselt avatar Jul 07 '24 19:07 novoselt