If you wish to print the payment gateway name on order emails (in its own paragraph below the order items table), here’s a handy snippet for you.
All you need to use is the “woocommerce_email_after_order_table” hook to pick the correct position, and then the “get_payment_method_title” WooCommerce function to return the payment gateway name. Enjoy!
PHP Snippet: Show Payment Gateway Name @ WooCommerce Order Emails
/**
* @snippet Echo Payment Method Name @ Order Emails
* @how-to businessbloomer.com/woocommerce-customization
* @author Rodolfo Melogli, Business Bloomer
* @testedwith WooCommerce 3.9
* @community https://businessbloomer.com/club/
*/
add_action( 'woocommerce_email_after_order_table', 'bbloomer_display_payment_type_name_emails', 15 );
function bbloomer_display_payment_type_name_emails( $order ) {
echo '<h2>Payment Type:</h2><p> ' . $order->get_payment_method_title() . '</p>';
}
I would like it to show the last4 of the card number and brand “visa” etc not just payment ‘type’
Is there anyway you could show me a snippet for that?
Hey Leah, thanks so much for your comment! Yes, this is definitely possible, but I’m afraid it’s custom work. If you’d like to get a quote, feel free to contact me here. Thanks a lot for your understanding!
I believe this should be simple enough but I haven’t a clue. All I want to do is place the total dollar amount of an order into the “Additonal Content” field that is available in the standard woo emails….
Reference: {order_number} this works fine and the email has the number xxxxx or whatever
Amount: {order_total} this never works and the email has {order_total} instead of $50.00 or whatever
Please help!
-Mudkayak
Maybe a bug? Disable all plugins except Woo and try again
Hallo
I tried your “Add Payment Method to Order Emails” snippet. It shows the text “Payment Type” but not paypal or Credit card…,
Any idea what it can be.
Thanks a lot.
Dear
Sascha
Hello Sascha, thanks for your comment! I just tested this again with Storefront theme and it works perfectly. Maybe your theme (or another plugin) is messing/conflicting with my snippet.
To troubleshoot, disable all plugins but WooCommerce and also switch temporarily to “Twentytwenty” theme (load the snippet there in functions.php) as explained here: https://www.businessbloomer.com/lesson/trwm4l01/
Once you do that, does it work? If yes, you have a problem with your current theme or one of the plugins.
Hope this helps!
Hi,
i have a woocommerce email sales report add on, but it doesnt show the payment types.
For example i want to see how much money was accumulated through CASH and CREDIT CARD.
May I know how to incorporate this in the daily email report?
Thanks.
Hi Abdul, thanks so much for your comment! Yes, this is definitely possible, but I’m afraid it’s custom work. If you’d like to get a quote, feel free to contact me here. Thanks a lot for your understanding!
I’m using this code snippet but getting “payment_method_title was called incorrectly. Order properties should not be accessed directly.” errors in the php log. This seems to be related to recent changes in WooCommerce. Is there now a new way to call payment_method_title?
I should add the code still works, just generates a warning.
Spot on, snippet revised and updated. Thank you!
Hi Rodolfo, we would be happy to pay for your email function that would include the STRIPE “brand” and “last4” of the credit card used.
Hello Laz, thanks so much for your comment! Yes, this is definitely possible – if you’d like to get a quote, feel free to contact me here. Thanks a lot!
Hi,
this solution is putting payment info to all E-mails, is there solution for putting it on only to mails for orders sent from admin?
Hi Filip, thanks so much for your comment! Yes, this is definitely possible, but I’m afraid it’s custom work. If you’d like to get a quote, feel free to contact me here. Thanks a lot for your understanding!
Hi there,
thanks for your snippet. How d I have to modify it, if I want to add more payment infos, like account number.
Thanks in advance!
Cheers, Riccardo
Riccardo, thanks so much for your comment! Once again, yes, this is possible – but unfortunately this is custom work and I cannot provide a complementary solution here via the blog comments. Thanks a lot for your understanding! ~R