Closed RaggedStaff closed 1 year ago
A few sample Order States from Woocomerce:
Pending payment — Order received, no payment initiated. Awaiting payment (unpaid). Failed — Payment failed or was declined (unpaid) or requires authentication (SCA). Note that this status may not show immediately and instead show as Pending until verified (e.g., PayPal). Processing — Payment received (paid) and stock has been reduced; order is awaiting fulfillment. All product orders require processing, except those that only contain products which are both Virtual and Downloadable. Completed — Order fulfilled and complete – requires no further action. On hold — Awaiting payment – stock is reduced, but you need to confirm payment. Cancelled — Cancelled by an admin or the customer – stock is increased, no further action required. Please note: This status does not refund the customer. An example use case: The merchant wants to cancel the order because the customer has become unresponsive and they do not know where to ship the product. The customer is not eligible for a refund in this case. To issue a refund please follow the Manage refunds documentation. Refunded — Refunded by an admin – no further action required. Authentication required — Awaiting action by the customer to authenticate the transaction and/or complete SCA requirements. Checkout draft — Draft order created when customers start the checkout process with WooCommerce Blocks checkout block enabled.
Shopify uses Order Status, Fulfilment Status & Payment Status separately... https://help.shopify.com/en/manual/orders/order-status
OFN have raised the point that they use a flag (at Enterprise level) to determine if an Order can be amended, after the Customer completes payment, but before the SalesSession ends.
We also need to consider that some platforms support offline payment methods (Direct Debit, cash, direct bank payment), so there may be a delay (of several days) between submission & payment completing.... Some platforms won't really complete payment on individual orders, they will reconcile customer accounts on a periodic basis.
We need to be able to track the status of Order's across platforms.