idongwon3919
idongwon39192y ago

appScheme 동작 하지 않는 문제

@tosspayments/payment-sdk 버전 : 1.5.1 웹뷰에서 개발중이고, requestPayment에 'appScheme'를 넣고 있는데요. ISP 실행 이후 취소 / 결제 완료 시 앱으로 진입 되지 않습니다. await toss.requestPayment("카드", { amount: _totalPrice, orderId: r.pgPayId, orderName, successUrl, failUrl, cardCompany: cardCompany as CardCompany, flowMode: "DIRECT", cardInstallmentPlan: installmentPlanMonths, customerName, appScheme: "supertoss://", // 토스로 임의 테스트 }); IOS에서 실행 이후 취소 / 결제 완료 시 크롬이 실행되네요...
38 Replies
토스페이먼츠 BOT
⏳ 잠시만 기다려주세요! 곧 답변드리겠습니다
오류 문의일 경우 아래 정보를 미리 전달해주시면, 빠른 답변에 도움이 됩니다.
- 주문번호(orderId) : - 문의 내용 :
(img를 함께 첨부해주시면 도움이됩니다)
* 계약관련 내용은 1544-7772로 문의주세요. * 주말/공휴일에는 답변이 늦을 수 있어요.
이실장
이실장2y ago
appScheme은 귀사의appsheme을 넣어주셔야 돌아올수 있습니다. 돌아올 앱주소를 의미하는거에요!
Kimoon Lee
Kimoon Lee2y ago
혹시 영상을 올려주실수 있을까요?
유리!!
유리!!2y ago
재현영상 첨부드립니다.
Kimoon Lee
Kimoon Lee2y ago
이때 사용하신 주문번호도 공유해주실수 있을까요?
idongwon3919
idongwon3919OP2y ago
TO2023031711192433051675, 11시 21분에 주문했습니다.
Kimoon Lee
Kimoon Lee2y ago
영상하고 보내주신 주문번호가 다릅니다. 영상때 사용하신 주문번호를 보내주시기 바랍니다. 그리고 현재 해당 단말기에 토스 앱이 설치 되어 있으신 상태인가요?
idongwon3919
idongwon3919OP2y ago
TO2023031714075746251688, 토스앱 설치 되어있는 상태입니다.
Kimoon Lee
Kimoon Lee2y ago
저희 샘플코드로 동작시켜보면 이상없이 동작됩니다. 혹시 만드신 앱에서 intent 호출을 별도로 처리하시는건 아닌가요? 보내주신 파라미터도 문제 없어 보이구요.
DuckGameTV
DuckGameTV2y ago
안녕하세요. 상점앱개발자 입니다. 페이북에서 상점앱으로 안넘어오고 있는데 상점앱에 스킴 정보 등록외에 별도로 해야 되는게 있나요?
Kimoon Lee
Kimoon Lee2y ago
혹시 특정 단말기에서만 나는 오류이신가요? 아니면 전체적으로 발생하시나요?
DuckGameTV
DuckGameTV2y ago
전체적으로 발생합니다.
Kimoon Lee
Kimoon Lee2y ago
페이북 앱 버전 확인 가능하신가요?
DuckGameTV
DuckGameTV2y ago
7.7.2 입니다.
Kimoon Lee
Kimoon Lee2y ago
저랑 동일하신데요.
Kimoon Lee
Kimoon Lee2y ago
혹시 이 샘플앱으로 해보실수 있을까요?
DuckGameTV
DuckGameTV2y ago
네 확인해보겠습니다. <head> <meta charset="utf-8"> <title>결제하기</title> <!-- 1. 스크립트 추가 --> <script src="https://js.tosspayments.com/v1/payment"></script> </head> <script> var clientKey = '별도작성' // 2. 초기화 var tossPayments = TossPayments(clientKey) tossPayments.requestPayment('카드', { amount: 15000, orderId: 'nXJtDmi9b0zlpPMiO4Ipy', orderName: '토스 티셔츠 외 2건', customerName: '박토스', successUrl: 'https://dev.junhome.kr:8012/seasonmarket/toss_success.html', failUrl: 'https://dev.junhome.kr:8012/seasonmarket/toss_fail.html', appScheme: "seasonmarket://" }) </script> 보내주신 샘플ios소스에 html 호출해서 구매 해 봤는데 동일하게 샘플ios 앱으로 안넘어 오고 브라우저가 호출됩니다. 코드상에 추가되어야 할 필드가 있나요? appScheme 저희 상점 스킴, twitter:// 등 여러가지 해봐도 계속 브라우저만 열고 있습니다.
이실장
이실장2y ago
일반적이니 않은 상황이라 바로 정답을 못드리는 점은 양해바랍니다. <head> <meta charset="utf-8"> <title>결제하기</title> <!-- 1. 스크립트 추가 --> <script src="https://js.tosspayments.com/v1/payment%22%3E</script> </head> <script> var clientKey = '별도작성' // 2. 초기화 var tossPayments = TossPayments(clientKey) tossPayments.requestPayment('카드', { amount: 15000, orderId: 'nXJtDmi9b0zlpPMiO4Ipy', orderName: '토스 티셔츠 외 2건', customerName: '박토스', successUrl: 'https://dev.junhome.kr:8012/seasonmarket/toss_success.html', failUrl: 'https://dev.junhome.kr:8012/seasonmarket/toss_fail.html', appScheme: "seasonmarket://" }) </script> 위 코드가 현재 웹서버가 아니라, ios innerHTML형태로 앱에 들어있는걸까요? 혹시 ios에서 appScheme을 사전등록하지 않아 발생할 수도 있을 것 같습니다. info.list에 appsheme등록을 한번 해보시겠어요?
DuckGameTV
DuckGameTV2y ago
웹서버 이며 appScheme 등록되어 있습니다. 혹시 상점앱 문제일까봐 twitter://스킴을 넣어 봤지만 동일하게 안되었습니다.
DuckGameTV
DuckGameTV2y ago
No description
DuckGameTV
DuckGameTV2y ago
URL Schemes seasonmarket 정상 등록되어 있습니다. 보내주신 샘플소스에 스킴 적용해서 똑같이 해봐도 동일하게 안됩니다.
김차장
김차장2y ago
결제완료시에는 잘 이동하시나요? 결제시 이동경로가 이렇게 됩니다. 상점앱 → PG웹 → 페이북앱 → 페이북웹 → 상점앱 인증이 실패던 성공이던 인증완료 처리된 이동에 대해서는 페이북웹에서 상점앱으로 이동이 되실거에요 그런데 지금 보여주신 영상으로는 인증완료가 아닌 그냥 페이북 앱닫기인데 페이북 앱이 닫힐때 이동에 대한 정의가 페이북에 없다면 지금 현상이 발생할 수 있어요 제 추론이 맞다면 페이북앱 서비스를 하는 비씨카드에서 개선을 해주셔야합니다. 올려주신 영상을 비씨카드로 전달드릴 건데요 토스페이먼츠와는 다른 회사여서 시간이 오래 걸릴 수 있습니다.
DuckGameTV
DuckGameTV2y ago
결재 완료 후 3초 후에 상점앱으로 넘어가지 않습니다.
김차장
김차장2y ago
방법이 두가지인데요 페이북의 웹에서 결제완료 빨간버튼을 누르시거나 좌측상단을 누르셔야해요 둘다 안되시나요?
DuckGameTV
DuckGameTV2y ago
죄측상단을 누르면 상점앱으로 돌아가는데 3초 기다린후 자동으로 넘어가는 부분에서 브라우저거 호출됩니다. 상점앱 → PG웹 → 페이북앱 → 카카오카드 비번입력 -> 3초 후 -> 브라우저
김차장
김차장2y ago
3초는 페이북앱에서 인증직후에 승인인터벌을 벌기위한 시간이라 큰 의미는 없는데요 3초후에 결제를 시작한 앱이 아닌 엉뚱하게 브라우저가 올라온다는 말씀이죠?
DuckGameTV
DuckGameTV2y ago
네 결재 취소, 결재 완료 모두 브라우저가 호출되는데 상점앱으로 돌아가야 되는데 안되는게 문제 입니다.
김차장
김차장2y ago
죄송하지만 비밀번호 입력하시는 정상인증케이스를 했지만 브라우저가 올라오는.. 이거 영상한번 부탁드려도 될까요? 결제창 생성시에 넘기신 앱스킴도 채팅에 올려주세요 아님..주문번호를 주셔도 좋습니다 영상은 필요하구요
DuckGameTV
DuckGameTV2y ago
seasonmarket://
김차장
김차장2y ago
감사합니다 혹시 링크페이 사용하시나요?
DuckGameTV
DuckGameTV2y ago
<head> <meta charset="utf-8"> <title>결제하기</title> <!-- 1. 스크립트 추가 --> <script src="https://js.tosspayments.com/v1/payment"></script> </head> <script> var clientKey = 'live_ck_jkYG57Eba3GY15zv00QrpWDOxmA1' // 테스트용 클라이언트 키 // 2. 초기화 var tossPayments = TossPayments(clientKey) tossPayments.requestPayment('카드', { amount: 15000, orderId: 'nXJtDmi9b0zlpPMiO4Ipy', orderName: '토스 티셔츠 외 2건', customerName: '박토스', successUrl: 'https://dev.junhome.kr:8012/seasonmarket/toss_success.html', failUrl: 'https://dev.junhome.kr:8012/seasonmarket/toss_fail.html', appScheme: "seasonmarket://" }) </script> 이렇게 작성해서 앱에서 호출하는데 안됩니다.
김차장
김차장2y ago
네 확인하고 말씀드릴게요 인증이 끝나면 https://dev.junhome.kr:8012/seasonmarket/toss_success.html 이 URL이 호출될거구요 이 다음에는 Backend 로 승인을 보내주셔야해요 보내주신 appScheme 을 타는 시점은 승인완료시점이에요 https://dev.junhome.kr:8012/seasonmarket/toss_success.html 이 URL이 호출될때 인증결과 값은 받으실지 모르겠지만 받으신 인증결과로 승인을 보내지 않으시면 결제가 실패합니다 영상을 보면 결제가 진행되다 멈춘걸로 보이구요
DuckGameTV
DuckGameTV2y ago
아 네 알겠습니다. 다시 확인해 보겠습니다. 감사합니다.
김차장
김차장2y ago
넵 좋은 서비스 만드시길 바랍니다
DuckGameTV
DuckGameTV2y ago
저희쪽 웹뷰 에이전트를 Mozilla/5.0 (iPhone; CPU iPhone OS 16_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) CriOS/105.0.5195.129 Mobile/15E148 Safari/604.1 이렇게 넣으면 패이북에서 상점앱으로 안넘어 갑니다. 토스에서 에이전트를 채크하나요?
Kimoon Lee
Kimoon Lee2y ago
저희쪽은 PC 결제창이냐 모바일 결제창이냐를 구분하는 용도로 에이전트를 사용합니다. 다만 에이전트 변경시에만 동작안하신다고 하는 것으로 보아 페이북 앱이 에이전트를 체크하는 것으로 보이네요. 에이전트 변경하지 않은상태에서는 문제가 없으신건가요?
토스페이먼츠 BOT
❤️ 기술문의 경험이 어떠셨나요?!
간단히 코멘트 남겨주세요! 제품 발전에 큰 힘이 됩니다.

Did you find this page helpful?