diff --git a/lib/Travel/Routing/DE/VRR.pm b/lib/Travel/Routing/DE/VRR.pm
index d486a6ea0a79c518236e005ad6011c0b3ee9f5a7..baa770caf80a4c9170100f35d321a52cd80d096a 100644
--- a/lib/Travel/Routing/DE/VRR.pm
+++ b/lib/Travel/Routing/DE/VRR.pm
@@ -768,9 +768,7 @@ The following methods act like the arguments to B<new>. See there.
 =head1 DIAGNOSTICS
 
 When encountering an error, Travel::Routing::DE::VRR returns a
-Travel::Routing::DE::VRR::Exception object.
-
-Dies with a backtrace when anything goes wrong.
+Travel::Routing::DE::VRR::Exception(3pm) object.
 
 =head1 DEPENDENCIES
 
@@ -788,6 +786,16 @@ The parser is still somewhat fragile and has no proper error handling.
 
 It is best not to pass Unicode characters to B<Travel::Routing::DE::VRR>.
 
+=head1 SEE ALSO
+
+=over
+
+=item * Travel::Status::DE::VRR::Exception(3pm)
+
+=item * Travel::Status::DE::VRR::Route(3pm)
+
+=back
+
 =head1 AUTHOR
 
 Copyright (C) 2009-2011 by Daniel Friesel E<lt>derf@finalrewind.orgE<gt>
diff --git a/lib/Travel/Routing/DE/VRR/Exception.pod b/lib/Travel/Routing/DE/VRR/Exception.pod
new file mode 100644
index 0000000000000000000000000000000000000000..3d690ec8ec9ee64727144c2a7aad3218093b1fb2
--- /dev/null
+++ b/lib/Travel/Routing/DE/VRR/Exception.pod
@@ -0,0 +1,57 @@
+=head1 NAME
+
+Travel::Routing::DE::VRR::Exception - Travel::Routing::DE::VRR Exceptions
+
+=head1 DESCRIPTION
+
+All Exceptions throws by Travel::Routing::DE::VRR::Exception are
+Travel::Routing::DE::VRR::Exception objects created by Exception::Class(3pm).
+
+See Exception::Class::Base(3pm) for their common methods.
+
+=head1 LIST OF EXCEPTIONS
+
+=head2 Travel::Routing::DE::VRR::Exception::Setup
+
+An argument to B<new> had an invalid format.
+
+Additional methods:
+
+=over
+
+=item $exception->option
+
+The option in which the error occured.
+
+=item $exception->have
+
+The argument we got.
+
+=item $exception->want
+
+What kind of argument we want.
+
+=back
+
+=head2 Travel::Routing::DE::VRR::Exception::Net
+
+The HTTP request to the efa interface failed. Contains an HTTP::Response(3pm)
+object describing the error in B<http_response>.
+
+=head2 Travel::Routing::DE::VRR::Exception::NoData
+
+We got no parsable data from efa.vrr.de
+
+=head2 Travel::Routing::DE::VRR::Exception::Ambiguous
+
+Our request contained ambiguous data. B<post_key> contains the relevant POST
+key, B<possibilities> is a comma-separated string of possible key values (as
+reported by efa.vrr.de).
+
+=head2 Travel::Routing::DE::VRR::Exception::NoConnections
+
+efa.vrr.de found no connections for our request.
+
+=head1 SEE ALSO
+
+Travel::Status::DE::VRR(3pm)