How to Get Order Information by Order ID in Magento 2?

How to Get Order Information by Order ID in Magento 2?

You might want to retrieve a specific order details for operational or informational purposes. Here, we are going to have a look at how to get order, order items, order payment, order billing & shipping information by order ID.

In Magento 2, the concept of retrieving, saving or deleting data from the database is called repositories. There are repository classes for all entities such as order, product, category etc. which commonly use get(), getList() and save() methods.

Get Order Information by Order ID Using Object Manager

This is the example code to get the order information by order id in Magento 2 using object manager.

	

$orderId = 999;

$objectManager = \Magento\Framework\App\ObjectManager::getInstance(); 

$order = $objectManager->create('\Magento\Sales\Model\OrderRepository')->get($orderId);    

// Get all order info
print_r($order->getData());


Get Order Information by Order ID


$orderId = 999;

$objectManager = \Magento\Framework\App\ObjectManager::getInstance(); 

$order = $objectManager->create('\Magento\Sales\Model\OrderRepository')->get($orderId);    

// Get all order info 
print_r($order->getData());    

// Get specific info
echo $order->getIncrementId();
echo $order->getGrandTotal();
echo $order->getSubtotal();

// Get all customer info
echo $order->getCustomerId();
echo $order->getCustomerEmail();
echo $order->getCustomerFirstname();
echo $order->getCustomerLastname();

Get Order Items Info by Order ID

	

$orderId = 999;

$objectManager = \Magento\Framework\App\ObjectManager::getInstance(); 

$order = $objectManager->create('\Magento\Sales\Model\OrderRepository')->get($orderId);
 
foreach ($order->getAllItems() as $item)

{
    echo $item->getId();
    echo $item->getName();
    echo $item->getProductType();
    echo $item->getQtyOrdered();
    echo $item->getPrice();
}


Get Order Payment Info by Order ID


$orderId = 999;

$objectManager = \Magento\Framework\App\ObjectManager::getInstance(); 

$order = $objectManager->create('\Magento\Sales\Model\OrderRepository')->get($orderId);   

// Get all payment info 
print_r($order->getPayment()->getData());    

// Get specific payment info
echo $order->getPayment()->getAmountPaid();
echo $order->getPayment()->getMethod();
echo $order->getPayment()->getAdditionalInformation('method_title');


Get Order Billing & Shipping Info by Order ID

	

$orderId = 999;

$objectManager = \Magento\Framework\App\ObjectManager::getInstance(); 

$order = $objectManager->create('\Magento\Sales\Model\OrderRepository')->get($orderId);    

// Get all billing info
print_r($order->getBillingAddress()->getData());     

// Get specific billing info
echo $order->getBillingAddress()->getCity();
echo $order->getBillingAddress()->getRegionId();
echo $order->getBillingAddress()->getCountryId();   

// Get all shipping info
print_r($order->getShippingAddress()->getData());    

// Get specific shipping info
echo $order->getShippingAddress()->getCity();
echo $order->getShippingAddress()->getRegionId();
echo $order->getShippingAddress()->getCountryId();

If you're having issues in getting order information by Order Id in Magento 2, then contact our support team to get an instant solution.