Automattic / wp-calypso

The JavaScript and API powered WordPress.com
https://developer.wordpress.com
GNU General Public License v2.0
12.4k stars 1.98k forks source link

Migration signup flow: Incorrect INR/MXN/PHP plan price and refund period #92210

Open niranjan-uma-shankar opened 2 months ago

niranjan-uma-shankar commented 2 months ago

Quick summary

Refer paYKcK-4P7-p2#comment-3558. In the plans step of https://wordpress.com/setup/hosted-site-migration/, the refund period for monthly plans is wrongly shown as 14 days. In INR, MXN, and PHP currencies, the plan price displayed does not include the 20% discount.

Steps to reproduce

  1. On a logged-out incognito window, visit wordpress.com/?currency=INR to set your browser currency. Wait till the plan prices are rendered on the page.
  2. Now navigate to https://wordpress.com/setup/hosted-site-migration/ by pasting this in your browser address bar. After you've signed up, enter "matt.com" in the "Let's find your site" step. In the next step to import content, select WordPress, and in the next step select "Migrate site".
  3. In the next step, select "I'll do it myself"
  4. You should now be on the plans step.

What you expected to happen

  1. Plan price for the Creator plan should be INR 640 with a 20% discount.
  2. Refund period for a monthly plan should be 7 days.
  3. Selecting Monthly from the dropdown should show the support option crossed-out.

What actually happened

  1. Plan price for the Creator plan is displayed as INR 800.
  2. Refund period for the monthly plan is displayed as 14 days.
  3. Monthly plan is shown to have "Priority 24/7 support".
Screenshot 2024-06-28 at 3 36 55 PM Screenshot 2024-06-28 at 3 39 17 PM

Impact

All

Available workarounds?

No but the platform is still usable

Platform (Simple and/or Atomic)

No response

Logs or notes

No response

niranjan-uma-shankar commented 2 months ago

FYI @Automattic/serenity team and @Automattic/martech-decepticons .

daledupreez commented 2 months ago

Thanks for reporting, @niranjan-uma-shankar! I'll take a look at both items -- @Automattic/nexus have also been working on this page.

daledupreez commented 2 months ago

Hmmm... The issue with the incorrect price is/was caused by https://github.com/Automattic/wp-calypso/pull/92088, which we merged late yesterday. After that change, we're using the site-specific plans API so we can pick up any introductory offer data. However, we're intentionally using the getSitePlanRawPrice() selector because it ignores the discounted price, as we don't want to include discounts stemming from the plan upgrade credit. However, I don't see any way to determine the cause/origin of the discount.

@niranjan-uma-shankar, is that 20% discount an upfront discount or an ongoing/always-on discount?

niranjan-uma-shankar commented 2 months ago

The issue with the incorrect price is/was caused by https://github.com/Automattic/wp-calypso/pull/92088,

Looks like this PR was merged just 17 hours back but I was seeing the issue with the price even much earlier, as reported in paYKcK-4P7-p2#comment-3558.

is that 20% discount an upfront discount or an ongoing/always-on discount?

The 20% discount is offered to users who are on the free plan (and that includes just signed up users who are seeing the /start/plans page in the signup flow), and is applicable to only the 1Y plan. The discount does not apply to upgrades or renewals, and is shown only to three currencies - INR, MXN, and PHP. Does this help answer your question?

niranjan-uma-shankar commented 2 months ago

I see this issue is referenced in https://github.com/Automattic/wp-calypso/pull/92205. @aneeshd16 does your PR help fix the pricing issue reported here?

aneeshd16 commented 2 months ago

Hi @niranjan-uma-shankar! No, my PR does not fix that issue. I think this issue is being discussed here: https://github.com/Automattic/wp-calypso/pull/92088#discussion_r1658517640

daledupreez commented 2 months ago

Thanks for flagging the earlier pricing issue, @niranjan-uma-shankar. I think we actually have an underlying design/UX bug that has influenced all the implementation: we don't have a clear path for showing discounts or introductory offers in the component. A key part of this is that we show free trials in some cases as well.

But the offshoots of that mean that we've never included discount pricing of any kind. So we've always used "the price". The changes that we shipped late last week mean that we can detect site-specific discounts, including the plan upgrade credit, but my work in https://github.com/Automattic/wp-calypso/pull/92094 means we're now mimicking the /plans/:siteSlug page in showing a banner for the plan upgrade credit. But as things stand, this specific component doesn't have a good way to show these discounts, so we need to solve for that before we incorrectly communicate renewal pricing to users.

This closely ties in to @aneeshd16's comments in https://github.com/Automattic/wp-calypso/pull/92205 - we have a component that got built to display plan pricing without much familiarity around the possible mechanics involved in pricing and discounts. We've started moving in the right direction as we started working towards some introductory offers, but we still have a gap.