ActiveX 방식의 KCP 모듈 -> 최신 모듈로 변경 > 개발자팁

개발자팁

개발과 관련된 유용한 정보를 공유하세요.
질문은 QA에서 해주시기 바랍니다.

ActiveX 방식의 KCP 모듈 -> 최신 모듈로 변경 정보

기타 ActiveX 방식의 KCP 모듈 -> 최신 모듈로 변경

본문

오랜만에 SIR에서 글을 작성하네요.

 

지인의 오래된 버전의 영카트를 사용하는 쇼핑몰에서 ActiveX 는 더 이상 지원하지 않는다는 메세지와 함께 PC에서 더이상 결제를 이용할 수 없다며 도움 요청이 와서 처리했고, 관련하여 내용을 정리해봅니다.

(KCP 모듈 업데이트는 상당히 오래전에 된걸로 아는데...)

 

현재 영카트가 5.5.x인데 작업대상 영카트는 5.1.9..

순정 상태도 아니고 이곳저곳 뜯어 고쳐진 곳이기에 패치들을 적용하기도 애매한 상태.

기존 코드 변경은 최소화 하면서 결제 모듈만 변경할 수 있는 방법을 찾기 위해 가장 연관성 있는 파일 및 폴더들만 변경하며 테스트해서 성공 했습니다.

 

기능별로 파일을 모듈화해서 제작한 SIR 개발자분들께 감사를...! ㅎㅎ

 

여기 정리된 내용은 정답도 아니고, 제가 작업한 환경에만 적용되는 내용일 수도 있으므로 참고 정도로만 보아주세요.

그리고 혹시 따라서 작업 하시는 분이 계시다면.. 기존 파일들 백업 필수입니다 ㅎㅎ

 

일단 제가 작업한 내역은 다음과 같습니다.


1. 결제 관련 파일들 업데이트

 

shop/kcp내의 모든 파일 업데이트 (저는 shop/kcp를 shop/kcp_old로 변경해두고 새로운 폴더를 복사했어요)
그리고 shop/kcp/bin 내의 pp_cli와 pp_cli_x64의 퍼미션 확인해주시고요.

혹시나 FTP로 전송하신다면 요 파일들은 바이너리 모드로...


shop/ 하위의 settle_kcp.inc.php와 settle_kcp_common.php 업데이트 (역시나 백업 후 진행)

settle_kcp_common.php 등에서 커스텀하신 부분이 있다면,, 복사 후에 커스텀 부분은 옮겨주세요~

 

2. 어드민 결제취소부분 클래스명 변경 (모듈 업데이트 되면서 클래스명도 변경)

adm/shop_admin/orderformcartupdate.php에서 // 장바구니 상품 모두 취소일 경우 주문상태 변경
중에 $c_PayPlus = new C_PP_CLI; 와 같이 C_PP_CLI 클래스를 initialize하는 부분이 있는데.. 이 클래스명이 /shop/kcp내의 pp_ax_hub_lib.php가 업데이트 되면서 바뀌어서.. 같이 바꿔줍니다.
$c_PayPlus = new C_PP_CLI_T; 이렇게 _T만 추가해주면 카드결제 취소 기능도 정상적으로 작동합니다.

혹시 작업 진행하기 전에 이 파일에서 클래스가 C_PP_CLI인지 C_PP_CLI_T인지 확인 후 작업하셔도 될듯...

 

3. 결제 관련은 아니지만 본인인증을 이용중이라 최신 모듈로 업데이트

/plugin/kcpcert 백업 후 새로운 모듈 업로드 후 bin/하위의 바이너리 파일들 퍼미션 주기


위와같이 2번까지 작업이 마무리 되면 정상적으로 교체된 모듈로 결제서비스 이용이 가능하네요.

 

5.1.9에서 5.5.8.x 사이에 결제 관련하여 DB나 기타 필드들이 큰 차이는 없나봅니다.
단순히 모듈만 변경해도 잘 작동하는 것 보면말이죠.

디테일한 부분까지는 확인하지 못했으므로, 실제 적용해서 쓰실때는 좀 더 검증이 필요하긴 합니다.

혹시 추가적으로 변경되어야하는 사항이 있다면 댓글로 공유하면 좋겠어요.

 

그럼 소소한 팁 공유를 마칩니다.

추천
0

댓글 0개

전체 5,352
개발자팁 내용 검색

회원로그인

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