Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
order_virtual_products.php
Go to the documentation of this file.
1 <?php
6 declare(strict_types=1);
7 
13 
15 $searchCriteriaBuilder = Bootstrap::getObjectManager()->get(SearchCriteriaBuilder::class);
17 $cartRepository = Bootstrap::getObjectManager()->get(CartRepositoryInterface::class);
19 $productRepository = Bootstrap::getObjectManager()->get(ProductRepositoryInterface::class);
21 $cartManagement = Bootstrap::getObjectManager()->get(CartManagementInterface::class);
22 
24  'VIRT-1' => 5,
25  'VIRT-2' => 6,
26 ];
27 
29  ->addFilter('reserved_order_id', 'created_order_for_test')
30  ->create();
31 $cart = current($cartRepository->getList($searchCriteria)->getItems());
32 
33 foreach ($itemsToBuy as $sku => $qty) {
34  $product = $productRepository->get($sku);
35  $requestData = [
36  'product' => $product->getProductId(),
37  'qty' => $qty
38  ];
39  $request = new \Magento\Framework\DataObject($requestData);
40  $cart->addProduct($product, $request);
41 }
42 
43 $cartRepository->save($cart);
44 $cartManagement->placeOrder($cart->getId());
$searchCriteriaBuilder