diff --git a/lib/ohm.rb b/lib/ohm.rb
index <HASH>..<HASH> 100644
--- a/lib/ohm.rb
+++ b/lib/ohm.rb
@@ -427,6 +427,7 @@ module Ohm
     def to_hash
       attrs = {}
       attrs[:id] = id unless new?
+      attrs[:errors] = errors if errors.any?
 
       return attrs
     end
diff --git a/test/json.rb b/test/json.rb
index <HASH>..<HASH> 100644
--- a/test/json.rb
+++ b/test/json.rb
@@ -29,11 +29,27 @@ test "export an empty hash via to_hash" do
   assert Hash.new == person.to_hash
 end
 
+test "export a hash with the errors" do
+  person = Venue.new
+  person.valid?
+
+  assert_equal({ errors: { name: [:not_present] }}, person.to_hash)
+end
+
 test "export a hash with the its id" do
   person = Venue.create(:name => "John Doe")
   assert Hash[:id => '1'] == person.to_hash
 end
 
+test "export a hash with its id and the errors" do
+  person = Venue.create(:name => "John Doe")
+  person.name = nil
+  person.valid?
+
+  expected_hash = { id: '1', errors: { name: [:not_present] }}
+  assert expected_hash == person.to_hash
+end
+
 test "return the merged attributes" do
   programmer = Programmer.create(:language => "Ruby")
   expected_hash = { :id => '1', :language => 'Ruby' }
Add the errors Hash when exporting #to_hash.