Order edit form allows store admins to change payment method. This is good as long as order hasn't been paid yet. When order has been paid and payment balance is zero, such changes should be disallowed.

Currently there is no way a payment module itself could prevent from changing payment type. This issue is related to #595604: Updating order that awaits payment may lead to data inconsistency.

Disclaimer Please note that I've posted this some time ago on ubercart.org tracker but no one ever replied. Now I've realised that drupal.org issue tracker is a separate one probably with more traffic. So I've decided to double post this issue as I think it really needs sorting out. Please forgive me if you consider this as an unnecessary double-post.

Comments

rszrama’s picture

Status: Active » Closed (works as designed)

It's by design that we aren't preventing these sorts of modifications. As Lyle pointed out, we've had real instances where additional payment was necessary. All the data is there for a store operator to make the judgment call that additional payment isn't required, but I don't see why the order administration system should prevent it. Deciding to hardcode that functionality artificially limits the way people could then administer their orders.