앱인토스 소개 – 앱인토스 검수 통과 전 점검 체크리스트
앱인토스 검수 전에 대조할 기준은 주로 공식 문서 세 곳에 있습니다. 비게임 출시 가이드, 서비스 오픈 정책, 미니앱 등록하기 문서의 앱 정보 안내예요. 이 글은 그중 검수 요청 전에 손이 가는 기준을 골라 항목마다 맞추는 방법을 적고, 미니앱을 운영하며 남은 실제 검수 기록을 근거로 한두 줄씩 붙였습니다.
출시 가이드 10개 구역 전체를 훑는 내용과 버전 관리·롤백(Rollback) 절차는 출시 전 체크리스트와 버전 관리 글에 정리해 두었습니다. 여기서는 같은 표를 다시 만들지 않고 “이 기준을 이렇게 맞춘다”에만 집중해요. 공식 문서는 모두 2026년 10월 21일에 다시 받아 확인했습니다.

기획 전에 출시 불가 분야부터 대조한다
서비스 오픈 정책 3장 “출시 불가 서비스 · 콘텐츠”는 앱인토스 검수에서 기능을 잘 만들어도 맞출 수 없는 기준입니다. 문서는 미니앱이 토스 플랫폼 정책, 관련 법령, 사용자 보호 기준에 맞는지 미리 점검하라고 하고, 해당하는 서비스는 출시할 수 없다고 적어요. 그래서 이 항목은 개발이 아니라 기획 단계에서 맞춥니다.
| 분야 | 공식 문서의 범위 (2026-10-21 기준) |
|---|---|
| 금융 서비스 및 송금 | 대출·보험·카드·증권 등 금융 상품 관련 서비스, 법적 인허가 여부와 관계없이 등록 불가 |
| 투자 자문·리딩방 | 특정 종목 추천이나 투자 전략 안내로 의사결정에 영향을 주는 서비스 |
| 의료 | 비대면 진료 연결, 병원 예약, 병원 광고비를 받는 구조 등 |
| 부동산·자동차 (한시적) | 수수료 모델 검토를 위해 지금은 입점 제한, 내부 검토 뒤 단계적 오픈 예정 |
| 가상자산·사행성 | 디지털 자산 거래·발행(NFT 포함), 복권·베팅성 콘텐츠 |
표는 3장 항목 중 일부만 추린 것입니다. 부동산 쪽은 매물 검색과 시세 조회뿐 아니라 청약/분양, 세금 계산, 인테리어/리모델링, 이사까지 범위에 들어 있어서 생각보다 넓어요.


실제 사례
실손보험 청구를 대신하지 않고 청구할 곳으로 연결만 하는 미니앱은 “입점 제한 업종 5) 금융 서비스 및 송금 관련 서비스” 사유로, 외부 API도 시세도 없는 청약 가점 계산기는 “부동산 관련 일부 서비스는 현재 정책 검토 중” 사유로 돌아온 기록이 있습니다. 청약 계산기는 앱 정보를 반려 없이 제출해 둔 상태였어요. 출시 불가 분야는 앱 정보 단계와 따로 확인된다는 점을 같이 기억해 둘 만합니다.
앱 정보는 상세 설명과 스크린샷 규격을 맞춘다
미니앱 등록하기 문서는 앱인토스 검수에 함께 올라가는 앱 정보 칸마다 기준을 따로 둡니다. 상세 설명은 사용자가 처음 실행한 뒤 핵심 기능을 경험하기까지의 과정을 “서비스 접속 → 행동 → 결과” 흐름의 문장으로 적으라고 안내해요. 상세 설명을 바탕으로 토스 홈 광고 대상으로 선정될 수 있다는 문장도 있어서, 기능 이름만 나열하기보다 무엇을 보고 누르는지까지 쓰는 편이 기준에 맞습니다.

주요 기능은 한국어 이름 10자, 영어 이름 15자 이내이고 특수문자는 :과 .만 쓸 수 있습니다. 이동할 intoss://pages 주소에 정상 접속되지 않으면 반려될 수 있다고 문서에 적혀 있어서, 제출 전에 주소를 하나씩 열어 보면 이 항목은 확인됩니다. 카테고리는 실제 서비스와 다르면 검토 과정에서 알맞은 것으로 바꾼 뒤 안내한다고 합니다.
실제 사례
앱 정보 상세 설명에 맞춤법 오류가 있다는 앱인토스 검수 의견을 받은 기록이 있습니다. 원인은 한글을 \uXXXX 형식으로 손으로 바꾸다 생긴 인코딩 실수였고, 문자를 다시 확인해 재제출하자 바로 승인됐어요. 스크립트나 도구로 앱 정보를 넣는다면 입력한 뒤 콘솔 화면에서 글자를 한 번 더 읽는 단계를 두면 됩니다.
뒤로가기는 토스 내비게이션 바 하나로 처리한다
내비게이션 바 구역의 뒤로가기 기준은 두 문장으로 정리됩니다. 토스 내비게이션 바의 뒤로가기 버튼과 미니앱이 자체 구현한 뒤로가기 버튼이 동시에 보이면 안 되고, 최초 화면에서 뒤로가기를 누르면 미니앱이 종료돼야 해요. 내비게이션 바 설정 문서에는 withBackButton 옵션으로 뒤로가기 버튼 표시 여부를 정하는 방법이 있습니다.

