openfoodfoundation / wishlist

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

Add Bulk Order Management adjusted values to Order Edit page #189

Open lbwright22 opened 4 years ago

lbwright22 commented 4 years ago

Description

Hub manager updates the final weight/volume of an item after purchase using the Bulk Order Management facility (for instance for the weight of a joint of meat or a whole pumpkin). Price of the item changes in Edit Order but there is no trail of why. The final weight of the item is not updated on Order. No changes are recorded in 'Adjustments'.

Leads to confusion for hub manager and customer as in issue openfoodfoundation/openfoodnetwork#6107

Expected Behavior

  1. customer places order and is sent an email to confirm final amount payable. This is stated also in on the Order in admin: orderbeforebomchange

  2. Hub manager edits order using BOM page. bomchange

  3. Change to final weight of a product in the order is reflected/documented in under Edit Order orderafterbomchange2

Actual Behaviour

Steps 1 and 2 as Expected Behaviour.

  1. Price of the product which is altered using BOM increases/decreases appropriately to reflect the increase/decrease in weight/volume of the product. No change is made to the weight of the product which is documented. No documentation under 'Adjustments' to explain the difference in price which now exists between Edit Order summary and order confirmation email.
    orderafterbomchange
  2. If customer paid by PayPal or Stripe then their order (under listing orders and in the customer's account summary) is now displaying as Credit owing/Balance due and monies need to be refunded or collected from customer.

Steps to Reproduce

  1. Place an order. View order under Listing orders
  2. Edit the final weight or volume of a product in this order using the Bulk Order Management Page.
  3. View order in Listing Orders. Observe total change to total balance of the order but no change to weight or volume of the product altered.

Animated Gif/Screenshot

Workaround

Severity

bug S4

Your Environment

Possible Fix

RachL commented 4 years ago

This was @luisramos0 's question on slack:

just add the BOM unit value to the order edit page? replace 300g with 310g? or have both values for clarity?

We need to trace any change from original order if we want to have legally compliant invoices... so I think I would replace 310 by 300 in the line item view (order edit view), but have an adjustment line in the adjustment section that shows something was changed, like -10g in weight. This way, the invoice can show that the order was edited (as adjustment are automatically shown on invoices if I'm not mistaken).

What do you think?

lbwright22 commented 4 years ago

@RachL I agree with you- a line on the adjustment page would be clearer for hub/shop managers (and support staff). It's difficult to spot a weight change from 300 to 310 g unless you know what you are looking for. And if it makes the invoices legal then that is even better

luisramos0 commented 4 years ago

Hello, there's a mismatch between your UI understanding and the tech structure because this change in the unit value does not generate an adjustment, it just changes the unit value and price of the line item directly... To generate an adjustment here would be tricky I think. We would need to change the BOM code?

This touches on edit trail... compliance. There must be a way to do what you are asking: show 310 and also make it clear the value has changed. But it really isnt an adjustment right now. And adding an entry to the adjustments table that is not an adjustment may just add to the adjustments mess...

RachL commented 4 years ago

@luisramos0 sure wasn't aware of this. But I think it is good to think about it. I'm not comfortable with having this push as a papercut, while we have exactly the same question prioritized as the next big thing to work on. I wonder if we aren't duplicating effort and places where we have this discussion...

luisramos0 commented 4 years ago

ah, ok, I agree. Initially I thought we could do this simple change but now I see this will need to be thought about in the invoices work :+1: Let's include this in the invoices work then?

Erioldoesdesign commented 4 years ago

Agreed this looks more complex than initially thought.

Though just to be extra sure and try to have something that helps and is papercut-y, would the tech not allow us to add a free text field in the adjustments 'page' where the hub manager could add free text info on what they've changed?

So they would make the changes as they currently do, to weight that then affects the prices but the new step is that they have a free text field to add in what was changed and why so the shopper is less confused? It's not ideal but might help short term?

luisramos0 commented 4 years ago

@Erioldoesdesign I dont understand your suggestion, here we are talking about the BOM and the order edit page. But your suggestion refers to the adjustments page. BOM: https://staging.coopcircuits.fr/admin/orders/bulk_management Order edit page: https://staging.coopcircuits.fr/admin/orders/R472365778/edit Adjustments page: https://staging.coopcircuits.fr/admin/orders/R472365778/adjustments

Do you mean a new text field in the BOM? That would be a new text field in the line items... something like "Weight/Volume comment"? I am not sure about this, in my head the manager doesn't want to write in this situation, they just want to correct the final weight, customer ordered 200g, the package was 234g, done. For me it looks deterministic and so we could just make the order edit page show that change to the manager themselves (previous/final value). This does not include getting this change clearly communicated to the customer...

Erioldoesdesign commented 4 years ago

So going through this scenario the hub manager has sold 1kg of chocolate and only has 900g so makes the change here in the BOM:

Screenshot 2020-11-03 at 15 09 04

What I assumed a hub manager would do (which may be incorrect) is that they would then go into the edit order page because the price has changed (either less cost or more cost) so that needs to be resolved by the hub manager to the customer on this page: https://staging.coopcircuits.fr/admin/orders/R472365778/edit

They would re-calculate the fees etc. because a weight has changed.

What I'm suggesting is that on the edit page there could be a free text field with a heading for the hub manager to explain what has changed and why the price has changed and as Louise says: "Leads to confusion for hub manager and customer..."

To solve the confusion problem of why a shopper might think "Why has my price increase or decreased?" the free text offers a chance for the hub manager to explain and then perform the action (resend confirmation, send invoice etc.)

Just to be clear my suggestion doesn't help our problem of ' legally compliant invoices' as much as it attempts to solve for the confusion between hub manager and shopper.

But you're right in that I don't know much about the user scenario here if someone has time to take me through an example of what users do in this case that would help. I would like to know what confusion is actually happening e.g. The hub manager makes a weight change, price changes, they re-send confirmation, customer emails back asking why it costs more, theres an email thread about why the price has increased, how the shopper wants to pay or receive refund etc. I'm thinking more in terms of a 'real shop' scenario where I pick up a bag of 1kg chocolate from a shelf and it's priced at £8.00 (including fees). I get to the cashier and they ask for £5.25. I expected £6.00 and it's less and I would ask and get a reply of 'it's actually 900g instead of 1kg so I adjusted the price. Makes sense, I pay and leave.

With a free text field what I'm trying to suggest is a way to facilitate that conversation. But I would need @lbwright22 to confirm this is the 'confusion' problem.

sorry for the long comment!

RachL commented 4 years ago

@Erioldoesdesign Adjustment page already makes this possible : you can add any adjustment with free text. But when you do this you need to do it order by order. No bulk action possible.

luisramos0 commented 4 years ago

I see your suggestion is for a text field in the edit order page :+1:

The text field would help the manager explain the change to the customer :+1: but I think the first issue is that the manager (or someone in their org) has changed the final weight in the BOM (from 1kg to 900g in your first example) and latter when they go to the order edit page, they dont understand what happened. So, the first solution I think will have to be about showing the actual final weight on the edit order page (900g) because currently, after the manager changes the final weight to 900g in the BOM, the edit order page adapts the price but still shows 1kg :face_with_head_bandage:

Erioldoesdesign commented 4 years ago

oh gosh what a complicated set of problems 🤔 i think understand what the issue is asking for now given your explanation Luis but It wasn't really clear to me in the main issue.

Sounds like indeed as Rachel says above, it's out of papercut territory to unpick all these connected needs.

kirstenalarsen commented 4 years ago

Rejected papercut - we think it is quite complex to understand what it actually needed and there isn't a clear scope of what is being requested / suggested to do.

RachL commented 3 years ago

Transfering to the inception-pipe: I still believe we will look into this as part of the history of invoice changes.