一键导入
toss-monetization-ops
Toss 수익화 운영 스킬 — Ads/IAP/TossPay 콘솔 설정, 샌드박스 시나리오, QA 증적 수집을 표준화.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Toss 수익화 운영 스킬 — Ads/IAP/TossPay 콘솔 설정, 샌드박스 시나리오, QA 증적 수집을 표준화.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Toss Mock 인증 스킬 — stable userKey 설정, survey 루프 근본 원인 진단, adb 기반 진단 순서를 표준화한 스킬.
Toss IAP 검증 스킬 — Edge Function 404 우회, Service Role 감지, mTLS mock 설정, 토큰 헬퍼 분리, subscriptions 활성화 E2E.
AIT .ait 번들 빌드 → 콘솔 업로드 → 테스트 진입 성공 패턴. env var 인라인 실패(supabase url is required), babel/esbuild 충돌, __dirname 경로 문제 해결책 포함.
FastAPI + SQLAlchemy + Supabase 모델 작성 규칙 — DB 타입 불일치 방지, async cascade 패턴, Pydantic enum 검증. 2026-05-19 E2E 테스트(Wave 1~9)에서 발견한 BUG-01~05 재발 방지 지침.
TaillogToss 로컬 개발 서버(Metro + FastAPI) 시작/재시작 절차. "서버 켜줘", "서버 재시작", "앱 안됨", "번들 안됨" 등 서버 기동 관련 모든 상황에 사용한다.
TaillogToss Phase 13 게이트 운영 — AUTH/IAP/MSG/AD E2E 기준 점검, 증적 수집, 문서 상태 동기화.
| name | toss-monetization-ops |
| description | Toss 수익화 운영 스킬 — Ads/IAP/TossPay 콘솔 설정, 샌드박스 시나리오, QA 증적 수집을 표준화. |
인앱 광고(Ads), 인앱결제(IAP), 토스페이(TossPay)를 출시 전/운영 중 기준으로 점검하고 문서 증적까지 정리하는 스킬.
https://developers-apps-in-toss.toss.im/ads/intro.htmlhttps://developers-apps-in-toss.toss.im/ads/console.htmlhttps://developers-apps-in-toss.toss.im/ads/develop.htmlhttps://developers-apps-in-toss.toss.im/ads/qa.htmlhttps://developers-apps-in-toss.toss.im/iap/intro.htmlhttps://developers-apps-in-toss.toss.im/iap/console.htmlhttps://developers-apps-in-toss.toss.im/iap/develop.htmlhttps://developers-apps-in-toss.toss.im/iap/qa.htmlhttps://developers-apps-in-toss.toss.im/tosspay/intro.htmlhttps://developers-apps-in-toss.toss.im/tosspay/console.htmlhttps://developers-apps-in-toss.toss.im/tosspay/develop.htmlhttps://developers-apps-in-toss.toss.im/api/makePayment.html, https://developers-apps-in-toss.toss.im/api/executePayment.html, https://developers-apps-in-toss.toss.im/api/getPaymentStatus.html, https://developers-apps-in-toss.toss.im/api/refundPayment.htmlhttps://developers-apps-in-toss.toss.im/api/getIapOrderStatus.htmlhttps://developers-apps-in-toss.toss.im/bedrock/reference/framework/%EC%8B%9C%EC%9E%91%ED%95%98%EA%B8%B0/overview.htmlhttps://developers-apps-in-toss.toss.im/development/integration-process.htmlhttps://apps-in-toss-api.toss.im (로그인/프로모션/메시지 계열)https://pay-apps-in-toss-api.toss.im (결제/환불 계열)ait-ad-test-interstitial-idait-ad-test-rewarded-id.ait에서는 AIT Runtime이 process.env를 빈 객체로 재설정한다. 실 광고 검증 빌드는 src/lib/ads/config.ts에 live adGroupId 상수 fallback을 두고, 업로드 전 unzip -p taillog-app.ait bundle.android.0_84_0.js | rg -o "ait-ad-test-[a-z-]+-id" | wc -l 이 0인지 확인한다.1024x1024400~1,400,000, 10원 단위createOneTimePurchaseOrdergetPendingOrders -> 지급 -> completeProductGrantgetCompletedOrRefundedOrders + 서버 API(/api-partner/v1/apps-in-toss/order/get-order-status)orderId 단건-단결제 원칙, 서버 영구 저장getIapOrderStatus.htmlprocessProductGrant가 false를 반환하면 SDK 최종 onEvent를 기다리지 말고 즉시 앱 이벤트 GRANT_FAILED를 방출해 버튼 pending/loading을 해제한다. 이후 SDK onEvent가 늦게 와도 중복 방출하지 않도록 settled guard를 둔다.... 또는 처리 중...으로 남지 않고 실패 피드백으로 복귀AI 코칭은 수익화 정책과 직접 연결되므로 AIT 배포 전후로 FREE/토큰/PRO 계정을 분리해 검증한다.
| 사용자 상태 | 기대 limit | 기대 동작 |
|---|---|---|
| FREE, 토큰 없음 | 1 | 첫 1회 생성 가능, 다음 생성은 한도 차단/구매 유도 |
| FREE, 토큰 N개 | 1 + min(N, 7) | 기본 1회 초과 생성 성공 시 ai_tokens_remaining 1 차감 |
| PRO | 10 | PRO 블록 ④⑤⑥ 잠금 해제, PRO CTA 미노출 |
--reload 실행한다..env가 Railway URL이면 로컬 수정이 반영되지 않을 수 있다./coaching/result 하단에 오늘 0/1회 사용이 보이는지 확인한다.GET /api/v1/coaching/usage/daily 200 OK가 찍혀야 로컬 검증으로 인정한다.PRO로 더 정밀하게 보기 CTA가 무료 사용자에게 보이고, 문구가 무료 코칭은 일반 설문과 기록 기반이라고 안내하는지 확인한다./coaching/result에서 0/3을 표시할 수 있다..ait 빌드/업로드 후 Metro off 상태로 정확한 deploymentId를 실행한다.오늘 0/1회 사용 확인.오늘 0/(1+토큰) 확인 및 추가 생성 후 DB 토큰 차감 확인.오늘 0/10회 사용, 블록 ④⑤⑥ 잠금 해제, PRO CTA 미노출 확인./settings/subscription에서 AI 코칭 하루 10회, 상담지 기반 정밀 코칭, 하루 1회 + 토큰 충전, 결제 복원 문구를 확인한다.POST /api-partner/v1/apps-in-toss/pay/make-paymentexecutePayment 레퍼런스 기준으로 분리 검증getPaymentStatus 레퍼런스 기준으로 폴링/조회 정책 정의POST /api-partner/v1/apps-in-toss/pay/refund-paymentx-toss-user-key 포함orderNo는 파트너사 내 유일값(중복 금지)isTestPayment=true, 운영은 falseDate:
Scope: ADS-001 / IAP-001 / PAY-001
Ads:
- ad_group_id:
- placement: R1/R2/R3
- result: success/fail
- evidence: screenshot, log id
IAP:
- order_id:
- success: pass/fail
- recovery: pass/fail
- error: pass/fail
- evidence: request id, DB row
TossPay:
- merchant_key_type: ait_dedicated
- order_id_uniqueness: pass/fail
- sandbox_limit_checked: pass/fail
Risks:
Next Action:
docs/PROJECT-STATUS.mddocs/11-FEATURE-PARITY-MATRIX.mddocs/MISSING-AND-UNIMPLEMENTED.md1024x1024 미충족이거나 현금성/환가성+토스포인트 결합 상품 등록 시 콘솔 심사에서 차단되므로, 상품 등록 전 정책 요건을 사전 점검한다..env와 번들 안에 보여도 런타임에서 test ID fallback될 수 있다. 실기기에서 [광고 미리보기]가 보이면 업로드된 .ait가 live 상수 fallback 빌드인지 먼저 확인한다.processProductGrant=false 시점에 직접 GRANT_FAILED를 emit하지 않으면 React Query mutation이 pending으로 남아 버튼 로딩이 풀리지 않는다.