Automattic / woocommerce-payments

Accept payments via credit card. Manage transactions within WordPress.
https://wordpress.org/plugins/woocommerce-payments/
Other
172 stars 69 forks source link

Update APMs so that they are only available in eligible countries #7752

Closed csmcneill closed 7 months ago

csmcneill commented 9 months ago

Describe the bug

Currently, APM availability is only based on currency. However, APMs will not be successful unless the customer making the purchase also has a billing address within one of the supported countries:

To Reproduce

  1. Onboard an account
  2. Set the site's default currency to USD
  3. Enable multi-currency
  4. Add EUR as a multi-currency option
  5. Enable all of the APMs
  6. Navigate to the site as a customer
  7. Ensure the currency is displaying in USD
  8. Add a product to your cart
  9. Navigate to the checkout page
  10. Use a US-based address, such as 13350 Dallas Parkway, Dallas, Texas, 75240
  11. Note that no APMs display (aside from eligible BNPL options)
  12. Change the site currency to EUR
  13. All APMs are displayed — even though the customer address is not in an eligible country.

Actual behavior

If a customer attempts to make a purchase via an APM

Screenshots

CleanShot 2023-11-20 at 12 19 07

Expected behavior

According to Stripe...

All the requirements must met for them before they can use it. Like, yes, the billing address and of course they have an existing account in bank account in Poland in order to proceed with this transaction. […] if they don’t have like the billing address and the bank account in Poland. They cannot proceed in the checkout.

...which means that if customers who are not based in an eligible country are given an APM option on checkout (e.g., a US customer attempting to make an EUR purchase via P24), it could result in an increase in failed payments, reduced conversion rate, etc. because they cannot complete that payment.

Additional context

p1699860576681379-slack-C3NCP7ZJ6 7182694-zd-a8c 7317781-zd-a8c

htdat commented 9 months ago

This issue impacts "Additional Payment Methods", so assigning to Heisenberg (based on team responsibilities Pc2DNy-3z-p2) cc team lead @frosso.

Assigning as part of Gamma Triage process PcreKM-yM-p2.

jtobiesen commented 7 months ago

zen-7593291