diff --git a/src/PaymentServer/Persistence.hs b/src/PaymentServer/Persistence.hs
index 4163cadb0f1b19ac7b284a7af71e6d4c4c437de1..eea14b43cf92b45c2977e1e6801306aa4dd194db 100644
--- a/src/PaymentServer/Persistence.hs
+++ b/src/PaymentServer/Persistence.hs
@@ -82,8 +82,8 @@ instance VoucherDatabase MemoryVoucherDatabase where
     return ()
 
   redeemVoucher Memory{ paid = paid, redeemed = redeemed } voucher fingerprint = do
-    unpaid <- (liftM $ Set.notMember voucher) . readIORef $ paid
-    existingFingerprint <- (liftM $ Map.lookup voucher) . readIORef $ redeemed
+    unpaid <- Set.notMember voucher <$> readIORef paid
+    existingFingerprint <- Map.lookup voucher <$> readIORef redeemed
     case (unpaid, existingFingerprint) of
       (True, _) ->
         return $ Left NotPaid