앱 이전 방법: 다른 Apple Developer 계정으로 옮기기
글: Mehdi Azizi
게시, 9분
앱 이전은 소유자가 App Transfer를 시작하고 받는 쪽이 60일 안에 수락하면 돼요. 평점, 리뷰, Bundle ID는 그대로 유지돼요.
앱을 한 Apple Developer 계정에서 다른 계정으로 옮기고 싶다면 App Store Connect의 앱 이전(App Transfer) 기능을 쓰면 돼요. 넘겨주는 계정의 소유자가 이전을 시작하고, 받는 계정의 소유자가 60일 안에 수락하면, 처리는 최대 영업일 기준 2일이 걸려요. 앱은 계속 판매되고, 평점과 리뷰, Bundle ID도 그대로 유지돼요. 사용자는 계속 업데이트를 받을 수 있어요.
깨지는 부분은 버튼을 누르기 전에 미리 준비해야 해요. TestFlight, 구독, Sign in with Apple, 푸시 알림, 공유 키체인이 그래요. 저는 아직 앱을 직접 이전해 본 적이 없어요. 이 가이드는 2026년 11월 3일에 다시 확인한 Apple 도움말 페이지를 바탕으로 했고, 마지막 체크리스트는 Expo와 RevenueCat으로 만든 제 앱에 제가 실제로 적용할 내용이에요.
앱을 이전해야 하는 경우
앱 이전 개요에 따르면, 앱을 다른 개발자에게 팔았거나 다른 계정 또는 다른 조직으로 옮기고 싶을 때 쓰는 기능이에요. 1인 개발자에게 흔한 예는 개인 계정에서 자기 회사 계정으로 옮기는 경우예요. 회사 계정을 만들려면 먼저 D-U-N-S 번호 가이드를 읽어 보세요.
이전되는 건 앱이지, 계정이 아니에요. 앱마다 따로 이전해야 하고, 이전이 끝나면 앱은 내 계정에서 완전히 빠져요.
Apple의 9가지 조건
이전 조건 페이지에는 다음 9가지가 이 순서대로 나와 있어요.
| Apple의 조건 | 확인할 내용 |
|---|---|
| 두 계정 모두 대기 중이거나 변경 중인 상태가 아니고, 유료 및 무료 계약의 최신 버전에 모두 동의했을 것 | 양쪽 모두 Business의 Agreements 탭 |
| 앱이 App Store에 출시된 버전이 하나 이상 있을 것 | 한 번도 출시되지 않은 앱은 이전 불가 |
| 앱이 어떤 국가나 지역에서도 사전 주문 상태가 아닐 것 | 사전 주문 종료 또는 철회 |
| 앱이 다음 상태가 아닐 것: Processing for Distribution, Waiting for Review, In Review, Accepted, Pending Developer Release, Pending Apple Release | 최신 버전이 판매 중일 것 |
| 인앱 구매가 다음 상태 중 하나일 것: Approved, Ready to Submit, Developer Removed from Sale, Rejected | 심사 중이거나 미완성인 인앱 구매가 없을 것 |
| Apple이 호스팅하는 에셋 팩에 TestFlight나 App Store에서 Waiting for Review 또는 In Review인 버전이 없을 것 | 이쪽도 심사 중인 항목이 없을 것 |
| 앱의 인앱 구매 제품 ID 중 받는 쪽 앱이 이미 쓰고 있는 것이 없을 것 | 두 계정의 제품 ID 비교 |
| 샌드박스를 사용했고 Application Group Container Directory를 다른 Mac 앱과 공유하는 Mac 앱은 이전 불가 | 일부 Mac 앱만 해당 |
| Apple Arcade 앱은 이전 불가 | 해당하는 프로젝트는 많지 않음 |
이전을 시작하기 전에 최신 버전이 판매 중인 상태가 될 때까지 기다리세요.
이전 준비하기
Apple 도움말 페이지에 따르면, 다음 항목은 버튼을 누르기 전에 처리해야 해요.
- 전부 백업하세요. 앱이 내 계정에서 빠지니까 메타데이터, 가격, 출시 날짜, 판매량, 다운로드 수를 내보내 두세요.
- TestFlight를 정리하세요. 모든 빌드와 테스터를 제거하고, 모든 언어의 Test Information 항목을 비우세요. 그룹이 어떻게 동작하는지는 TestFlight 가이드에 있어요.
- Xcode Cloud를 비우고, App Replacement entitlement가 있다면 업데이트를 출시해서 제거하세요.
- 구독: 앱 전용 공유 암호를 넘겨주세요. 자동 갱신 구독을 판매하는 앱은 앱 전용 공유 암호를 써야 해요. 암호를 생성해서 받는 쪽에 전달한 다음 이전을 시작하세요. 받는 쪽은 수락하기 전에 서버를 업데이트하고, 이전이 끝나면 새 암호를 생성해요.
- Sign in with Apple: 그룹을 해제하고 식별자를 준비하세요. 아래에서 자세히 설명할게요.
- Webhooks: 어떻게 할지 정하세요. 웹훅은 앱을 따라가요. 더 이상 이벤트를 받고 싶지 않다면 미리 삭제하고, 아니면 받는 쪽에서 주소를 바꾸게 하세요.
돈과 관련해서 알아 둘 영향이 두 가지 있어요. Small Business Program 페이지에 따르면, 해당 앱의 그 해 순수익은 이전을 시작하거나 수락한 모든 계정에 합산돼요. 그래서 100만 달러 기준은 양쪽 모두 이 앱을 포함해서 판단해요. 15% 수수료를 참고하세요. 또 이전 후에는 그 앱의 프로모션 코드를 새로 만들 수 없어요. 기존 코드는 생성 후 4주 동안 유효해요.
넘겨주는 쪽의 단계
이전은 계정 소유자(Account Holder)만 시작할 수 있어요. 받는 쪽 소유자의 Apple ID와 그 계정의 Team ID가 필요해요. 이전 시작 도움말에 따르면 다음과 같아요.
- Apps에서 앱을 선택해요.
- 사이드바의 General 아래에서 App information을 클릭하고, Additional Information까지 스크롤해요.
- Transfer App을 클릭해요. 2단계 인증 코드를 요구할 수 있어요.
- 모든 조건을 충족했다면 Continue를 클릭해요. 아니라면 Cancel을 누르고 부족한 부분을 해결하세요.
- 받는 쪽 소유자의 Apple ID와 Team ID를 입력하고 Continue를 클릭해요.
- 약관을 읽고 동의 체크박스를 선택한 다음 Request Transfer를 클릭해요.
- Done을 클릭해요.
앱은 기존 상태를 유지하고, 여기에 Pending App Transfer 표시가 붙어요. 이 기간에는 메타데이터, 가격, 출시 국가, 인앱 구매를 수정할 수 없어요. 진행 중이던 App Review와의 대화도 닫혀요.
받는 쪽의 단계
받는 계정의 소유자만 60일 안에 수락할 수 있어요. 이전 수락 도움말에 따르면 다음과 같아요.
- App Store Connect에 로그인하면 이전될 앱에 대한 알림이 떠요.
- Business를 열면 Agreements에 알림이 표시돼요.
- App Transfers 아래에서 Review를 클릭해요.
- 지원 URL, 마케팅 URL, 앱에 있었다면 개인정보 처리방침 URL, 그리고 App Review와 App Store용 연락처를 입력해요.
- User Access에서 팀의 누가 앱을 볼 수 있을지 선택해요.
- App privacy에서 이전 소유자의 답변을 그대로 쓰거나 새로 작성해요. 답변이 없으면 다음 버전 전에 채워야 해요.
- 약관을 읽고 동의 체크박스를 선택한 다음 Accept를 클릭해요.
이전은 Processing App Transfer 상태로 바뀌고, 최대 영업일 기준 2일이 걸려요. 수출 관련 서류가 필요한 앱이면 Waiting for Export Compliance 단계를 거쳐요. 끝나면 양쪽 소유자에게 알림이 가고, 앱은 넘겨준 쪽 계정에서 사라져요. 그다음 받는 쪽은 새 프로비저닝 프로파일을 만들어요. 앱의 App ID와 배포 인증서에 연결된 프로파일이에요. iOS 인증서와 프로파일을 참고하세요.
상태가 Waiting for Recipient인 동안에는 양쪽 모두 취소할 수 있어요. Business의 App Transfers 섹션에서 넘겨주는 쪽은 Cancel Transfer, 받는 쪽은 Decline을 누르면 돼요.
앱을 따라가는 것과 깨지는 것
| 항목 | 이전 후 | 할 일 |
|---|---|---|
| Bundle ID와 App ID | 따라감, 와일드카드 App ID는 명시적 ID로 바뀜 | 없음 |
| 평점, 리뷰, 업데이트 | 따라감, 앱은 계속 판매됨 | 없음 |
| 자동 갱신 구독 | 앱 전용 공유 암호 필요 | 이전 전에 암호 전달, 이전 후 재생성 |
| iCloud | 데이터, 컨테이너, 키-값 식별자가 따라감 | entitlement의 키-값 식별자 업데이트 |
| Sign in with Apple Service ID | 미리 연결을 해제하지 않으면 따라감 | 60일 안에 이전 식별자 교환 |
| Webhooks | 따라감 | 미리 삭제하거나 이전 후 주소 변경 |
| 푸시 알림 | 인증서는 만료일까지 유효 | 받는 쪽 APNs 키, 서버 업데이트 |
| 공유 키체인 | 다음 업데이트 전까지 동작 | 받는 쪽 Team ID로 그룹 재생성 |
| App Groups | 앱은 계속 사용 가능 | 넘겨주는 쪽에서 그룹 삭제, 받는 쪽에서 등록 |
| Apple Pay | merchant ID는 따라가지 않음 | 다음 업데이트 전에 새 merchant ID |
| Wallet 패스 | 앱이 업데이트하는 패스는 재발급 필요 | 새 식별자 |
| 프로모션 코드 | 새 코드 생성 불가 | 기존 코드는 4주 동안 유효 |
| 판매와 정산 | 이전 전은 넘겨준 쪽, 이후는 받는 쪽 | 시작 전에 내보내기 |
| App Analytics | 넘겨준 쪽은 접근 권한을 잃고, 받는 쪽이 기록을 받음 | 없음 |
| 피처링 추천, 번들 기록 | 따라가지 않음 | 시작 전에 기록해서 전달 |
키체인은 특히 주의해야 해요. Apple의 경고에 따르면, 업데이트 후에는 앱이 공유 키체인에 저장된 로그인 토큰을 더 이상 찾지 못해서 사용자가 한 번 다시 로그인해야 해요. 앱이 다른 앱이나 익스텐션과 키체인을 공유한다면, 이 업데이트를 출시하기 전에 사용자에게 미리 알려 주세요.
Game Center의 그룹, 통합 리더보드, 매치메이킹 규칙은 받는 쪽에서 다시 만들어야 해요. Mac Catalyst 앱은 두 번에 나눠 이전되고, iPad 앱이 먼저예요.
Sign in with Apple: 이전 식별자
Sign in with Apple에서는 사용자마다 식별자가 팀별로 고유해요. 받는 쪽은 그 식별자를 그대로 쓸 수 없어요. 사용자 이전에 관한 Apple 문서는 세 단계를 안내해요.
- 앱 그룹을 해제하세요. Sign in with Apple용으로 다른 앱과 묶인 앱은 이전할 수 없어요.
- 사용자마다 이전 식별자를 생성하세요.
user.migration스코프로 받은 토큰을 사용해서, 사용자의 식별자와 받는 쪽 Team ID로usermigrationinfo엔드포인트를 호출해요. 응답에transfer_sub가 들어 있어요. - 이전 식별자만 전달하세요. 내 팀의 식별자나 비공개 이메일 주소는 넘기지 마세요.
이 식별자는 수락 전에, 또는 수락 후 60일까지 생성할 수 있어요. 받는 쪽은 수락 후 60일 안에 이를 자기 식별자로 교환해야 해요. 이전을 시작하기 전에 이 교환 일정을 잡아 두세요. 또 하나, 내 다른 앱을 쓰지 않는 사용자에게는 이전 후 비공개 주소로 더 이상 메일을 보낼 수 없어요. 로그인 규칙은 가이드라인 4.8에 있어요.
기억해야 할 기한
| 단계 | 기한 |
|---|---|
| 받는 쪽의 수락 | 시작 후 60일 |
| 수락 후 처리 | 최대 영업일 기준 2일 |
| Sign in with Apple 식별자 교환 | 수락 후 60일 |
| 기존 프로모션 코드 | 생성 후 4주 |
| 이전된 APNs 인증서 | 만료일까지 |
Expo와 RevenueCat 앱을 위한 제 체크리스트
제 앱이라면 이 순서대로 확인할 거예요.
- 시작 전에 판매량, 다운로드 수, 애널리틱스를 내보내요.
- 최신 버전이 판매 중이고 인앱 구매가 허용된 상태가 될 때까지 기다려요.
- 빌드, 테스터, Test Information까지 TestFlight를 정리해요.
- 앱 전용 공유 암호를 전달한 뒤 이전을 시작해요.
- 받는 쪽은 수락 후 새 공유 암호를 만들어서 RevenueCat을 포함해 구독을 검증하는 모든 서비스에 입력해요. App Store Connect 도움말에 따르면 인앱 구매 키는 Users and Access의 Integrations 탭에서 만들고, 다운로드는 한 번만 할 수 있어요.
- 앱 정보에서 서버 알림 주소를 확인해요. Apple의 이전 페이지에는 이 내용이 없으니, 짐작하지 말고 직접 확인하세요.
- 받는 쪽 계정에서 프로파일과 APNs 키를 다시 만들어요. Expo 앱이라면 Expo의 APNs 푸시 인증서에 방법이 있어요.
- 새 계정으로 서명한 업데이트를 출시해요. 키체인을 공유한다면 재로그인이 필요하다고 미리 알려요.
잘 돌아가는 걸 잃지 않고 출시하기
iOS & Android Kit는 제 앱의 시작 코드에서 출발해서, 4단계를 거쳐 App Store까지 내 속도에 맞춰 진행해요. 전체 과정은 App Store에 앱 출시하기 페이지에 있어요.
뭔가를 바꾸기 전에 무료 진단을 받아 보세요. 단계를 순서대로 정리해 주고, Apple 리젝 방지 체크리스트도 보내 드려요.
자주 묻는 질문
App Store 앱 이전은 얼마나 걸리나요?
받는 쪽은 60일 안에 수락하면 돼요. 수락 후 처리에는 Apple 기준으로 최대 영업일 2일이 걸려요. 수출 관련 서류가 필요한 앱이면 확인 단계가 하나 더 붙어요.
이전하는 동안 앱이 App Store에서 사라지나요?
아니요. 앱은 이전 중에도, 이전 후에도 계속 판매돼요. 평점, 리뷰, Bundle ID가 유지되고, 사용자는 계속 업데이트를 받아요.
이전 후에도 구독자는 구독을 유지하나요?
Apple은 구독자에게 끊김이 생긴다고 설명하지 않아요. 유일한 요구 사항은 앱 전용 공유 암호예요. 넘겨주는 쪽이 미리 전달하고, 받는 쪽이 서버를 업데이트한 뒤 이전이 끝나면 새 암호를 생성해요.
한 번도 출시하지 않은 앱도 이전할 수 있나요?
아니요. 앱은 App Store에 출시된 버전이 하나 이상 있어야 해요. 사전 주문 중이거나 심사 중이어도 안 돼요.
앱 이전은 누가 시작하고 수락할 수 있나요?
Account Holder라고 부르는 계정 소유자만 할 수 있어요. 넘겨주는 쪽은 받는 쪽 소유자의 Apple ID와 그 계정의 Team ID가 필요해요.
앱 이전을 취소할 수 있나요?
네, 상태가 Waiting for Recipient인 동안에는 가능해요. Business의 App Transfers 섹션에서 넘겨주는 쪽은 Cancel Transfer를, 받는 쪽은 Decline을 클릭하면 돼요. 아무 응답이 없으면 이전은 60일 후에 만료돼요.

