etc
[API] KG 이니시스 결제 API 구현 (아임포트)
inderrom
2023. 2. 27. 12:45
1. 포트원 회원가입 ( 아임포트가 포트원으로 바뀜)
https://portone.gitbook.io/docs/
포트원 결제 연동 Docs - PortOne Docs
포트원 결제 연동 매뉴얼에 오신것을 환영합니다. 정말 빠른 시간안에 결제창 연동 개발을 끝내실수 있게 도와드립니다.
portone.gitbook.io
포트원 가이드북을 순서대로 따라가면 결제 시스템 구현할 수 있다.
결제 연동에서 테스트로 KG이니시스 - KG이니시스
시스템 설정에서 가맹점 식별코드 중요!
2. pom.xml에 의존성, 라이브러리 주입
<repositories>
<repository>
<id>jitpack.io</id>
<url>https://jitpack.io</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>com.github.iamport</groupId>
<artifactId>iamport-rest-client-java</artifactId>
<version>0.2.22</version>
</dependency>
</dependencies>
3. script 추가
<!-- jQuery -->
<script type="text/javascript" src="https://code.jquery.com/jquery-1.12.4.min.js" ></script>
<!-- iamport.payment.js -->
<script type="text/javascript" src="https://cdn.iamport.kr/js/iamport.payment-1.2.0.js"></script>
<script type="text/javascript">
-payment는 sdk 최신 버전으로 설정해준다.
4. 함수 작성
- IMP.init은 꼭 설정한 가맹점식별코드를 적어준다.
- pg : PG사 코드를 작성해준다. 해당하는 코드에 맞게 사용해준다. https://portone.gitbook.io/docs/tip/pg-2
PG사 코드표 - PortOne Docs
JavaScript SDK PG구분코드를 확인할 수 있습니다.
portone.gitbook.io
- 여기서 나는 이니시스웹표준을 적용했다. (activex를 사용하니 자꾸 오류가 나서...)
- 상세 파라미터는 https://portone.gitbook.io/docs/sdk/javascript-sdk/payrq 여기서 확인
<%@ page language="java" contentType="text/html;charset=UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE html>
<html>
<head>
<!-- jQuery -->
<script type="text/javascript" src="https://code.jquery.com/jquery-1.12.4.min.js" ></script>
<!-- iamport.payment.js -->
<script type="text/javascript" src="https://cdn.iamport.kr/js/iamport.payment-1.2.0.js"></script>
<script type="text/javascript">
var IMP = window.IMP; // 생략 가능
IMP.init("가맹점 식별코드"); // 예:imp1234xxxxx
function requestPay() {
IMP.request_pay({
pg : 'html5_inicis.INIpayTest',
pay_method : 'card',
merchant_uid: "57008833-33007",
name : '당근 10kg',
amount : 100,
buyer_email : 'Iamport@chai.finance',
buyer_name : '포트원 기술지원팀',
buyer_tel : '010-1234-5678',
buyer_addr : '서울특별시 강남구 삼성동',
buyer_postcode : '123-456'
}, function (rsp) { // callback
if (rsp.success) {
console.log(rsp);
var msg = '결제가 완료되었습니다.';
alert(msg);
} else {
console.log(rsp);
var msg = '결제에 실패하였습니다.';
msg += '에러내용 : ' + rsp.error_msg;
alert(msg);
}
});
}
</script>
<title>이니시스 결제</title>
</head>
<body>
<button onclick="requestPay()">결제하기</button> <!-- 결제하기 버튼 생성 -->
</body>
</html>
설정 후 버튼을 클릭하면 이니시스 결제시스템이 실행된다!