diff --git a/src/main/kotlin/configuration/DynamoDbMigration.kt b/src/main/kotlin/configuration/DynamoDbMigration.kt
index b5e4535eeb4b505fd0dd50f12b18f0c39fde4e78..3677fc6f202c2c42b915527933b154641ae0f372 100644
--- a/src/main/kotlin/configuration/DynamoDbMigration.kt
+++ b/src/main/kotlin/configuration/DynamoDbMigration.kt
@@ -1,6 +1,6 @@
 package betclic.test.configuration
 
-import betclic.test.player.PlayerEntity
+import betclic.test.player.entities.PlayerEntity
 import dev.andrewohara.dynamokt.DataClassTableSchema
 import io.ktor.server.application.*
 import kotlinx.coroutines.future.await
diff --git a/src/main/kotlin/configuration/InjectionConfiguration.kt b/src/main/kotlin/configuration/InjectionConfiguration.kt
index e1e4d5d3677ac90510bd6d76d6b2e581ecf4b9bf..5d3230f189171670234d43d955881a7d29fad251 100644
--- a/src/main/kotlin/configuration/InjectionConfiguration.kt
+++ b/src/main/kotlin/configuration/InjectionConfiguration.kt
@@ -1,8 +1,8 @@
 package betclic.test.configuration
 
-import betclic.test.player.PlayerRepository
-import betclic.test.player.PlayerService
-import betclic.test.player.PlayerServiceImpl
+import betclic.test.player.repositories.PlayerRepository
+import betclic.test.player.services.PlayerService
+import betclic.test.player.services.PlayerServiceImpl
 import io.ktor.server.application.*
 import org.koin.dsl.module
 import org.koin.ktor.plugin.Koin
diff --git a/src/main/kotlin/configuration/RoutingConfiguration.kt b/src/main/kotlin/configuration/RoutingConfiguration.kt
index 2e5b34b26566232bc6cabace86b29b5e5e79b0a0..43ef97e7b01ef3dcc688fdff853003642db51d19 100644
--- a/src/main/kotlin/configuration/RoutingConfiguration.kt
+++ b/src/main/kotlin/configuration/RoutingConfiguration.kt
@@ -1,6 +1,6 @@
 package betclic.test.configuration
 
-import betclic.test.player.playerRoutes
+import betclic.test.player.routes.playerRoutes
 import io.ktor.server.application.*
 import io.ktor.server.routing.*
 
diff --git a/src/main/kotlin/player/dtos/PlayerCreationDTO.kt b/src/main/kotlin/player/dtos/PlayerCreationDTO.kt
index eb150a1199ec5131036b02b32fba63bf27de4b68..d42c2cdca56a07869e344ba618a4f1411c27ddf0 100644
--- a/src/main/kotlin/player/dtos/PlayerCreationDTO.kt
+++ b/src/main/kotlin/player/dtos/PlayerCreationDTO.kt
@@ -1,6 +1,6 @@
 package betclic.test.player.dtos
 
-import betclic.test.player.Player
+import betclic.test.player.entities.Player
 import kotlinx.serialization.Serializable
 
 @Serializable
diff --git a/src/main/kotlin/player/dtos/PlayerInfoDTO.kt b/src/main/kotlin/player/dtos/PlayerInfoDTO.kt
index 16b8490dd36ab2cf6836b3be6e5d2f60a767d26b..7ba4bfd594e71856f95a5cfad4584f85a211591d 100644
--- a/src/main/kotlin/player/dtos/PlayerInfoDTO.kt
+++ b/src/main/kotlin/player/dtos/PlayerInfoDTO.kt
@@ -1,6 +1,6 @@
 package betclic.test.player.dtos
 
-import betclic.test.player.Player
+import betclic.test.player.entities.Player
 import kotlinx.serialization.Serializable
 
 @Serializable