맞추는 방법은 자체 헤더와 뒤로가기 버튼을 화면에서 빼고, 토스 뒤로가기를 SDK 이벤트로 받는 것입니다. graniteEvent.addEventListener("backEvent", …)는 구독을 해제하는 함수를 돌려주므로 화면을 떠날 때 그 함수를 부르면 돼요. 원본 디자인 기준 문서에는 화면을 떠날 때 해제하지 않으면 메인에서 앱이 종료되지 않는다는 주의와, 홈에서는 열린 시트가 없으면 구독 자체를 하지 않는다는 규칙이 적혀 있습니다.
상단에 토스 뒤로가기와 자체 뒤로가기가 함께 보인다
뒤로가기를 누를 곳이 두 군데가 된다
토스 내비게이션 바의 뒤로가기만 보인다
하위 화면은 backEvent로 이전 화면에 간다 최초 화면에서는 미니앱이 종료된다

실제 사례
“내비게이션 바의 뒤로가기 버튼과 미니앱 자체 헤더 및 뒤로가기 버튼이 함께 노출돼요”라는 같은 앱인토스 검수 문구를 서로 다른 미니앱에서 받은 기록이 있습니다. 한 앱은 홈과 앨범의 자체 헤더, 앨범의 뒤로가기 버튼을 빼고, 앨범의 토스 뒤로가기는 기존처럼 홈으로 이어지게 두었고, 바뀐 화면에 맞춰 콘솔 스크린샷 3장(636×1048)도 다시 만들었어요.
진입 화면과 네트워크 대기 시간은 웹뷰 기준으로 잡는다
앱인토스 출시 가이드의 UX 구역은 미니앱에 진입하자마자 토스 로그인이나 알림 동의문 같은 바텀시트가 자동으로 나타나지 않아야 한다고 적습니다. 기준 원문은 출시 전 체크리스트 글에 정리해 두었고, 바텀시트 컴포넌트를 “사용자가 탭했을 때만 열린다”로 만들어 두면 이 기준에 맞출 수 있습니다.
놓치기 쉬운 쪽은 이전 실행의 상태입니다. 원본 디자인 기준 문서에는 지난 실행에서 열려 있던 시트 상태를 복원한 것이 실제 재심사 사유였다고 적혀 있어요. 같은 문서는 이 경우를 진입 시 자동 모달·바텀시트 금지 항목 아래에 함께 묶어 두었어요. 원본 시트 컴포넌트의 주석도 “진입 시 자동으로 열거나 지난 실행 상태를 복원하지 않는다”로 이 규칙을 적어 두었고요.
네트워크 대기 시간도 같은 원리입니다. 출시 가이드는 호출 실패 시 재시도 횟수와 간격을 제어하고, 인터랙션 반응이 2초 이상 지연되지 않게 하라고 해요. 원본 기록에는 데스크톱 기준으로 짧게 잡은 타임아웃이 웹뷰의 정상 응답을 실패로 처리한 것이 재심사 사유였다고 남아 있습니다. 같은 문서는 읽기·인증 15초, 네이티브 브리지 8초를 출발점으로 잡는데, 이 숫자는 공식 기준이 아니라 원본 작업 기준이에요.
이 구역을 맞출 때 같이 보는 것
- 첫 화면은 외부 요청을 기다리지 않고 먼저 그린다(원본 디자인 기준 문서의 규칙).
- 원본 디자인 기준 문서는 지속 연결보다 단발 HTTPS 요청이 웹뷰에서 안정적이라고 적고 있다. HTTPS·
wss://만 허용하는 것은 출시 가이드의 보안 항목이다. - 기기 권한은 동의를 먼저 받고, 허용하지 않아도 나머지 기능이 정상 작동해야 한다.
인앱 광고 ID는 빌드 종류로 나눈다
앱인토스 검수에서 광고 기준은 두 문서에 나뉘어 있습니다. 인앱 광고 문서는 개발 단계에서 반드시 테스트용 광고 ID를 쓰라고 하고, 실제 광고 ID로 테스트하면 정책 위반으로 간주해 불이익을 받을 수 있다고 적어요. 출시 가이드에는 테스트 광고가 아닌 실제 인앱 광고가 정상적으로 노출돼야 한다는 항목이 있습니다. 개발 중에는 테스트 ID, 출시 번들에는 실제 ID가 들어가야 둘 다 맞출 수 있죠.
실제 사례
번들에 테스트 광고 그룹 ID가 포함됐다는 앱인토스 검수 의견을 받은 기록이 있습니다. 광고 ID를 고르는 코드를 고친 뒤 새 번들 전체에 테스트 ID가 없는지 검사했고, 다시 낸 번들은 검수 승인을 받았어요.
고친 코드의 핵심은 아래 함수입니다. 실행 환경이 샌드박스면 테스트 ID를, 토스 앱이면 콘솔에서 발급한 실제 ID를 돌려주고, 그 밖에는 빈 값을 돌려줘요.
export function selectAdGroupId(
format: AdFormat,
environment: RuntimeEnvironment,
liveId: string,
testIds: Partial<Record<AdFormat, string>> | undefined = TEST_AD_GROUP_IDS,
): string {
if (environment === 'sandbox') return testIds?.[format] ?? '';
if (environment === 'toss') return liveId;
return '';
}코드만 봐서는 모르는 것
- 기본값
TEST_AD_GROUP_IDS는 개발 빌드(import.meta.env.DEV)일 때만 채워집니다. 원본 주석에 따르면 출시 빌드에서는 이 값이 치환돼 테스트 ID가.ait번들에서 빠져요. - 그래서 출시 번들이 샌드박스에서 열리면 테스트 ID 대신 빈 값이 돌아갑니다.
- 환경을 알 수 없거나 SDK를 쓸 수 없으면 실제 ID를 넘기지 않는다는 것이 이 파일의 원칙으로 주석에 적혀 있습니다.

