Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
create_quote_on_default_website.php
Go to the documentation of this file.
1 <?php
6 declare(strict_types=1);
7 
12 use Magento\Quote\Api\Data\AddressInterfaceFactory;
15 
17 $searchCriteriaBuilder = Bootstrap::getObjectManager()->get(SearchCriteriaBuilder::class);
19 $cartRepository = Bootstrap::getObjectManager()->get(CartRepositoryInterface::class);
21 $cartManagement = Bootstrap::getObjectManager()->get(CartManagementInterface::class);
23 $addressFactory = Bootstrap::getObjectManager()->get(AddressInterfaceFactory::class);
25 $storeRepository = Bootstrap::getObjectManager()->get(StoreRepositoryInterface::class);
26 
27 $cartId = $cartManagement->createEmptyCart();
29 $cart->setCustomerEmail('[email protected]');
30 $cart->setCustomerIsGuest(true);
31 
34  [
35  'data' => [
36  AddressInterface::KEY_COUNTRY_ID => 'US',
37  AddressInterface::KEY_REGION_ID => 15,
38  AddressInterface::KEY_LASTNAME => 'Doe',
39  AddressInterface::KEY_FIRSTNAME => 'John',
40  AddressInterface::KEY_STREET => 'example street',
41  AddressInterface::KEY_EMAIL => '[email protected]',
42  AddressInterface::KEY_CITY => 'example city',
43  AddressInterface::KEY_TELEPHONE => '000 0000',
44  AddressInterface::KEY_POSTCODE => 12345
45  ]
46  ]
47 );
48 $cart->setReservedOrderId('created_order_for_test');
49 $cart->setBillingAddress($address);
50 $cart->setShippingAddress($address);
51 $cart->getPayment()->setMethod('checkmo');
52 $cart->getShippingAddress()->setShippingMethod('flatrate_flatrate');
53 $cart->getShippingAddress()->setCollectShippingRates(true);
54 $cart->getShippingAddress()->collectShippingRates();
55 $cartRepository->save($cart);