Magento 2 – How to Get Selected Payment Method on ‘sales_order_save_after’ Event

event-observermagento2place-ordersales-order

I'm developing an observable that listen to the sales_order_save_after event.

I have the order information executing $observer->getEvent()->getOrder() but i cannot get the payment method selected (cash on delivery or check/money order, etc).

I did try with $order->getPayment()->getMethod() but this works only when the order already has been payed. (And I need to know what payment method was selected when the order was placed).

Thanx in advance

Best Answer

Please use below code in your Observer to get payment method data

Method 1

$payment = $order->getPayment();
$method = $payment->getMethodInstance();
$methodTitle = $method->getTitle();
//print_r($method->getData());

Method 2

$order->getPayment()->getAdditionalInformation("method_title")