August 13, 2026 · 5 min read
How to Show Different Thank-You Page Content by Payment Method in Magento 2
"Thank you for your order" is correct for a card payment. It's badly incomplete for a bank transfer, where the customer still needs your account details, and for cash on delivery, where they need to know what to have ready when the driver shows up. One generic thank-you page can't say the right thing to all of them — because the right thing is different for each.
The generic thank-you page is a missed handoff
Right after checkout is the single moment a customer is most attentive to instructions about their order — and it's also the moment Magento's default success page says the least. It confirms the order number and moves on, regardless of which payment method was used. For a card payment that's fine, there's nothing more to say. For bank transfer or cash on delivery, it's a gap: the customer either already knows what to do because they've ordered from you before, or they don't and now you're fielding a support message or a stalled payment.
The content that actually helps is genuinely different per method, not a single paragraph that tries to cover every case:
- Bank transfer — account name, account number, bank details, and the reference to use so the payment gets matched to the order.
- Cash on delivery — what to have ready (exact change, ID if required), and roughly when to expect the driver.
- Card payment — usually nothing extra needed beyond "check your email for confirmation," since the payment is already settled.
Why this isn't a theme edit: the payment method used isn't known until the order is actually placed, and the success page is shared across every payment method by default. Getting different content to show up for different methods means branching on the order's payment method code at render time — not something a static template edit or a CMS block alone can express cleanly.
How the module handles it
Instead of a theme override, the module gives the admin a simple mapping: payment method code → content block. Set up the bank-transfer instructions once, the cash-on-delivery instructions once, and leave card payment (or any other method) with nothing configured. The success page then automatically shows whichever content matches the method used on the order that was just placed — and if a method has no content set for it, the page simply shows nothing extra, falling back to the default thank-you message rather than showing a blank box or an error.
No code, no theme override, no developer needed to change the wording next time your bank details change — it's an admin-editable mapping from day one.
Say the right thing on the thank-you page, for every payment method.
See Payment Thank You Page — from $19