public async Task StartAsync()
        {
            var orderId = Guid.NewGuid();
            var order   = await OrderSteps.CreateOrder(_orderServiceApi, orderId, _context.StoreId);

            var menuItems = _menuAvailabilityHelper.GetAvailableMenuItems();

            var menuItemsCount = menuItems.Count;

            var i         = new Random().Next(menuItemsCount);
            var menuitem1 = menuItems.Skip(i).First();

            var orderitem1 = new RestaurantOrderItemDto()
            {
                OrderItemId        = Guid.NewGuid(),
                MenuItemId         = menuitem1.MenuItemId,
                MenuItemVersionIds = new VersionIdsDto()
                {
                    ItemVersionId          = menuitem1.MenuItemVersionId,
                    PriceListItemVersionId = menuitem1.PriceListItemVersionId,
                },
                OrderId          = order.OrderId,
                CommonModifiers  = new List <OrderItemCommonModifierDto>(),
                RelatedModifiers = new List <OrderItemRelatedModifierDto>(),
                Quantity         = 1,
                CalculatedPrice  = menuitem1.Price
            };

            var response2 = await _orderServiceApi.AddOrderItem(orderitem1);

            var response3 = await _orderServiceApi.GetOrderInfo(order.OrderId);

            Assert.AreEqual(1, response3.Value.OrderItemsCosts.Count);
            var cost = response3.Value.OrderItemsCosts.Sum(p => p.Value);

            var discounts = await _terminalApi.GetAllDiscounts(_context.StoreId);

            Assert.IsTrue(discounts.Value.Any(a => a.IsActive && a.Value > 0));

            var discount = discounts.Value.First(a => a.IsActive && a.Value > 0);

            var addDiscountResponse = await _orderServiceApi.AddDiscount(
                new AddDiscountDto()
            {
                DiscountVersionId = discount.DiscountVersionId,
                IsAggregate       = discount.BitSettings.HasFlag(DiscountSettings.IsAggregatable),
                Type = DiscountType.ManualDiscount
            });

            Assert.IsNull(addDiscountResponse.PostprocessingType);

            await OrderSteps.PayAndClose(_orderServiceApi, order.OrderId, cost);
        }