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.
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());
$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();
$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(); }
$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');
$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.