It's a business question but I hope someone will answer.

Why "Pending Payment" state/status is not visible on frontend by default?

I'm implementing right now Magento 2 integration with some payment gateway and the flow there looks like that:

  1. Place order
  2. Redirect to gateway
  3. Make payment
  4. Redirect to store (success or error page)
  5. Wait for gateway to notify your store about payment status change

"5." usually takes a few seconds and sometimes even more. Because of that, when redirecting to success page, the transaction is often not finished and order status remains "Pending Payment". This leads to the weird behavior that properly placed order is not visible for customer right after paying.

Maybe I shouldn't use "Pending Payment" state at all in my case? Or maybe should I create module's own "Pending Payment" status which will be visible on frontend and force order to change its status to it?

1 Answer 1


I cannot answer 'Why "Pending Payment" is not visible'. Maybe because the user should now know that his payment hasn't gone through yet (I'm just speculating).

If you want in your case the order to be visible, you should create a different status that is visible in the frontend.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.