Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
partial_invoice.php
Go to the documentation of this file.
1 <?php
6 declare(strict_types=1);
7 
13 
16 require __DIR__ . '/order.php';
17 
18 $objectManager = ObjectManager::getInstance();
19 
21 $invoiceService = $objectManager->get(InvoiceService::class);
22 $invoice = $invoiceService->prepareInvoice($order);
23 $invoice->setIncrementId('100000002');
24 $invoice->register();
25 
26 $items = $invoice->getAllItems();
27 $item = array_pop($items);
28 $item->setQty(1);
29 $invoice->setTotalQty(1);
30 
31 $items = $order->getAllItems();
33 $item = array_pop($items);
34 $item->setQtyInvoiced(1);
35 $invoice->collectTotals();
36 
38 $invoiceRepository = $objectManager->get(InvoiceRepositoryInterface::class);
40 
42 $transactionRepository = $objectManager->get(TransactionRepositoryInterface::class);
44 $transaction->setTxnType('capture');
45 $transaction->setPaymentId($order->getPayment()->getEntityId());
46 $transaction->setOrderId($order->getEntityId());
$transaction
$invoiceRepository
defined('TESTS_BP')||define('TESTS_BP' __DIR__
Definition: _bootstrap.php:60
$order
Definition: order.php:55
$invoice
$transactionRepository
$invoiceService
$objectManager