IAP.createSubscriptionPurchaseOrder 내부 오류 문의

이 글의 성격은 무엇인가요?

질문 / 문제 해결

내용을 설명해주세요

내용
구독 결제 시 “내부 오류가 발생했습니다” 에러가 발생합니다.

[앱 정보]

  • SDK: @apps-in-toss/web-framework 2.6.2
  • 구독 SKU: sub.1eb3.mszr4qqm.474ef3519a
  • 정식 출시 완료

[상품 조회 결과 - 정상]
{
“type”: “SUBSCRIPTION”,
“amount”: 1100,
“sku”: “sub.1eb3.mszr4qqm.474ef3519a”,
“renewalCycle”: “MONTHLY”,
“offers”:
}

[증상]

  1. IAP.getProductItemList() → 정상 조회
  2. IAP.createSubscriptionPurchaseOrder() 호출
  3. onError 콜백 → “내부 오류가 발생했습니다”
  4. processProductGrant 콜백 미호출

[특이사항]

  • 토스 콘솔 결제 내역에는 결제 ID가 기록됨 (a674d26d-e5db-4c85-a916-e116361888fc)
  • 앱에서는 “구입을 완료할 수 없습니다” 표시
  • offers가 빈 배열인데 관련이 있을까요?

[시도한 방법]

  • SDK 2.4.5 → 2.6.2 업데이트
  • offerId 파라미터 제거
  • node_modules 삭제 후 클린 빌드
  • getPendingOrders 복구 로직 추가 (미지급 주문 0건)

[질문]

  1. offers가 빈 배열인 경우 구독 결제가 불가능한가요?
  2. 무료체험 offer 등록이 필수인가요?
  3. 다른 확인 사항이 있을까요?

appName (선택)

insta-unfallow

안녕하세요 :slight_smile:
혹시 sdk 2.10.8 로 업데이트 및 토스앱 최신화도 부탁드려도 될까요 ?
기존 토스앱 어느 버전을 쓰고계셨는지와 ios/android 공유도 부탁드립니다 :man_bowing:

안녕하세요 Dylan님!

SDK 2.10.8 업데이트 후 테스트했으나
동일한 증상이 발생합니다.

  • SDK: @apps-in-toss/web-framework 2.10.8 :white_check_mark:
  • 토스앱 버전: 5.273.0 (iOS) :white_check_mark:
  • 환경: iOS
  • 증상: onError → “내부 오류가 발생했습니다”
  • processProductGrant 여전히 미호출

추가로 확인해야 할 사항이 있을까요? :folded_hands:

추가 확인 사항:

  • 토스 콘솔에 결제 ID가 기록됨
    (결제는 성공, 지급만 실패)
  • 여러 유저도 동일하게 실패
    (subscribe_error 10건, success 0건)
  • iOS 미결 주문 누적으로
    재결제도 막힌 상태
  • 애플에 환불 요청 완료 (대기 중)

확인해보겠습니다 :man_bowing:

안녕하세요 Dylan님!

iOS에서 미결 주문이 누적되어

새 결제가 막혔던 문제였습니다.

안드로이드에서는 정상 결제됩니다

iOS 미결 주문 정리 후에도 정상 결제됩니다

미결 주문 누적 방지를 위해

processProductGrant 정상 호출

부탁드립니다 :folded_hands:

안녕하세요, 문의드린 이슈 관련하여 수정 사항을 반영한 앱 업데이트를 완료했습니다.
유저 테스트 진행을 위해 앱 번들 승인 부탁드립니다. :folded_hands:

안녕하세요 Dylan님!

9일 전에 확인해보겠다고 하셨는데
아직 해결이 안 되고 있어요.

현재 상황:
→ 구독 시도율 29% (업계 평균 6배)
→ subscribe_click 29건
→ subscribe_success 0건
→ 실제 수익 손실 발생 중

안드로이드에서는 정상 결제됩니다
iOS에서 미결 주문 누적으로 막히는 상황입니다.

processProductGrant가 호출되지 않아
미결 주문이 계속 쌓이고 있어요.

빠른 해결 부탁드립니다 :folded_hands:

안녕하세요, 해결이 되신줄 알았어요 :cry:
앱 진입시 미결 주문 조회 API를 호출 > 지급 완료 처리해주고 계신가요 ?