광고 종류와 load·show 호출 순서는 인앱 광고 글에 따로 정리했습니다.
앱인토스 검수 요청 직전에 확인할 순서
앞의 항목을 다 맞췄다면 검토 요청 전에 아래 순서로 한 번 더 봅니다. 순서는 미니앱 등록하기 문서의 번들 업로드·토스앱 테스트·검토 요청 단계에 이 글의 점검 항목을 끼워 넣은 것이에요.
- 번들 업로드. 압축 해제 기준 100MB 이하만 올라갑니다.
- 토스앱 테스트. 콘솔의 QR 코드로 토스 앱에서 엽니다. 토스 앱 로그인, 워크스페이스 멤버, 만 19세 이상이어야 실행되고, 최소 1번 완료해야 검토를 요청할 수 있어요.
- 화면 점검. 모든 화면에서 뒤로가기, 최초 화면 종료, 진입 시 바텀시트가 없는지 확인합니다.
- 앱 정보 점검. 상세 설명 글자, 스크린샷이 지금 화면과 같은지, 주요 기능 주소가 열리는지 봅니다.
- 검토 요청. 영업일 기준 3~7일 걸리고 결과는 콘솔과 이메일로 옵니다.
출시 뒤에도 기준은 적용됩니다
비게임 출시 가이드는 체크리스트를 지키지 않았거나 다크 패턴(Dark Pattern)이 확인되면 검수가 승인되지 않고, 출시 뒤에 확인된 경우에도 서비스 노출이 제한되거나 중단될 수 있다고 적고 있습니다. 서비스 오픈 정책도 수시로 개정될 수 있다고 밝혀서, 앱인토스 검수 요청 때마다 원문을 다시 열어 보는 편이 맞아요.
승인 뒤 출시하기와 새 버전 업데이트, 롤백은 출시 전 체크리스트와 버전 관리 글의 순서를 따르면 됩니다.
참고한 공식 문서
기준과 절차는 바뀔 수 있으니 검수 요청 전에 원문을 확인하세요.
업무에 맞춘 AI 설계 상담은 AI특별시에서 받습니다.
앱인토스 검수 자주 묻는 질문
앱인토스 검수는 얼마나 걸리나요?
미니앱 등록하기 문서에 따르면 검토 요청 뒤 영업일 기준 3~7일이 걸리고, 결과는 콘솔과 이메일로 안내됩니다. 검토 요청은 업로드한 번들로 토스앱 테스트를 최소 1번 완료해야 할 수 있어요.
금융이나 부동산 관련 미니앱도 낼 수 있나요?
2026년 10월 21일 기준 서비스 오픈 정책은 대출·보험·카드·증권 등 금융 상품 관련 서비스를 법적 인허가 여부와 관계없이 등록할 수 없다고 적고 있습니다. 부동산과 자동차 카테고리는 수수료 모델 검토를 위해 한시적으로 입점이 제한된다고 안내합니다.
자체 뒤로가기 버튼을 만들어도 되나요?
비게임 출시 가이드는 토스 내비게이션 바의 뒤로가기 버튼과 미니앱에서 자체 구현한 뒤로가기 버튼이 동시에 보이지 않아야 한다고 적고 있습니다. 토스 뒤로가기는 graniteEvent의 backEvent로 받아 화면마다 처리할 수 있어요.
앱인토스는 토스 앱 안에서 미니앱을 서비스하는 플랫폼이고, 공식 안내는 앱인토스 개발자센터에 있습니다.
이 글은 공식 자료와 실제 화면을 기준으로 정리했습니다. 정책·가격은 기준일 이후 바뀔 수 있습니다.
