diff --git a/src/Database/Database.csproj b/src/Database/Database.csproj
index de0a93ac7b1fee626b00976e24597b3a8f7fd6db..13cd6064446471e5b35cd9dce97e8c1f80220da4 100644
--- a/src/Database/Database.csproj
+++ b/src/Database/Database.csproj
@@ -79,6 +79,7 @@
     <Compile Include="Models\ExternalAuthenticatorModel.cs" />
     <Compile Include="Models\ExternalIdModel.cs" />
     <Compile Include="Models\FeaturesModel.cs" />
+    <Compile Include="Models\TOSModel.cs" />
     <Compile Include="ReturnObjects\ActivatedFeatureObject.cs" />
     <Compile Include="Models\LogModel.cs" />
     <Compile Include="ReturnObjects\DisciplineObject.cs" />
diff --git a/src/Database/Models/TOSModel.cs b/src/Database/Models/TOSModel.cs
new file mode 100644
index 0000000000000000000000000000000000000000..e085abdcee471aa5d83c910859a3a42cea8265c7
--- /dev/null
+++ b/src/Database/Models/TOSModel.cs
@@ -0,0 +1,25 @@
+using Coscine.Database.DataModel;
+using LinqToDB;
+using System;
+using System.Linq.Expressions;
+
+namespace Coscine.Database.Models
+{
+    public class TOSModel : DatabaseModel<TOSAccepted>
+    {
+        public override Expression<Func<TOSAccepted, Guid>> GetIdFromObject()
+        {
+            return (tosAccepted) => tosAccepted.RelationId;
+        }
+
+        public override ITable<TOSAccepted> GetITableFromDatabase(CoscineDB db)
+        {
+            return db.TOSAccepteds;
+        }
+
+        public override void SetObjectId(TOSAccepted databaseObject, Guid id)
+        {
+            databaseObject.RelationId = id;
+        }
+    }
+}