안녕하세요!

앱 진입 시 getPendingOrders() 호출 중인데
{“orderIds”:,“orders”:} 빈 배열 반환돼요.

저희 앱은 createSubscriptionPurchaseOrder
(구독 결제) 사용 중인데

혹시 구독 결제의 경우
getPendingOrders()가 다르게 동작하나요?

processProductGrant가 호출되지 않아
미결 주문이 계속 쌓이고 있어요.

공식 문서대로 정확히 구현했는데도
동일한 증상이 발생하고 있어요.

[현재 상황]
→ 구독 시도: 29건
→ processProductGrant 호출: 0건
→ 안드로이드 테스트: 정상 :white_check_mark:
→ iOS: 미결 주문 누적으로 재결제 불가

코드 확인 부탁드립니다 :folded_hands:

한번 확인해보겠습니다 :man_bowing:

확인 해봤는데, '결제는 완료됐는데 상품 지급이 안 된 문제’는 아닌 것 같아요.
토스 서버에서 주문번호까지는 만들어졌지만, 실제 애플 결제가 완료되기 전에 모두 취소·중단된 것으로 확인되는데,
혹시 결제까지 해주신 것일까요?

실제 인앱결제가 완료되기전에 취소 중단이 되었고 이게 내부 오류로 표기된 것 같습니다.

안녕하세요!

네, 실제 결제까지 진행했어요.

애플 이메일로 구독 완료 메일을 받았고
reportaproblem.apple.com에서
환불 요청도 했어요.

환불 후 다시 시도했을 때는
1회 정상 결제가 됐습니다.

orderId: a674d26d-e5db-4c85-a916-e116361888fc
이 주문은 애플에서 실제 결제된 건이에요.

혹시 이 주문 상태 확인 가능할까요? :folded_hands:

2026년 9월 2일 (수) 오후 4:35, Dylan <notifications@appsintoss.discoursemail.com>님이 작성:

2026년 9월 2일 (수) 오후 4:39, 정지훈 <jihunj624@gmail.com>님이 작성:

안녕하세요!

저는 애플 환불 후 미결 주문이 정리되어
정상 결제가 됐어요. :white_check_mark:

근데 다른 유저들은
미결 주문이 누적된 상태라
재결제가 계속 막히고 있어요.

[다른 유저 상황]
→ subscribe_click: 29건
→ subscribe_success: 0건
→ 미결 주문 누적으로 재결제 불가

토스 측에서 미결 주문을
일괄 정리해주실 수 있을까요?
또는 유저들이 직접 해결할 방법이 있나요? :folded_hands:

2026년 9월 2일 (수) 오후 4:41, 정지훈 <jihunj624@gmail.com>님이 작성:

시도해주신 다른 유저분들이 결제를 해주신 것일까요 ?
결제창을 열고 결제를 안하시고 닫은 것으로 보여서요 :eyes:

미결 주문은 주문 생성 / 결제가 완료되었으나 상품 지급이 되지 않은 주문건입니다.

안녕하세요!

그렇군요! 정확한 확인 감사해요 :folded_hands:

그럼 다른 유저들은
결제창에서 에러가 나서
결제 자체가 안 된 상황이네요.

혹시 결제창에서 에러가 나는 원인을
확인해주실 수 있을까요?

subscribe_error 로그에
“내부 오류가 발생했습니다” 메시지가 찍히고 있어요.

2026년 9월 2일 (수) 오후 5:07, Dylan <notifications@appsintoss.discoursemail.com>님이 작성:

에러가 나진 않은 것 같고, 결제창을 닫았다거나 결제를 중단하신 케이스가 아닌가 싶어요. :eyes:

"갤럭시(안드로이드)에서는
구독 버튼 자체가 눌리지 않아요.
버튼이 비활성화된 상태로 보여요.

iOS에서는 버튼 눌리지만 에러 발생
안드로이드에서는 버튼 자체가 안 눌림

코드 확인 부탁드립니다 :folded_hands:"

2026년 9월 2일 (수) 오후 5:29, Dylan <notifications@appsintoss.discoursemail.com>님이 작성:

버튼 비활성화가 어떤 말씀이실까요 ???
ios, android 에서 발생하는 에러와 스크린샷 공유 주시면 확인해보겠습니다 :man_bowing: