KCP 결제부분 (모바일) 연동관련 문의

KCP 결제부분 (모바일) 연동관련 문의

QA

KCP 결제부분 (모바일) 연동관련 문의

본문

안녕하세요, 현재 영카트5에 KCP가 기본 탑재되어 있는데요,

 

모바일(스마트폰) 결제시 결제하기 버튼을 누르면 새창(window.open 또는 window.opener 등)으로 결제가 진행되잖아요. 

 

새창이 아닌 현재창에서 결제진행을 해야 하는 상황이어서 KCP 기술팀에 방법을 문의하니 뜻밖의 답변을 얻었습니다. 

 

원래 제공되는 샘플 소스는 모바일 환경을 고려하여 새창이 아닌 레이어 형태로 본창에 뜬다고 하더군요. 

 

아마 영카트5 에서 연동 개발시 새창이 뜨는 형태로 변형하신것 같다고 하시는데, 어떻게 수정해야 원래 제공된 레이어형태 결제창

 

으로 바꿀수 있을까요? 

 

yc5/mobile/shop/orderform.php 1126줄을 보면 pay_approval()​ 스크립트 펑션이 나오는데, 여기 호출시부터 새창이 뜨는듯 합니다.

 

---------------------------------------------------------------------------------------------

1165줄 참고 :


   var new_win = window.open("about:blank", "tar_opener", "scrollbars=yes,resizable=yes");

   f.target = "tar_opener";


   f.submit(); 

--------------------------------------------------------------------------------

 

yc5/mobile/shop/kcp/order_approval_form.php 의 206줄에도 window.opener.forderform_check();​ 와 같은 새창 로딩 구문이

 

들어가 있구요.

 

소스를 살펴보니 결제창이 새창 형태라 KCP 샘플소스에는 포함되어 있지 않은 window.close(); 를 사용하고 있네요. 


​제가 코딩 실력이 부족해서 어떻게 수정해야 샘플처럼 새창이 아닌 레이어로 처리가 가능할지 끙끙되고 있는 상황입니다.ㅜ

 

도움 좀 꼭 부탁드리겠습니다. (__)

 

 

이 질문에 댓글 쓰기 :

답변 1

우선 현재창으로 변경하실 때 한가지 고려하셔야 하는 부분이 있습니다.

http://sir.co.kr/qa/?wr_id=23401 이 질문글의 내용을 보시면 현재창에서 결제를 실행할 때 

결제 등록 후 kcp 에서 리턴값을 post 로 넘겨주게 됩니다. 이렇게 되면 주문서에 작성했던

모든 내용 들이 초기화 되는 문제가 발생하게 됩니다. 이런 부분 때문에 새창으로 변경을

한 것으로 새창을 이용하지 않고 이 문제를 해결하실 수 있는 방법을 찾으셔야 합니다.

 

간단한 방법은 주문과정을 변경해서 주문 완료 후 결제를 진행하는 이전 영카트4와 같은

방법으로 수정하는 것입니다. 하지만 영카트5처럼 결제 완료 후 주문이 완료되는 프로세스에서는

kcp에서 넘겨주는 리턴값을 어떤 식으로 받아서 처리할지 방법을 먼저 정하셔야 가능할 것으로 생각됩니다.

답변을 작성하시기 전에 로그인 해주세요.
전체 10,633
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT