Passer au contenu principal
Version : 2.x

PAYMENT501: Order already paid online

What this means​

Your store reported that this order was already paid — but the till had already taken a payment for it as well. The customer has therefore paid twice.

The till payment is kept on the order's ledger, marked as failed with the reason order_already_paid, so nothing is hidden and the second payment is not silently dropped. What remains is to give the money back.

Your data​

Money moved — the customer has been charged twice. Refund the payment taken at the till; the order and the online payment are intact, and the extra payment is recorded on the order rather than discarded.

Troubleshoot​

At the till — do this before the customer leaves:

  1. Tell the customer the order was already paid online and that the second payment will be refunded.
  2. Check the amount and method taken at the till: Store health → Database lists the order under … needs attention with a line such as "Order #… was already paid online; … was also taken at the till — refund that payment". The same line is in Store health → Logs.
  3. Give that payment back the way it was taken: cash from the drawer, or a refund of that charge on the card machine or in your payment provider's dashboard. Do not record a paid out for cash handed back — the refused payment was never counted in the drawer's expected cash, so the drawer already balances.
  4. Do not use Refund on the order in WCPOS for this. It refunds against the order itself — the legitimate online payment — not against the till payment your store refused.
  5. Do not void or delete the order. It is a legitimate paid order; only the extra payment is wrong.

On the store — for the site administrator:

  1. Confirm the online payment against the gateway in WooCommerce, so you know which of the two payments is the one being kept. Add an order note in WooCommerce → Orders saying the duplicate till payment was returned, how, and when.
  2. Check whether the refund has settled — a card refund can take several days to reach the customer's statement.
  3. If this happens repeatedly, the usual cause is an order being paid online while it is already open on a till; review how orders reach the POS before they are settled.

Details​

Code
PAYMENT501 (PAYMENT_ALREADY_PAID_ONLINE)
Gravité
error
Introduit dans
WCPOS 2.0.0