Get transactions that failed or were never committed
No, SQL Server does not maintain any history about transactions that were aborted / rolled back that is trivial to get to and doesn't introduce additional potential problems (as outlined in @ooutwire's answer). Or even transactions that have been committed. 

You will have to perform your own logging within your error handling, or capture specific transaction-related events using server-side trace or Extended Events.

Trace:



Extended events: