openfoodfoundation / wishlist

This repository welcomes ideas and suggestions to improve the OFN software.
3 stars 0 forks source link

Improving error message on the Confirmed Subscriptions email, for failing payments #378

Open filipefurtad0 opened 4 years ago

filipefurtad0 commented 4 years ago

Description

While testing openfoodfoundation/openfoodnetwork#5751 it was noticed that the hub receives a somewhat misleading and not very helpful error message in the Confirmed Subscriptions email, when subscription payments fail:

Paiement échoué (2 commandes)

Le traitement automatique des paiements pour ces commandes a échoué. L'erreur a été affichée à l'endroit pertinent. R433887116,R738717157

This corresponds to the section in the en.yml file:

subscription_mailer: failed_payment: title: Failed Payment (%{count} orders) explainer: Automatic processing of payment for these orders failed due to an error. The error has been listed where possible.

This enhancement discussed with @sauloperez and would consist in a more informative message. Which text should be shown here instead is open for discussion.

Expected Behavior

A more informative error message on the Confirmed Subscriptions email.

Actual Behaviour

The error message on the email is not particularly informative.

Steps to Reproduce

  1. Customer: Set up an invalid card and set it as "Allowing Charges" for the hub which will manage subscriptions. Take, for example, the fraudulent card 4100000000000019. (note that the expired card 4000000000000069 will not be accepted by the frontend.)
  2. Hub: Create a subscription for this customer.
  3. Run the procedure in the app or using the procedure described here.
  4. Check the Confirmed Subscriptions Email (Hub)

Please see also comment.

Animated Gif/Screenshot

image

Erioldoesdesign commented 4 years ago

Looks like this papercut needs some copywriting/ UX copy.

Guidance on this (for all languages) is to explain the problem in the most simple terms and for general guidance a 5 year old child should understand the logic of what's happening in messaging (this is often quite hard to achieve!)

In this case, it'd be most helpful to let the user receiving the email know why it has failed e.g. Customer card expired, payment vendor down, OFN server down etc. if we indeed know why. If not, it's fine to be abstract, then we want to offer a route or steps to solution so: contact the customer, try to take payment again etc.

So for English version something like:

"This payment has failed due to [reason for the error eg. customers entered card details wrong] we recommend that you take these steps to resolve the error:

  1. Check customer card details with customer
  2. Check if the payment provider is operating or has planned or unplanned maintenance.
  3. Next step etc. etc.
jibees commented 2 years ago

(looks like) Papercut confirmed.