[오류원인]
일반적으로 모듈공개키 pgcert.pem 파일에 이상이 생겼을 경우 오류발생
[조치방법]
해당 pgcert.pem은 TX4, TX5버전별로 내용이 상이하기 때문에 덮어쓰기 된 경우 등으로 해당 오류가 발생될 수 있습니다.
혹 버전을 혼용하여 사용하실 경우는 해당 파일이 다른 버전과 겹치지 않도록 이용 부탁드립니다.
연동하신 모듈이 TX4 모듈인지 TX5 모듈인지 확인하신 후 해당하는 모듈공개키를 세팅바랍니다.
위와 같이 확인 후에도 동일오류 발생 시 ts@inicis.com 으로 log 파일 첨부하여 문의바랍니다.
(log 는 모듈이 설치된 경로(inipayhome) 내 /log 폴더에 일자별로 쌓입니다.)
[오류원인]
모바일 빌링모듈로 빌키 발급 시 해쉬데이터를 생성하여 데이터 검증을 진행하게 되나,
해당 해쉬데이터 생성값이 상이한 경우 오류 발생
[조치방법]
해쉬데이터는 INILite Key 를 이용하여 아래와 같이 SHA-256 해쉬데이터를 생성합니다.
Hashdata=SHA-256(mid + ordered + timestamp + INILite Key)
INILite Key 는 signkey 와 별도의 값이오니 하기 경로에서 확인되는 INILite Key 값으로 세팅하신 것이
맞는지 검토바랍니다.
[ INILite Key 확인경로 ]
가맹점관리자페이지 https://iniweb.inicis.com/ 에서 상점정보 > 계약정보 > 부가정보 > INILite Key 생성 갱신 조회
[오류원인]
휴대폰 빌링의 경우 인증 처리(빌키발급)시 자동으로 1회 승인까지 되는 구조이나,
자동승인 처리된 후 중복으로 승인요청 시 오류 발생
[조치방법]
현재 휴대폰 빌링의 경우 인증 처리시 자동으로 승인 되는 구조로 되어있습니다.
(SKT: +- 5일 , KT: 제한없음 , LG: +-7일)
즉, 1번에서는 인증 모듈을 통해 승인까지 1회 발생되며,
2번 모듈로는 익월 결제부터 빌키로 운용합니다.
통신사 정책에 제한되지 않았는지 체크바라며, KT 통신사 사용하신 경우라면 모듈 log 확인이 필요할 수 있으므로 log 첨부하여 ts@inicis.com 로 문의바랍니다.
(log 는 모듈이 설치된 홈디렉토리 내 /log 폴더에 일자별로 쌓입니다.)
모듈에 따른 빌키발급/빌링승인 1000원 미만 결제옵션은 아래와 같습니다.
웹표준 (asp,jsp,php 공통)
<input type=”hidden” name=”acceptmethod” value=”below1000″>
모바일 (asp,jsp,php 공통)
<input type=”hidden” name=merchantreserved value=”below1000=Y”>
asp>
INIpay.SetField CLng(PInst), “merchantreserved3”, “below1000=1”
jsp>
data.setData(“merchantreserved3”,”below1000=1”);
php>
$inipay->m_merchantReserved3 = “below1000=1”;
$inipay->m_merchantreserved3 = “below1000=1”;
** 모듈 버전에 따라 대소문자 구분필요
[오류원인] MID 값이 정확하지 않거나 signkey 값이 매칭되지 않을 경우 발생 [조치방법] 1. MID 입력 시 오타확인 및 소문자 구분확인
MID 는 10자리로 구성되어 있으며, 대소문자 구분하여 정확히 입력해야 합니다. 2. MID 와 매칭되는 signkey 확인
상점관리자 https://iniweb.inicis.com/ 에서 상점정보 > 계약정보 > 부가정보 > 웹결제signkey생성조회 결제요청페이지(INIStdPayRequest.xxx) 내 세팅한 MID 와 상점관리자페이지에서 확인한 signkey 가 정확히 세팅되어야 합니다.
[오류원인]
주문요청 시 가맹점에서 생성한 signature 값과 실제 input 값으로 넘기는 oid, price, timestamp 필드의 값과 대조하여 상이할 경우 오류 발생
[조치방법]
결제요청페이지 내 signature 생성 부분에서 확인되는 oid, price, timestamp 값과
(signature = “oid=” . $orderNumber . “&price=” . $price . “×tamp=” . $timestamp; )
실제 input 값으로 넘기는 oid, price, timestamp 필드의 값이 일치하는지 확인이 필요합니다.
혹 결제창으로 넘기는 데이터내 값이 상이한 부분(금액이 변경되는 등)이 없는지 체크바랍니다.
[오류원인]
input 필드 값에 한글, 또는 인식 불가능한 특수문자가 포함될 경우에 발생
결제요청 페이지 도메인과 결제처리 페이지 도메인이 상이하거나, ‘closeUrl’ 과 ‘returnUrl’ 이 상이할 경우 발생
[조치방법]
1) input 필드 값에는 숫자만 입력이 가능하므로, 특수문자가 포함된 경우 제외바랍니다.
2) 결제요청 페이지 도메인과 결제처리 페이지 도메인, ‘closeUrl’ 과 ‘returnUrl’ 이 일치하는지 확인바랍니다.
결제요청 페이지 도메인이 http://www.inicis.com 일 경우, 결과받은 페이지를 세팅하는 closeUrl, returnUrl 부분도 동일하게 http://www.inicis.com 도메인으로 지정되어 있어야 합니다.
(ex : 한쪽 도메인에서 www 가 누락될 경우 해당 오류 발생될 수 있음)
[오류원인]
Key폴더 내 파일이 정상적이지 않거나 key 폴더를 찾을 수 없음
Key 폴더의 경로 오설정 또는 결과처리페이지 경로 오설정
[조치방법]
asp, asp.net 의 경우 INIpay50.dll 경로 내 /key 폴더가 위치하는지 확인
** TX 4.1, 및 TX 5.0 JAVA모듈의 예외사항
결제모듈에 포함된 INIcrypto_v3.1.7_signed.jar or ExecureCrypto_v1.0_jdk14 암호화 라이브러리의
설치오류를 의심할 수 있음
반드시 안내되는 위치에 옮겨야 함
옮김. 예를 들면 $jdk_home/jre/lib/ext/ 디렉토리로 옮김. 또는,
tomcat의 경우는 $TOMCAT_HOME/shared/lib 디렉토리로 옮기고,
weblogic의 경우 $WEBLOGIC_JDK_HOME/jre/lib/ext 디렉토리에 옮김
또한 resin의 경우라면 $RESIN_HOME/lib/ 디렉토리에 옮겨야 함
* WEB-INF/lib 에 위치하여도 정상 동작한다.
※ 상점 개인키 로드 오류 코드별 원인
9103 : 상점 MID 이름으로 된 폴더가 없을 경우 오류발생
9301 : 상점 MID 이름으로 된 폴더가 없을 경우 오류발생
9105 : key 폴더 내 파일이 정상적이지 않거나, key 폴더를 찾을 수 없는 경우 오류발생
Key 폴더의 경로, 결과처리페이지 경로가 오설정 된 경우 오류발생
9109 : 키패스워드(admin) 오설정 된 경우 오류발생
(상점아이디로 된 키파일 내 readme.txt 에서 키패스워드 확인)
[오류원인]
암복호화 모듈 경로 오설정 또는 미설치된 경우 오류발생
[조치방법]
1. ExecureCrypto_v1.0_jdk14 의 암호화 모듈 서버에 세팅
(해당 프로젝트 WEB-INF 혹은 루트 경로에 넣으시면 됩니다.)
※ 해당 라이브러리가 중복 호출될 경우 충돌로 인해 해당 오류가 발생될 수 있습니다.
2. ExecureCrypto_v1.0_jdk14 의 암호화 모듈 사용 선언
inipay.SetField(“crypto”, “execure”); // Extrus 암호화모듈 사용(고정)
[오류원인]
원거래 금액(혹은 최종 부분취소 이후 남은 금액 ) – 취소 금액 = 남은 금액
부분취소 요청 시 취소금액과 남은 금액이 위 산식에 맞지 않게 설정된 경우 오류발생
[조치방법]
원 거래 금액 재확인 후, 아래와 같이 필드세팅바랍니다.
(PRICE (취소금액) + CONFIRM_PRICE (남은 금액) = 원 거래금액)
참고로, 부분취소를 여러 차례 진행하는 경우, 부분취소 후 남아 있는 총 금액을 확인하여 계산하시면 됩니다.
** 여러 차례 부분취소하는 경우에도 부분취소 요청 시 원거래TID 로 요청합니다.
다만 금액은 이전 부분취소 처리 후 남은 금액으로 총 금액을 계산합니다.