public async Task ExecuteAsync() { IEnumerable <Settlement> settlements = await _settlementRepository.GetActiveAsync(); foreach (Settlement settlement in settlements) { try { await ReserveAsync(settlement); await TransferAsync(settlement); await CompleteAsync(settlement); } catch (Exception exception) { _log.WarningWithDetails("An error occurred while processing settlement", exception, settlement); } } }