안녕하세요. React Native 결제위젯 SDK로 연동한 상점(BORINI) 개발자입니다.
Android에서만 결제 완료 후 앱으로 돌아오지 않는 현상이 있어 문의드립니다.
■ 사용 환경
- 연동: React Native 결제위젯 SDK (@tosspayments/widget-sdk-react-native v1.5.1)
- 플랫폼: Android (iOS는 정상 동작)
- 상점 URL 스킴: borini://
- 결제 요청: requestPayment({ orderId, orderName, appScheme: 'borini://', ... }) (successUrl/failUrl 미사용)
■ 증상
- 앱에서 결제하기 클릭 → 토스 결제창/토스 앱으로 이동 → 결제 완료까지 정상
- 결제 완료 후 BORINI 앱으로 자동 복귀되지 않음 (사용자가 직접 앱 전환해야 함)
- iOS에서는 결제 완료 시 borini://payment/success?... 로 앱이 다시 열려 정상 동작
■ 확인 요청 사항
1. Android에서 결제 완료 후, 상점에서 전달한 appScheme(borini://) 기반 URL(borini://payment/success?paymentKey=...&orderId=...&amount=...)을 시스템 Intent(ACTION_VIEW)로 열어 상점 앱을 띄우는지요? React Native SDK에서 requestPayment({ appScheme: 'borini://' })로 전달했을 때 Android에서도 동일하게 동작하는지 확인이 필요합니다.
2. React Native 결제위젯 SDK 사용 시, Android에서 결제 완료 후 앱 복귀를 위해 상점 측에서 추가로 설정해야 할 항목(AndroidManifest intent-filter, 파라미터, SDK 옵션 등)이 있나요? iOS는 URL Scheme(borini) 등록만으로 동작하고 있습니다.
3. 결제가 토스 앱 또는 토스 결제 완료 화면(WebView 등)에서 끝날 때, 상점 appScheme URL을 (A) 해당 WebView 내부에서만 로드하는지, (B) Android 시스템 Intent(ACTION_VIEW)로 실행해 상점 앱을 띄우는지 어느 쪽으로 동작하는지 알려주실 수 있을까요? (A)인 경우 Android WebView 특성상 custom scheme이 시스템으로 전달되지 않아 앱 복귀가 안 될 수 있습니다.
■ 참고
- adb로 borini://payment/success?... 를 Intent로 띄우면 BORINI 앱이 정상적으로 열리므로, 상점 앱의 딥링크 수신 및 라우팅은 정상입니다. 결제 완료 시점에 토스/토스 SDK가 위 URL을 시스템 Intent로 띄워주는지 확인이 필요합니다.
-EXPO 사용중입니다
-TOSS MCP사용했습니다
감사합니다.