diff --git a/kwant/solvers/mumps.py b/kwant/solvers/mumps.py
index d672c4a1c47ce6a098c1da95c3a3b40ae05d59e2..f0b9ac0c5286e462dff87ca48c15e52efd6bfdcf 100644
--- a/kwant/solvers/mumps.py
+++ b/kwant/solvers/mumps.py
@@ -84,14 +84,14 @@ class Solver(common.SparseSolver):
             self.nrhs = nrhs
 
         if ordering is not None:
-            if ordering not in list(mumps.orderings.keys()) + ['kwant_decides']:
-                raise ValueError("Invalid ordering: " + ordering)
             if ordering == 'kwant_decides':
                 # Choose what is considered to be the best ordering.
                 sorted_orderings = [order
                                     for order in ['metis', 'scotch', 'auto']
                                     if order in mumps.possible_orderings()]
                 ordering = sorted_orderings[0]
+            elif ordering not in mumps.orderings:
+                raise ValueError("Invalid ordering: " + ordering)
             self.ordering = ordering
 
         if sparse_rhs is not None: