private async Task ScanConsumerQr()
        {
            try
            {
                Guid consumerId = await StateManager.GetStateAsync <Guid>(CurrentConsumerIdKey);

                ActorId consumerActorId = new ActorId(consumerId);

                IConsumerSimulationActor consumerActor = ActorProxy.Create <IConsumerSimulationActor>(consumerActorId, ConsumerServiceUri);

                string checkoutSessionLicenseCode = await consumerActor.PosScansConsumer().ConfigureAwait(false);

                if (checkoutSessionLicenseCode == null)
                {
                    await _Machine.FireAsync(PosDeviceSimulationTriggerType.WaitForConsumerToPresentQr);
                }

                else
                {
                    await StateManager.SetStateAsync(CheckoutLicenseCodeKey, checkoutSessionLicenseCode);

                    await _Machine.FireAsync(PosDeviceSimulationTriggerType.WaitForConsumerToCheckout);
                }
            }

            catch (Exception ex)
            {
                WriteTimedDebug(ex);
                await _Machine.FireAsync(PosDeviceSimulationTriggerType.WaitForConsumerToPresentQr);
            }
        }