woocommerce / woocommerce-gateway-stripe

The official Stripe Payment Gateway for WooCommerce
https://wordpress.org/plugins/woocommerce-gateway-stripe/
229 stars 200 forks source link

[settings] Implement fees structure #1766

Open harriswong opened 2 years ago

harriswong commented 2 years ago

Description

Each of these fees should be based on https://stripe.com/pricing. Should we based on US' pricing (https://stripe.com/en-us/pricing)? image

For SEPA Debit, Sofort, etc, their fees are also different, check under https://stripe.com/pricing/local-payment-methods.

Ref: p1630359111034500-slack-C02BHNRN6R1

Acceptance criteria

harriswong commented 2 years ago

@tommyshellberg , thanks for picking this up! Here are some quick updates on the ticket status:

tommyshellberg commented 2 years ago

We'll want to use the PoC here as a starting point, avoiding any links in the tooltip: https://github.com/woocommerce/woocommerce-gateway-stripe/pull/1843

I posited a question about whether or not we want to store these fees or simply hard-code them and display them dynamically based on the country code:

p1631785309131100-slack-C01RTUVR81K

From the team meeting: we think it's easiest to create a static data file(JSON probably) with all of the fees coded in. Then, when we need to display fees, we look up based on the country code + payment method.

IMO we should display in the status pill only the base fee. When we hover over the pill and show a tooltip then show the other possible fees(international fee, foreign exchange fee) but not the total fee since it's too complicated to calculate and may only be correct for some transactions, not all.

tommyshellberg commented 2 years ago

Second question: which countries do we need to support for launch? It sounds like we need to have all fees for the entire spreadsheet completed since we're turning on the flag for everyone at the same time.

Would it be possible to get a fees breakdown in a more friendly way for us(JSON file)? Converting from a spreadsheet to JSON isn't super friendly.