woocommerce-android icon indicating copy to clipboard operation
woocommerce-android copied to clipboard

[Order Details] Show a note "Awaiting payment by Cash on Delivery" for unpaid CoD orders

Open kidinov opened this issue 2 years ago • 5 comments

Image

Previously, we showed a descriptive label saying "Awaiting payment via Cash on delivery" in the Paid $0 row. Now that has been removed as superfluous information, but the "Awaiting payment" message was useful to make it clear to the merchant that the order has not been paid for yet.

  • [ ] Add the "Awaiting payment" message back in its own row.

Context: p91TBi-8P0-p2#comment-10421

kidinov avatar Jun 20 '22 12:06 kidinov

Fails
:no_entry_sign: Please add a type label to this issue. e.g. 'type: enhancement'
:no_entry_sign: Please add a feature label to this issue. e.g. 'feature: stats'

Generated by :no_entry_sign: dangerJS

peril-woocommerce[bot] avatar Jun 20 '22 12:06 peril-woocommerce[bot]

@joshheald I'm a bit confused here, need your help 😃

We still do show awaiting payment note for the orders which are:

datePaid == null and paymentMethodTitle.isEmpty and status in [Pending, OnHold]
image

For orders made on a website, it works this way, because the order comes as unpaid OnHold, with Cash on delivery title

For the orders created in the app, paymentMethodTitle is empty that's why we can not show Awaiting payment via {placehodler} note. paymentMethodTitle used for the placeholder

What exactly do we want to get as a result here?

kidinov avatar Jun 21 '22 13:06 kidinov

I think that @joe-keenan was expecting that we wouldn't show the Awaiting Payment line for those orders, because we would not show the Paid $0 row that it's shown on, because of the amount being 0.

I thought that Android already didn't show the Paid row if there was no payment, and that iOS was catching up with that to remove the Paid row when it's $0: see p91TBi-8P0-p2#line-items-in-the-payment-section

As for text, my suggestion would be to make it say Awaiting payment without the via clause, when we don't have a paymentMethodTitle

joshheald avatar Jun 21 '22 13:06 joshheald

@joshheald

So:

  • We hide the Paid row when it's $0
  • We always show Awaiting payment with payment method or without when the order is unpaid

What about partially paid orders (aka partially refunded), do we want to show the awaiting payment label in this case? I guess not, right?

Also, we do show this when the order is paid. I guess we want to keep this?

image

kidinov avatar Jun 22 '22 07:06 kidinov

To align with the iOS implementation:

Paid order without payment title

image

Paid order with payment title

image

Unpaid order without payment title

image

Unpaid order with payment title

image

kidinov avatar Jun 22 '22 08:06 kidinov