diff --git a/src/main/kotlin/player/dtos/PlayerUpdateDTO.kt b/src/main/kotlin/player/dtos/PlayerUpdateDTO.kt
index ca5f03e0c8f200886db3039b684fe1b0968c6e80..937f25802ac2717b5ba3b33fe9067a182b03fa09 100644
--- a/src/main/kotlin/player/dtos/PlayerUpdateDTO.kt
+++ b/src/main/kotlin/player/dtos/PlayerUpdateDTO.kt
@@ -1,6 +1,6 @@
 package betclic.test.player.dtos
 
-import betclic.test.player.Player
+import betclic.test.player.entities.Player
 import kotlinx.serialization.Serializable
 
 @Serializable
diff --git a/src/main/kotlin/player/Player.kt b/src/main/kotlin/player/entities/Player.kt
similarity index 93%
rename from src/main/kotlin/player/Player.kt
rename to src/main/kotlin/player/entities/Player.kt
index 45d7d159598df91a96cdec2fafc381fa834ee109..1d4f6e06c8836a15ea95467bf18e0d1aee3011aa 100644
--- a/src/main/kotlin/player/Player.kt
+++ b/src/main/kotlin/player/entities/Player.kt
@@ -1,4 +1,4 @@
-package betclic.test.player
+package betclic.test.player.entities
 
 import dev.andrewohara.dynamokt.DynamoKtPartitionKey
 import kotlinx.serialization.Serializable
diff --git a/src/main/kotlin/player/PlayerRepository.kt b/src/main/kotlin/player/repositories/PlayerRepository.kt
similarity index 91%
rename from src/main/kotlin/player/PlayerRepository.kt
rename to src/main/kotlin/player/repositories/PlayerRepository.kt
index 8aae63430a6dc0b81568305feeb5e6765c983a98..f5b8ef2a2656e87b7cff8bd5bacfb7648adc3b19 100644
--- a/src/main/kotlin/player/PlayerRepository.kt
+++ b/src/main/kotlin/player/repositories/PlayerRepository.kt
@@ -1,5 +1,9 @@
-package betclic.test.player
+package betclic.test.player.repositories
 
+import betclic.test.player.entities.Player
+import betclic.test.player.entities.PlayerEntity
+import betclic.test.player.entities.toPlayer
+import betclic.test.player.entities.toPlayerEntity
 import dev.andrewohara.dynamokt.DataClassTableSchema
 import io.ktor.server.application.*
 import kotlinx.coroutines.coroutineScope
@@ -62,5 +66,4 @@ class PlayerRepository(dynamoDbEnhancedClient: DynamoDbEnhancedAsyncClient) {
         table.createTable().await()
 
     }
-}
-
+}
\ No newline at end of file
diff --git a/src/main/kotlin/player/PlayerRoute.kt b/src/main/kotlin/player/routes/PlayerRoute.kt
similarity index 91%
rename from src/main/kotlin/player/PlayerRoute.kt
rename to src/main/kotlin/player/routes/PlayerRoute.kt
index 439e37b54e7b3cefdb34fa9040440d1d885a75e0..bdb8158dffa5590c8aa74c6d008197a866bda4f2 100644
--- a/src/main/kotlin/player/PlayerRoute.kt
+++ b/src/main/kotlin/player/routes/PlayerRoute.kt
@@ -1,8 +1,10 @@
-package betclic.test.player
+package betclic.test.player.routes
 
 import betclic.test.player.dtos.PlayerCreationDTO
 import betclic.test.player.dtos.PlayerInfoDTO
 import betclic.test.player.dtos.PlayerUpdateDTO
+import betclic.test.player.entities.Player
+import betclic.test.player.services.PlayerService
 import io.ktor.http.*
 import io.ktor.server.application.*
 import io.ktor.server.request.*
