Get Invoice details by order increment id programmatically Magento 2.

You can get the invoice data for the specific order by order increment id in Magento 2.

Using Magento\Sales\Api\InvoiceRepositoryInterface interface, you need to use getList() function to fetch no. of invoice by sales order increment id.

When you check the sales_invoice table, order_id available in sales_invoice table so you first fetch the order entity id from the order increment id.

To get invoice records, you first fetch the order id by order increment id and pass order id as SearchCriteriaBuilder addfilter() method. Continue reading “Get Invoice details by order increment id programmatically Magento 2.”

Get Invoice details by order id programmatically Magento 2.

You can get the invoice data for the specific order by order id in Magento 2.

Using Magento\Sales\Api\InvoiceRepositoryInterface interface, you need to use getList() function to fetch no. of invoice by sales order id.

Using SearchCriteriaBuilder Class, You need to filter by order id and pass search criteria¬†object to getList() method of InvoiceRepositoryInterface. Continue reading “Get Invoice details by order id programmatically Magento 2.”

Total Invoice count by order id Magento 2.

You can count the no. of Invoice generated for the specific order by order id in Magento 2.

Using Magento\Sales\Api\InvoiceRepositoryInterface interface you need to use getList() method with SearchCriteriaBuilder class to fetch no. of an invoice for the order.

Using Below code snippet you can get the count of invoice for an order,

$orderId = 1; // order id
$this->getCountInvoicesForOrder($orderId);

Using the above way, You can fetch no. of an invoice for the single order.