strangerstudios / pmpro-pay-by-check

Add a "Pay by Check" option to PMPro levels, and keep members in "pending" status until an admin changes the order status.
https://www.paidmembershipspro.com/add-ons/pmpro-pay-by-check-add-on/
11 stars 27 forks source link

When order is cancelled, invoice page shows "Paid" #57

Closed andrewlimaza closed 3 months ago

andrewlimaza commented 3 years ago

There seems to be an issue with the order status on the frontend Invoice page.

Steps to recreate:

  1. Checkout for a level that uses the Pay By Check Add On/payment gateway.
  2. Cancel the order status via the admin screen.
  3. Navigate to the frontend invoice page for this specific order, the order status shows "Paid".

This status also shows as "Paid" on the members account page.

andrewlimaza commented 3 years ago

PS - tested this for orders that belong to other gateways. The same issue occurs.

kimwhite commented 2 years ago

changing Pending to Canceled also gives user full access to the site.

andrewlimaza commented 2 years ago

This came up recently, and it's designed this way in core. As pending status for other (automatic) gateways like Stripe/PayPal etc means that money is paid so it shows "Paid".

Pay By Check treats "Pending" status differently, as money not received. We will need to tweak some logic here that all statuses except "Success" with Pay by Check should restrict access.

There's no ETA on when this would be done.

kimcoleman commented 3 months ago

We removed "cancelled" as an order status in v3.0. This is not a valid status for an unpaid order.