diff --git a/src/main/kotlin/player/PlayerService.kt b/src/main/kotlin/player/services/PlayerService.kt
similarity index 87%
rename from src/main/kotlin/player/PlayerService.kt
rename to src/main/kotlin/player/services/PlayerService.kt
index 3214fd689dbf001d357ab2e3fab42d9c331a0f76..cb1dc72ff885d64a48e64499e59c3484de60a511 100644
--- a/src/main/kotlin/player/PlayerService.kt
+++ b/src/main/kotlin/player/services/PlayerService.kt
@@ -1,8 +1,9 @@
-package betclic.test.player
+package betclic.test.player.services
 
 import betclic.test.player.dtos.PlayerCreationDTO
 import betclic.test.player.dtos.PlayerInfoDTO
 import betclic.test.player.dtos.PlayerUpdateDTO
+import betclic.test.player.entities.Player
 
 interface PlayerService {
     suspend fun createNewPlayer(playerCreationDTO: PlayerCreationDTO): Player
diff --git a/src/main/kotlin/player/PlayerServiceImpl.kt b/src/main/kotlin/player/services/PlayerServiceImpl.kt
similarity index 93%
rename from src/main/kotlin/player/PlayerServiceImpl.kt
rename to src/main/kotlin/player/services/PlayerServiceImpl.kt
index 7e652196c5ec4b055afa48186c2340bda3362bef..22f92a79e6374f8607d1379fac4ba07a36849927 100644
--- a/src/main/kotlin/player/PlayerServiceImpl.kt
+++ b/src/main/kotlin/player/services/PlayerServiceImpl.kt
@@ -1,11 +1,13 @@
-package betclic.test.player
+package betclic.test.player.services
 
 import betclic.test.player.dtos.PlayerCreationDTO
 import betclic.test.player.dtos.PlayerInfoDTO
 import betclic.test.player.dtos.PlayerUpdateDTO
 import betclic.test.player.dtos.toPlayer
 import betclic.test.player.dtos.toPlayerInfoDTO
+import betclic.test.player.entities.Player
 import betclic.test.player.exceptions.AlreadyExistingPlayerException
+import betclic.test.player.repositories.PlayerRepository
 import io.ktor.server.plugins.*
 
 class PlayerServiceImpl(private val playerRepository: PlayerRepository) : PlayerService {
diff --git a/src/test/kotlin/player/PlayerIntegrationTest.kt b/src/test/kotlin/player/PlayerIntegrationTest.kt
index 896b785ee05c099e19d02735a671db5aadd00077..62a9ff810b824004c9a3adffcf05242501429481 100644
--- a/src/test/kotlin/player/PlayerIntegrationTest.kt
+++ b/src/test/kotlin/player/PlayerIntegrationTest.kt
@@ -1,10 +1,10 @@
 package player
 
 import BaseIntegrationTest
-import betclic.test.player.Player
-import betclic.test.player.PlayerRepository
 import betclic.test.player.dtos.PlayerCreationDTO
 import betclic.test.player.dtos.PlayerUpdateDTO
+import betclic.test.player.entities.Player
+import betclic.test.player.repositories.PlayerRepository
 import io.ktor.client.request.*
 import io.ktor.http.*
 import kotlinx.serialization.encodeToString
diff --git a/src/test/kotlin/player/PlayerServiceTest.kt b/src/test/kotlin/player/PlayerServiceTest.kt
index c0a592fd5da6a08925b3da7a6fb1fea4acb79ac1..e4aaa1421feb7f93179853ef875c8538b64fc455 100644
--- a/src/test/kotlin/player/PlayerServiceTest.kt
+++ b/src/test/kotlin/player/PlayerServiceTest.kt
@@ -1,11 +1,11 @@
 package player
 
-import betclic.test.player.Player
-import betclic.test.player.PlayerRepository
-import betclic.test.player.PlayerServiceImpl
 import betclic.test.player.dtos.PlayerCreationDTO
 import betclic.test.player.dtos.PlayerUpdateDTO
+import betclic.test.player.entities.Player
 import betclic.test.player.exceptions.AlreadyExistingPlayerException
+import betclic.test.player.repositories.PlayerRepository
+import betclic.test.player.services.PlayerServiceImpl
 import io.ktor.server.plugins.*
 import io.mockk.coEvery
 import io.mockk.coVerify