diff --git a/hasql-transaction.cabal b/hasql-transaction.cabal
--- a/hasql-transaction.cabal
+++ b/hasql-transaction.cabal
@@ -1,5 +1,5 @@
 name:          hasql-transaction
-version:       1.0.1.4
+version:       1.1
 category:      Hasql, Database, PostgreSQL
 synopsis:
   Composable abstraction over retryable transactions for Hasql
diff --git a/library/Hasql/Transaction/Private/Sessions.hs b/library/Hasql/Transaction/Private/Sessions.hs
--- a/library/Hasql/Transaction/Private/Sessions.hs
+++ b/library/Hasql/Transaction/Private/Sessions.hs
@@ -39,5 +39,8 @@
 
 handleTransactionError :: QueryError -> Session a -> Session a
 handleTransactionError error onTransactionError = case error of
-  QueryError _ _ (ResultError (ServerError "40001" _ _ _ _)) -> onTransactionError
+  QueryError _ _ (ResultError (ServerError code _ _ _ _)) -> case code of
+    "40001" -> onTransactionError
+    "40P01" -> onTransactionError
+    _ -> throwError error
   error -> throwError error
