diff --git a/src/main/java/in/koreatech/koin/auth/JwtProvider.java b/src/main/java/in/koreatech/koin/domain/auth/JwtProvider.java
similarity index 93%
rename from src/main/java/in/koreatech/koin/auth/JwtProvider.java
rename to src/main/java/in/koreatech/koin/domain/auth/JwtProvider.java
index 9f679dfe7..e688cf60c 100644
--- a/src/main/java/in/koreatech/koin/auth/JwtProvider.java
+++ b/src/main/java/in/koreatech/koin/domain/auth/JwtProvider.java
@@ -1,16 +1,19 @@
-package in.koreatech.koin.auth;
+package in.koreatech.koin.domain.auth;
-import in.koreatech.koin.domain.user.User;
-import io.jsonwebtoken.Jwts;
-import io.jsonwebtoken.security.Keys;
import java.security.Key;
import java.time.Instant;
import java.util.Base64;
import java.util.Date;
+
import javax.crypto.SecretKey;
+
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;
+import in.koreatech.koin.domain.user.model.User;
+import io.jsonwebtoken.Jwts;
+import io.jsonwebtoken.security.Keys;
+
@Component
public class JwtProvider {
diff --git a/src/main/java/in/koreatech/koin/controller/shop/ShopController.java b/src/main/java/in/koreatech/koin/domain/shop/controller/ShopController.java
similarity index 79%
rename from src/main/java/in/koreatech/koin/controller/shop/ShopController.java
rename to src/main/java/in/koreatech/koin/domain/shop/controller/ShopController.java
index 71c6b8153..efb4520ef 100644
--- a/src/main/java/in/koreatech/koin/controller/shop/ShopController.java
+++ b/src/main/java/in/koreatech/koin/domain/shop/controller/ShopController.java
@@ -1,12 +1,12 @@
-package in.koreatech.koin.controller.shop;
+package in.koreatech.koin.domain.shop.controller;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RestController;
-import in.koreatech.koin.dto.shop.ShopMenuResponse;
-import in.koreatech.koin.service.shop.ShopService;
+import in.koreatech.koin.domain.shop.dto.ShopMenuResponse;
+import in.koreatech.koin.domain.shop.service.ShopService;
import lombok.RequiredArgsConstructor;
@RestController
diff --git a/src/main/java/in/koreatech/koin/dto/shop/ShopMenuResponse.java b/src/main/java/in/koreatech/koin/domain/shop/dto/ShopMenuResponse.java
similarity index 90%
rename from src/main/java/in/koreatech/koin/dto/shop/ShopMenuResponse.java
rename to src/main/java/in/koreatech/koin/domain/shop/dto/ShopMenuResponse.java
index 57e2842e9..03dbaf604 100644
--- a/src/main/java/in/koreatech/koin/dto/shop/ShopMenuResponse.java
+++ b/src/main/java/in/koreatech/koin/domain/shop/dto/ShopMenuResponse.java
@@ -1,14 +1,14 @@
-package in.koreatech.koin.dto.shop;
+package in.koreatech.koin.domain.shop.dto;
import java.util.List;
import com.fasterxml.jackson.databind.PropertyNamingStrategies.SnakeCaseStrategy;
import com.fasterxml.jackson.databind.annotation.JsonNaming;
-import in.koreatech.koin.domain.shop.Menu;
-import in.koreatech.koin.domain.shop.MenuCategory;
-import in.koreatech.koin.domain.shop.MenuImage;
-import in.koreatech.koin.domain.shop.MenuOption;
+import in.koreatech.koin.domain.shop.model.Menu;
+import in.koreatech.koin.domain.shop.model.MenuCategory;
+import in.koreatech.koin.domain.shop.model.MenuImage;
+import in.koreatech.koin.domain.shop.model.MenuOption;
import lombok.extern.slf4j.Slf4j;
@Slf4j
diff --git a/src/main/java/in/koreatech/koin/domain/shop/Menu.java b/src/main/java/in/koreatech/koin/domain/shop/model/Menu.java
similarity index 95%
rename from src/main/java/in/koreatech/koin/domain/shop/Menu.java
rename to src/main/java/in/koreatech/koin/domain/shop/model/Menu.java
index 80b62296d..0c89a4c53 100644
--- a/src/main/java/in/koreatech/koin/domain/shop/Menu.java
+++ b/src/main/java/in/koreatech/koin/domain/shop/model/Menu.java
@@ -1,9 +1,9 @@
-package in.koreatech.koin.domain.shop;
+package in.koreatech.koin.domain.shop.model;
import java.util.ArrayList;
import java.util.List;
-import in.koreatech.koin.domain.BaseEntity;
+import in.koreatech.koin.global.common.BaseEntity;
import jakarta.persistence.CascadeType;
import jakarta.persistence.Column;
import jakarta.persistence.Entity;
diff --git a/src/main/java/in/koreatech/koin/domain/shop/MenuCategory.java b/src/main/java/in/koreatech/koin/domain/shop/model/MenuCategory.java
similarity index 93%
rename from src/main/java/in/koreatech/koin/domain/shop/MenuCategory.java
rename to src/main/java/in/koreatech/koin/domain/shop/model/MenuCategory.java
index 9659baafd..e9c73255d 100644
--- a/src/main/java/in/koreatech/koin/domain/shop/MenuCategory.java
+++ b/src/main/java/in/koreatech/koin/domain/shop/model/MenuCategory.java
@@ -1,9 +1,9 @@
-package in.koreatech.koin.domain.shop;
+package in.koreatech.koin.domain.shop.model;
import java.util.ArrayList;
import java.util.List;
-import in.koreatech.koin.domain.BaseEntity;
+import in.koreatech.koin.global.common.BaseEntity;
import jakarta.persistence.Column;
import jakarta.persistence.Entity;
import jakarta.persistence.GeneratedValue;
diff --git a/src/main/java/in/koreatech/koin/domain/shop/MenuCategoryMap.java b/src/main/java/in/koreatech/koin/domain/shop/model/MenuCategoryMap.java
similarity index 97%
rename from src/main/java/in/koreatech/koin/domain/shop/MenuCategoryMap.java
rename to src/main/java/in/koreatech/koin/domain/shop/model/MenuCategoryMap.java
index 0c9478cb9..b5417e86f 100644
--- a/src/main/java/in/koreatech/koin/domain/shop/MenuCategoryMap.java
+++ b/src/main/java/in/koreatech/koin/domain/shop/model/MenuCategoryMap.java
@@ -1,4 +1,4 @@
-package in.koreatech.koin.domain.shop;
+package in.koreatech.koin.domain.shop.model;
import jakarta.persistence.CascadeType;
import jakarta.persistence.Column;
diff --git a/src/main/java/in/koreatech/koin/domain/shop/MenuImage.java b/src/main/java/in/koreatech/koin/domain/shop/model/MenuImage.java
similarity index 96%
rename from src/main/java/in/koreatech/koin/domain/shop/MenuImage.java
rename to src/main/java/in/koreatech/koin/domain/shop/model/MenuImage.java
index d99a29cd6..5b7af596a 100644
--- a/src/main/java/in/koreatech/koin/domain/shop/MenuImage.java
+++ b/src/main/java/in/koreatech/koin/domain/shop/model/MenuImage.java
@@ -1,4 +1,4 @@
-package in.koreatech.koin.domain.shop;
+package in.koreatech.koin.domain.shop.model;
import jakarta.persistence.Column;
import jakarta.persistence.Entity;
diff --git a/src/main/java/in/koreatech/koin/domain/shop/MenuOption.java b/src/main/java/in/koreatech/koin/domain/shop/model/MenuOption.java
similarity index 93%
rename from src/main/java/in/koreatech/koin/domain/shop/MenuOption.java
rename to src/main/java/in/koreatech/koin/domain/shop/model/MenuOption.java
index ed4be6d7a..f7f61000a 100644
--- a/src/main/java/in/koreatech/koin/domain/shop/MenuOption.java
+++ b/src/main/java/in/koreatech/koin/domain/shop/model/MenuOption.java
@@ -1,6 +1,6 @@
-package in.koreatech.koin.domain.shop;
+package in.koreatech.koin.domain.shop.model;
-import in.koreatech.koin.domain.BaseEntity;
+import in.koreatech.koin.global.common.BaseEntity;
import jakarta.persistence.Column;
import jakarta.persistence.Entity;
import jakarta.persistence.FetchType;
diff --git a/src/main/java/in/koreatech/koin/repository/shop/MenuRepository.java b/src/main/java/in/koreatech/koin/domain/shop/repository/MenuRepository.java
similarity index 69%
rename from src/main/java/in/koreatech/koin/repository/shop/MenuRepository.java
rename to src/main/java/in/koreatech/koin/domain/shop/repository/MenuRepository.java
index 62d89cad2..d06c52dbb 100644
--- a/src/main/java/in/koreatech/koin/repository/shop/MenuRepository.java
+++ b/src/main/java/in/koreatech/koin/domain/shop/repository/MenuRepository.java
@@ -1,10 +1,10 @@
-package in.koreatech.koin.repository.shop;
+package in.koreatech.koin.domain.shop.repository;
import java.util.Optional;
import org.springframework.data.repository.Repository;
-import in.koreatech.koin.domain.shop.Menu;
+import in.koreatech.koin.domain.shop.model.Menu;
public interface MenuRepository extends Repository