Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
invoice_with_bundle.php
Go to the documentation of this file.
1 <?php
6 declare(strict_types=1);
7 
10 use Magento\Sales\Model\Order\Invoice\ItemFactory;
13 
14 require 'order_with_bundle_and_invoiced.php';
17 $objectManager = ObjectManager::getInstance();
18 
20 $invoiceService = $objectManager->get(InvoiceService::class);
21 $invoice = $invoiceService->prepareInvoice($order);
22 $invoice->setIncrementId('100000001');
23 $invoice->register();
24 
26 $invoiceRepository = $objectManager->get(InvoiceRepositoryInterface::class);
28 
30 $itemFactory = $objectManager->get(ItemFactory::class);
32 $itemRepository = $objectManager->get(InvoiceItemRepositoryInterface::class);
33 
34 foreach ($order->getAllItems() as $item) {
35  $invoiceItem = $itemFactory->create(['data' => $item->getData()]);
36  $invoiceItem->setId(null)
37  ->setInvoice($invoice)
38  ->setOrderItem($item)
39  ->setQty($item->getQtyInvoiced());
41 }
$invoiceItem
$invoiceRepository
$order
Definition: order.php:55